The Worm Ouroboros, that forever eateth its own tail. That’s my development cycle.
I spent a year and a half, maybe even two years, building Exon as a procedurally-generated dungeon crawler. Over that time I rewrote the level generator at least six times, edging ever closer to a system that would actually make nice playable levels and not be insane to extend and tweak.
Then I decided it was time to finally attempt natural cave levels to break up the bunkers, and the whole thing fell apart again. Feeling that the near-constant rewrites of the level generator suggested a more fundamental problem with my approach, I have decided to change direction.
I am, alas, often a rather indecisive individual. There’s so much that I want to do, but I am only one person (and determined to Do It All Myself at that).
I actually tried to make hand-crafted levels before I made generated ones, but I lacked the tools and the knowledge to make a success of that at the time. Seduced by the promise of making the game do all the hard work, I fell into the trap of procedural generation, pummelling algorithms together in a desperate search for the perfect level generator.
To be fair, I had made some solid progress; the results really were looking nice for a while, at least from a bird’s eye view. The problem is that playing them was still crap. The programmatic contortions I had to get into to make enemy placement remotely interesting were horrendous, and as I was looking at the even worse contortions needed to put interesting landmarks in the levels…
I was about to rewrite the level generator again, until I realised that this isn’t what I want from life.
I am still enamoured with the idea of the RPG equivalent of an Age of Empires II skirmish, a procedural-but-fair scenario of configurable length with an environment to suit one’s mood. However, with the production of even a fraction of this mode dragging on, I had to concede that this probably wasn’t the best way to release a video game.
I recently realised that one of the major things I actually loved about Warcraft III modding was that I only spent about half of my time there programming. The other half was grubbing around with units, with terrain, with landscape and decoration by hand — sculpting a world out of nothingness, populating it, endlessly refining it, and letting those snatches of landscape trigger new thoughts.
This might sound a bit funny, seeing as it’s my primary mode of employment, but I don’t actually like programming. To me it is just a means to an end, and while it is occasionally satisfying, the ultimate pleasure comes more from the final result doing what it’s supposed to do than the raw act.
So I asked myself what the hell I was doing with my life, focusing on an aspect of development that doesn’t actually fire me up all that much. The answer was a mighty shrug.
So I’ve turned off the all the level generation code, with an eye to simply delete it once I’m sure there’s nothing of value left in it (there is a lot of code in there so I’m hoping it isn’t entirely wasted). That dream simply isn’t feasible, nor what I need right now.
Now I have turned back to hand-crafted scenarios, I’ve defined a rough plan of how the first release of Exon is going to work and hopefully, hopefully, I’ll be able to stick to it…
1. Character Creation + Hub Area
Between missions you’ll wander around at hub areas called “waystations”, equivalent to the home towns of fantasy RPGs, where you can get repairs, pick up new kit, repaint your mech and find new objectives. I will make a single hub area at this time but eventually you’ll get to travel around in fully-fledged campaigns.
2. A Single Mission
I don’t want to over-stretch myself, so I’ve outlined a small four-part scenario with a target length of about 20 minutes of gameplay (5 minutes in each section). It involves destroying a facility by attacking a nearby mine, stealling a drill rig and burrowing into the bunker and having a boss fight against a power generator (bear with me). This should give me a good playground to stress out my combat balance, platforming, environmental puzzles and give me a chance to deploy a few dramatic set-pieces.
2. A Tutorial
Ever since Deus Ex did it I’ve hankered after making my own assault-course type tutorial level. Guided by a corporate narrator, you’ll be walked through the workings of your mech as if you’re a new exon eager to take on the world. This will be entirely optional but, as always, it will be a place for me to drop some world-building through dialogue and might have a few secret areas with swag to boost your beginning. Functioning effectively as a full mission, it should also confirm that my fundamental level-transition and progress-tracking systems are up to scratch.
3. A Single Deathmatch Arena
Fighting pits are the best optional objective and I want to ensure there is a small and repeatable way for a character to blow off steam and raise money between real missions. This should help me to stress out more complex AI behaviours as this will be a one-on-one battle with a foe equally as well-equipped as you — yes, please be assured, I am never making a multiplayer game and this is entirely against the bots. I still want to explore other traditionally multiplayer genres like capture the flag at some point, but as the simplest example, deathmatch should be the easiest to get off the ground.
The 5th Day
And in order to tackle all of this, I’ve only gone and spent 1/5th of my salary to go down to working only 4 days a week.
It’s something that had been playing on my mind for a while, as I don’t live a particularly extravagant lifestyle and end up just saving and saving and saving all my money. Since interest rates are crap and I’m not getting any younger, it felt like as good a time as any to take the plunge — so Fridays are now mine to do with as I please.
The benefits of having a full working day to spend on Exon should be incalculable — and hopefully, with this time and this plan I might even be able to release something this year after all!