Spikes
"Spikes" is a greybox prototype of a level in a 2D platforming game. I designed and scripted the game and level entirely by myself in GameMaker Studio 2.
I was still very new to GameMaker and scripting with GameMaker Language when I created this; in fact, I was using the development of this prototype to familiarize myself with the engine. Thus, from the beginning of my design process I purposely kept the game's mechanics simple, so that the scripting component of the project wouldn't overwhelm me.
I ended up with only two mechanics: a 'hover jump' ability and gravity reversal blocks. The gravity reversal blocks reverse the player character's 'up' and 'down' orientation when touched. The 'hover jump' player ability activates when the player presses the jump button once, and then presses it again before reaching the ground. The player character ceases to rise or fall and will remain at that height until the jump button is pressed again. This leaves the player free to simply stroll past the long chasms of spikes (which restart the level upon contact).
With the scripting aspect of the project simplified, I was able to put lots of energy into the level design. Seeking direction to jumpstart my design proccess, I drew upon my own gameplay preferences, which led me to decide early on that I wanted to avoid making a 'typical' 2D platforming level. My goal soon solidifed into to creating a level that was more fun than a 'typical' level in a novice's 2D platformer, which, based on the iteration of my game I had at that time, I found to be terribly boring.
I knew that the presentation of my two unique mechanics, being what was, well, unique about the game, was key to creating an atypical and interesting experience. So I began trying out as many different level designs ideas as I could think of, searching for sufficiently interesting ways to utilize those mechanics.
The gameplay video below demonstrates the final level design I settled on, as well as the relationship between the two main mechanics and the level design. You can also download the game further down this page and play it yourself, if you'd like.
The finished design positions the hover jump mechanic as both a dangerous risk to the player, and as necessary to progress. By placing some spikes lower than the max height of the player's jump, the player's goal changed from mere platform jumping, to attempting to activate the hover jump precisely enough to pass over the spikes. In some places, pressing the hover jump too slowly results in the player flying up into the spikes and losing their progress. This built-in fear and risk means that no matter how the level is played, it generates tension and challenges the player, thus also increasing their level of engagement and fun. Furthermore, the gravity reversal blocks serve to enhance these emotions; many are placed in a way where they save the player from certain death at the very last moment, merely by reversing the direction of their fall.
I also used the gravity blocks to meet my secondary design goal, to create a 'non-conventional' critical path through a platformer level. Because the game's orientation changes regularly, the player is forced to pay closer attention to the game and ideally, is more interested in their progress through the level as a result.
Because I set aside enough time and resources, my final level design successfully leveraged the game's main mechanics in a way that transformed it from the traditional platformer it had originally been into a more reflex-based adrenaline rush of a game.