Home About Me Projects
Play here Project Repo

INARI is sidescrolling hack-and-slash game with an emphasis on combos and satisfying combat. As a gameplay programmer on INARI's team, I create systems and tools for designers to use in development. While architecting these systems, I followed the SOLID principles of programming to keep code portable and easier to modify in order to implement new gameplay mechanics.

My Contributions:

Enemy Behavior

Since INARI has a heavy focus on combat, it was important that enemies had varied behavior and could give the illusion of being alive in the environment. This goal was achieved through the creation of specific behaviors and tools that could be further customized by designers.

View implementation

Behavior State Machine

  • Supports a wide range of enemy behavior, which includes attacking, wandering, chasing, and being launched away when killed
  • Communicates with an enemy's animation controller to play expressive animations that give each enemy type its own personality and charm

Randomized Idle Behavior

  • Plays different idle animations and sets varying idle movement targets to add more life to enemies
  • Parameters for random behavior generation can be set by designers on a per-instance basis

Enemy Rooms

As a response to feedback that stated that it was too easy to avoid enemies in INARI, I developed a tool for designers to place enemy rooms throughout their level. These rooms prevented the player from progressing until all the enemies inside were defeated.

  • Enemies can come in waves, which allows designers to create specialized teams of enemies to present the player with unique challenges
  • Allows designers to create a change of pace within a level, from platforming-focused to combat-focused

Checkpoint System

During INARI's first playtest, I had learned that it was extremely important that players never felt frustrated through losing too much progress. To combat this problem, I made a checkpoint system that:

View implementation

Combo Counter

As the team was working on INARI's combo system, I wanted to add a combo counter to give the players a greater sense of accomplishment for higher combo counts. The main elements of the counter's implementation are:

View implementation