Cursed Dungeon

In October 2017, myself, Filip Volf, and Braedon Smith as well as 12 other students at Kansas State University drove down to College Station, Texas, where the three of us competed against about 90 other teams, or just over 300 students, in the annual Chillennium 48 hour game jam. I’ll be telling this story from my perspective, as despite us working together, much of the time was locked in focus, so I can’t much speak for the project beyond my own work and how I view the end product. Download Link.

Level

After a long day of driving and an hour of anticipation, the theme of the jam was revealed to us as “Role Reversal”, which was an interesting and open-ended theme that tends to make one think of a bunch of ideas. The first ideas were the obvious ones – pacman where you play as the ghosts, pong where you play as the ball – but they got generally weirder as we went on, and the other major contender for us was an art thief who sneaks in to place the art.

We had a brief discussion over the mechanics and scope of the game as well as what our roles would be. We decided on a dungeon crawler where the twist was that after you died, you’d turn into a ghost and a new adventurer would spawn at the beginning and play out the level. If he worked his way along, he’d clear up the dungeon for you as he went along, but also cause you to lose of he made it to the Soul Fire which marks the end of a level. The goal would then be a juggling act between the momentum of pushing through the dungeon yourself and trying not to die juxtaposed with trying to put a stop to the AI adventurer before he just won the game.

We’d never worked as a team before, so delegating the roles was a difficult task. We were all Computer Science majors and none of us had experience with synchronizing Unity through Github or their own proprietary thing. We also kind of wanted to use Game Maker because it would be easier to make assets for, even though it would be lacking in AI pathfinding which the project would really need.

ghost

During the project, Filip was the programmer. He had the computer with Gamemaker 2, had the license to export it as an .exe, and had the experience with the engine to put it together. I’m pretty sure he slept the least out of us all and was pretty much constantly zoned in to the very end, so I can’t give enough props to him. As for Braedon and I, we were delegated to Art and Music respectively, although I ended up doing a good amount of the pixel art.

I started out my business by doing the music. I took Music Theory in high school and previously did the music for Incursion, so I fired up MuseScore 2.0, googled the chord progression chart, whipped out a notebook, and got to work.

Over the course of almost 24 hours even, I had produced two songs. The first one – titled Swingin’ With Specters – is an upbeat, swing beat kinda song with an driving accordion melody. Swing and funk in general is sometimes associated with pulpy kinds of spooky themes, and the accordion was a last minute adjustment to the melody that really added a driving breath to it that couldn’t be reproduced with the other synthesized instruments of the program. The second song was never used in-game, but was an accordion waltz I finished a concept of before dropping. It’s not finished, but can be listened to here.

I spent about an hour cutting them up to be introduced and then looped in the game before sending the files over and looking for something else to do. Braedon was working on the player character, so I took a copy of the sprite sheet and got to work overhauling the weapon sprite (the sword) and drawing out a bunch of traps, the doors, the fire, the title screen, and an enemy with a walk cycle. Unfortunately, my beautiful enemy never made it in the game along with most of the traps, but a good time was had exercising my nearly non-existent pixel art muscles.

sword

My last bit of input began at about 3 hours before the jam due time. Filip told me that while our AI sucked, it was working – and so were a few items – so it was time to take what we got and make a mad dash to the finish… after we made a couple of levels. We had spent so much time trying to get the AI to work that we pushed all the way until now to make content for the game, and so the next couple of hours were a panicked, beautiful train wreck of working under pressure as Filip (who had slept only a few hours the whole time) went to rest while I picked up the tools and hastily put together some stuff. At about 20 minutes to due time, we took what we had, hastily uploaded it to itch, and published it to the jam with barely any time to spare.

Much like the production, the game is a total mess, but it really came together well for what it is and ended up somewhere in the top 25. Chillennium doesn’t publish an rankings (due to their odd judging process) besides the winners of each category, so we don’t know exactly where we were, but when we had to leave early the judges said we were still up for judging when only 25 teams were remaining, so that means we beat out at least 200 other people, which feels good. After a painful, sleepless drive back to University and a couple months to reflect, I’ll give some thoughts on the game and what we should have done differently.

BiggerLevel

Probably our biggest problem during the whole thing was pinning our entire game to a very difficult feature that only one guy could work on. The whole design of the game depended on the AI, so while it was being worked on, we could barely afford to test anything else because developing a system for him to pathfind his way through the level was as minimal a thing we could afford – something we still don’t even have right.

Because of that problem, the earlier problem of having one programmer led to pushing back testing indefinitely. When we were making levels for the game, we knew full well that the AI just wouldn’t work sometimes, so we’d have to design the level differently and test again, which took more time. As a result, the game is fairly buggy, the rushed level design means we took too much time to make tutorials (about half of the game), the tutorial levels suck (too much walking), some of the middle levels suck (dying over and over again was not really intended), and the potential of the game only really shines in the end before it just cuts to a grey screen and you have to alt-f4 the game away. There are even minor bugs like the music never looping or some sound effects not playing – both of them easy fixes but just weren’t done due to the time constraints we were under.

You hear a lot of horror stories from the industry about how a mediocre or poorly-received game might have had a development hell because of how the project was managed – typically due to scrapping a bunch of content for whatever reason or working with poor tools. It’s not so much that the game is bad, but it’s entirely possible that the designers were unable to make content that brings out the game’s true potential. After this project, I can relate, and it’s fairly painful to morale to have put out a game that never reached what it could have been due to deadlines.

But while that may be the most depressingly “welcome to the games industry” lesson I’ve ever learned in my life, I’m kind of glad I had the experience, especially because what was there is another tangible thing to add to the portfolio and a new lesson underneath my belt. Combined with the music I’m proud of making, the amazing time I had talking to all the other contestants, and the awesome amount of junkfood they had, I’m really glad I went and I’m excited to go in 2018.

A valuable lesson learned and a bunch of free food is never something to be sad about.