otherJump
A simple, yet challenging 2D Platformer
otherJump is my first complete game made in Unity, developed in my free time over the course of a few months in between other projects.
Play the game here!
After learning the fundamentals of Unity over the course of a few months, I wanted to give myself the task of making something fun, small-scale, and with simple and effective design. I had a few rules that I felt were absolutely crucial to accomplishing this goal:​
1. No Filler - If a level or mechanic wasn't working, it got be cut. This is key to making a short, well-crafted game that quickly leaves an impression.
2. Feature Complete - Every aspect of the game needed to be finished. I wanted it to be playable, from front to back, without any pain points.
3. Outsource When Needed - If I couldn't make it properly on my own, then learn or source from elsewhere. I used art and music assets, referenced other player controllers in order to complete the project to my standards.

My approach to game design for otherJump was to perfect the basics. The movement is clean and responsive, and the levels require a balance of dexterity and problem-solving, without excessive complexity. No individual mechanic in otherJump is particularly novel, but it was all designed and implemented with an intentionality that makes the experience more meaningful and engaging.

I wanted to emphasize modularity in my development with this project. To do this, I made sure every prefab was easy to implement, efficient, and as self-contained as possible. Every level mechanic can be dropped into any scene and function as intended immediately, and then be tweaked afterwards to serve the level better if necessary. I am especially proud of the menu system, as it works almost completely independently from the rest of the game systems. With a few minor adjustments, I can easily drop it into any future Unity project.

Playtesting was a cornerstone of the design and development process of this game. I frequently asked friends, family, and coworkers to play early versions of the game, and to give feedback on game-feel, level design, and overall difficulty. I tested otherJump with a wide range of skill levels and experience. I was especially focused on how inexperienced players interact with the game, as that can give valuable insight to the intuitiveness of the controls and mechanics. I took this feedback and reworked levels until someone who is unfamiliar and inexperienced with 2D platformers could beat them, though after several attempts. This extensive process is the primary reason that the difficulty curve is as balanced as it is. It sits comfortably in that "one more try" range for most players, and each level feels like a logical step up from the previous, which were my ultimate goals.
What I Learned From Making otherJump
What became increasingly apparent to me as I worked on this game was how many valuable resources there are for game development. It would not have been nearly as polished, feel nearly as good to play, and certainly been finished as quickly without the premade assets I utilized.
Another helpful lesson was to start small. Beginning with the base level of an idea, implementing it, and building from there, I was able to provide a strong foundation for later design elements, and develop cleaner code.
The final nugget of wisdom from this project was the importance of playtesting early. I have always been an advocate for it, but only when I felt the game was "presentable." With otherJump, I swallowed my pride and sent the game out in a much more unfinished state. This gave me much more informative feedback, thus a better game, and I am very grateful for that.
​
Here are some links:
​
​