Game Description: Ethereality is a non-linear 2D platformer set in an abstract labyrinth. Players control Jean-Pierre in his pursuit of Richard, a mad doctor. Players use several abilities, including jump, double jump, float, attack, and the eponymous ethereal mechanic, which allows players to evade enemy attacks and pass through certain barriers. Players open locked gates with keys found throughout the environment, discover the story of Jean-Pierre and influence the ending based on their (in)actions.
Roles: Level Designer, A.I. Designer/Scripter, Writer
Responsibilities:
Responsibilities:
- Documented levels and A.I. in GDD
- Designed and constructed levels in the labyrinth.
- Sole A.I. designer
- Co-Implemented A.I. through lua scripting
- Sole author of original story with four reactive endings
- Playtest and balance game.
Design Highlights
Unique Enemy A.I.: Created a highly mobile, circling enemy, the bat, that constantly surprised players with its speed and reactive behavior. This enemy helped give the game an identity apart from typical ones of the genre.
Non-Linear Level Design: Inspired by games like Zelda II, the game was designed to have multiple paths and require navigation from the player as a skill. Updated maps are spread throughout the game to aid players in their journey.
Navigation and Combat Gameplay: The rooms in the game were designed to the ethereal ability that allows the player to phase through certain walls in addition to avoiding attacks. Some rooms focus more on mechanical platforming challenges, other focus on combat and a few combine the two to create memorable moments.
Non-Linear Level Design: Inspired by games like Zelda II, the game was designed to have multiple paths and require navigation from the player as a skill. Updated maps are spread throughout the game to aid players in their journey.
Navigation and Combat Gameplay: The rooms in the game were designed to the ethereal ability that allows the player to phase through certain walls in addition to avoiding attacks. Some rooms focus more on mechanical platforming challenges, other focus on combat and a few combine the two to create memorable moments.
Unique Enemy A.I.
Early on in its pre-production, I wanted Ethereality to have a memorable enemy, one that didn't simply walk up to the player and get effortlessly cut down. I realized that if the enemy was highly mobile then collision would be a major issue. So instead of trying to develop an algorithm that dealt with the geometry of the level, I chose to have a bat that simply ignored the walls as it continuously circled around the player until it suddenly charges them.
The other major philosophy in designing the A.I. was that harder iterations of the enemies would not simply have higher combat stats. Their actual A.I. would change and be harder to hit, enhancing the player experience by creating true variety. I exposed several variables such as movement speed that could be modified in the engine to change the difficulty of enemies in a way that creates new interaction. For example, the red bats circle much more violently around the player because they are faster and have more minor arcs in their motion than the brown bats.
Non-Linear Level Design
I struggled figuring out which overall philosophy of level design to use for Ethereality. Initially, I was inspired by Sonic The Hedgehog's design with multiple layers on top of each other with the highest one being the most desirable. However, after analyzing a level I made, I found that it wasn't encouraging exploration as I intended. Sonic The Hedgehog, especially the second and third ones, has different mechanics from Ethereality that encourage exploration, like collecting the chaos emeralds.
Later, I came to the realization that Zelda II's level design structure fit our game better. Zelda II dungeons have a layout that encourages exploration in every cardinal direction and uses locked gates to limit the player. Additionally, Zelda II employs a structure akin to a collection of open rooms that allows for more mobile and intelligent enemies than Sonic The Hedgehog does. The structure also fit our game's story better by slowing the player down and putting them in a mood to think about things other than moving right as fast as possible.
Navigation and Combat Gameplay
Ethereality offers two major gameplay opportunities: navigation and combat. On one hand, Ethereality has deadly traps and tricky situations that tests the player's use of his mobility and on the other hand it presents the player with powerful enemies to fight. Balancing the two and keeping each fresh proved to be a challenge. The key was to not force the player to deal with both until they have mastered the controls and basic mechanics of the game.
Navigation Gameplay
Combat Gameplay
Navigation and Combat Gameplay
Post-Mortem
What Went Well
Pre-Production: I spent a lot of effort before official production began in order to create a sophisticated enemy A.I., freeing my time during development for work on the level design and story.
Delaying story sevelopment: Instead of forcing a mediocre story early on for the sake of having it, I gave myself enough time to develop one that was authentic to the game.
Designing for innovation: My attempt to create a new enemy type, the bat, that challenged players became a staple of the game and one of the most memorable parts of it.
Delaying story sevelopment: Instead of forcing a mediocre story early on for the sake of having it, I gave myself enough time to develop one that was authentic to the game.
Designing for innovation: My attempt to create a new enemy type, the bat, that challenged players became a staple of the game and one of the most memorable parts of it.
What Went Wrong
Late-Night heroics: I spent several nights before milestone days wrapping up the final integration with the programmer.
Time constrained story: Although waiting on the story gave it more depth, I wasn't able to polish it to the level that I wanted.
Feature creep: I added new features even beyond alpha and this reduced the polish of the final product.
Time constrained story: Although waiting on the story gave it more depth, I wasn't able to polish it to the level that I wanted.
Feature creep: I added new features even beyond alpha and this reduced the polish of the final product.
What I Learned
Non-Linear complexity: There is a lot of extraneous work that goes along with creating a non-linear game that should be understood before beginning it.
Multiple endings takes time: Writing meaningful send-offs to finish a game requires time and the idea of more endings that I first anticipated forced me to scratch my previous work and re-write them all.
Make informed decisions about scope: We did not let naysayers about scope prevent us from making a large game. However, we were prepared for the immense amount of effort required to make the vision a reality.
Multiple endings takes time: Writing meaningful send-offs to finish a game requires time and the idea of more endings that I first anticipated forced me to scratch my previous work and re-write them all.
Make informed decisions about scope: We did not let naysayers about scope prevent us from making a large game. However, we were prepared for the immense amount of effort required to make the vision a reality.