Role: Level Design, Systems Design + Scripting
Duration: Jan 2016 - Apr 2016
Genre: Arcade
Engine: Unity
Platforms: Arcade, PC
Team: Weathered Sweater
Team Size: 11
Developed for Senior Production class at Champlain College.
Unity
C#
Visual Studio
Office
git
Super Sky Mech is a combined action-platformer and dogfighting arcade game. The game seamlessly transitions between the platforming and dogfighting modes in a randomly generated open world. The player must battle their way through this dangerous world, killing enemies and large ships that warp in and out in order to get a high score.
I joined the team as a level designer during the second semester of the school year after the concept had been finalized and a vertical slice had been created the semester prior.
Each level in Super Sky Mech is a single large ship which warps in and, after a period of time, back out of the world the player is flying through. These ships have an interior that can be entered and contain platforming challenges with enemies. Each ship has a power core which when hit will destroy the entire ship. Destroying ships is worth far more points than individual kills.
The levels in Super Sky Mech are intended to be fast, fluid experiences which challenge the player but keep them moving. They needed to encourage the quick and frequent transition between person and ship mode and work to make the modes complement each other. Striking a balance between the various aspects of the game is what mainly drove the level design.
To create each level I started with a rough sketch. This allowed me to get ideas out of my head quickly and edit easily. I did these in a small sketch book to limit both the size the ship could be and the detail I could put into it. I wanted these sketches to be less detailed since their scale wouldn't be exact and couldn't be directly translated into the game.
Early in development I used graph paper to do a more detailed version of a level before putting it in engine but I found that this was not an effective use of my time. This step took up a lot of time and didn't help very much since the level always had to be further altered when it was built in-engine to make it feel good. Because of this I abandoned this step and began building the levels in-engine using the sketch as a reference. Doing this greatly improved my workflow and allowed me to start testing my levels sooner.
The ships are made using a tile system editor in Unity and contain a number of layers.
Before I joined the team ships were extremely small and exposed and didn’t contain much other than a few enemies and some power cores that had to be destroyed. When I joined the team the platforming was being reworked to feel better and generally be more fun. I started by designing some small levels that were more interesting than the old levels but with the same level of complexity.
These levels were judged to be too small to be interesting and so I took a step toward larger levels. I created two levels each pushing the size of the ship larger than the last. The goal was to create a ship that felt big enough to be a space ship. During this iteration scale was very important both externally and internally.
The size of the levels peaked with a boss level that I created seen above. It had four separate parts that each had to be played through. However, while testing these levels we noticed a huge problem with them. Having large levels separated the dogfighting aspect of the game from the platforming aspect breaking up the integration we wanted them to have with each other.
To remedy this we brought the level size way back down. In addition we focused less on the challenge being presented by each level and more on creating fluidity and ensuring that the player was constantly transforming back and forth between person and ship form.
The secondary systems in the game are intended to support fast-paced and fluid gameplay while creating interesting challenges and puzzles. They need to be instantly recognizable and easily understandable so that the player can know what each one will do without explicit instruction.
When choosing what to put into the game I focused on what could be used for a wide variety of purposes while being instantly recognizable. The systems below are all simple and understandable by themselves but can be combined with each other and with other systems to create interesting situations.