Hello! I recently reached a deadline with my senior capstone game project, so I've decided it would be nice to start off this blog with a reflection on what I've made so far, and maybe even where I'm going.
The idea for Mutagen started out as basically 'rain world with procgen and upgrades'. From there, it evolved into some mix of survival, platformer and roguelike. I wanted my game to have the ecological simulation (though much simpler) and vibes of Rain World, the strategic decision making of Balatro, and the trial-and-error learning process of Spelunky. My idea was that you would be using all these abilities you acquire to survive, with different biomes making you adapt your play style, which, in a way, mimics real-life natural selection. In the first prototype of the game that I made in about 5 weeks, you could walk through noise-based terrain, get chased around by a creature with pathfinding, collect food, and 'spend' that food in a menu to change your character's speed, jump height, and size.
A lot got added and changed to that prototype, but many of the core ideas stayed the same. It became an infinitely generated world with a day and night cycle, where you would collect food during the day and then sleep during the night to acquire both the previously existing stat upgrades and new abilties, which open up new movement options, like being able to glide, or stick to things, etc. There was one big problem I just couldn't solve, though: I couldn't figure out what the goal should be. I would throw a lot of ideas around: survive a certain number of days, collect a certain number of things, go to the bottom of the world. But they all seemed either not very interesting, or I couldn't really formulate a clear vision of how they'd work.
Last month, I asked StuffedWombat for consultation on my project, and our meeting ended up being very eye opening for me. In short: my game was trying to be too many things at once. I had kind of just been throwing shit at the wall to see what stuck. I've spent this next month trying to really nail down what this game is.
At first, I thought it was a problem of resource economy. Sometimes, food could be too easily farmed, making acquiring abilities too easy and therefore boring. I tried making it so that food now refilled a stamina bar that was depleted by abilities, and abilities were acquired by collecting 'points' which required scaling trees. And, it felt like sort of a move in the right direction: it felt more rewarding to think about how to use your abilities, and acquiring a new one felt like an accomplishment. But it came with its own issues. Trees are randomly generated, so I didn't have much control over whether a particular tree could be scaled without having any abilities. I kept trying things, but they all kind of felt like band-aid fixes, and I couldn't really land on a compelling goal.
Eventually, I was feeling stumped, and so I was talking to my girlfriend and fellow gamedev Bee. For a while, I had felt the game being pushed in more of a puzzle direction, but I couldn't figure out how to get there. But somehow, at the same time, we had the same epiphany: screen-based world generation.
The problem with making my game a puzzle game was that I had no real control over the puzzles, because the world was all getting generated at once. But, a screen-based approach solved so many problems at once. I could combine randomized and pre-made screens for finer tuning of the level design. Static screens allow for the use of composition to guide the eye and aid in memorization of the level's overall layout. They also offer a limited (in a good way) design space for me to work in. And, they narrow the scope of the game in a way that could let me make something that felt sharp and refined. That was at the start of this week, and so I spent this week scrambling to put a prototype of this system together. And hey, I actually did it! The best part is, my game can now actually be played from start to finish for the first time since the start of its development.
So what did I learn from it? Firstly, I learned that not having a teammate to bounce ideas off of was much more of a genuine setback than I'd anticipated. Because there was no one to stop me, I was able to keep just adding and adding without stopping to think too hard about why I was adding. In the process of development, I'd also been telling myself to 'follow the fun,' which, for those not familiar, means to basically figure out what the game wants to be and design towards that instead of going in with a preconceived notion. The problem was, the way I enacted that was often through small tweaks instead of big changes. Though, in this last week, being able to mostly spend time chiseling away at what I had instead of building up was undoubtedly a time saver.
My game is not done being designed, of course, but I'm pretty happy with where I've ended up now. In the future, I've just gotta keep putting the game in front of more people, thinking more before I do, and not being afraid to swing for the fences.
also this ended up being way longer than i expected so thank you if you read the whole thing :-)