top of page

Survival of the Fishest

Screenshot 2023-12-31 at 8.47.13 PM.png
  • Role: Technical Designer

  • Team Size: 1

  • Duration: Ongoing

  • Responsibilities: 

    • Concepting, designing, programming, and testing all aspects of the game including;

      • Procedurally generated room and biome progression managers​

      • Game controller compatible player controller 

      • 4 different player classes (Fish, Shrimp, Bird, and Seal Pup)

      • 5 playable class evolutions for the Fish (Shark, Coelcanth, Salmon, Pufferfish, and Anglerfish

      • 2 Enemies with different behaviors for the player to fight
      • Modular and upgradable stat trees for both the player and enemies.

      • A stat-based combat system that allows for additional effects such as burn, poison, critical hits, knockback, lifesteal, and multi-hit attacks (all of which are currently in-game)

      • A UI and text-box dialogue framework

--Special Thanks to Cutter Hume for the fish models and environment props--
(To play the demo, you'll need a Playstation 4/5 or Xbox360/ One Controller)

Game Summary
"Survival of the Fishest is an undersea roguelike adventure that allows you to evolve and battle your way to being crowned Master of the Sea."

I'm starting the new year off strong with a demo of my most recent project! In it, you play as a small sea creature, battling against other denizens of the deep in a classic example of natural selection. Every area you conquer allows you to grow your choice of five stats, each affecting a unique aspect of the game. Once certain stat totals are met, you can evolve your character into more fearsome creatures with unique abilities. This game is a passion project that I've been working on for about half a year now during my off-time from work. I'm looking to release it as a full-fledged game in the near future, but at the moment Survival of the Fishest is a tech demo. Currently, I have the basic game loop built with one base class, five creature evolutions, two enemies, and a slew of modular systems that will allow for easy implementation of my future work. I poured a lot of my time into the Player Class and Evolution Systems which I'll go more into the specifics of in the next sections. I'm very excited to continue working on this, and am even more excited to show it to the masses for feedback!  

Screenshot 2024-02-02 at 7.50.02 PM.png

Stats and Their Impact
In Survival of the Fishest, characters have 5 statistics that determine how they behave in the world; Attack (ATK), Defense (DEF), Health (HP), Speed (SPD), and Range (RNG). In keeping with my focus on replayability, I wanted the stats to be scalable and affect a wide array of gameplay elements to give the player maximum control over how their game plays out. Most are geared toward combating, but stats also change non-combat aspects. SPD, for example, primarily affects movement speed as a non-combat aspect but also improves attack speed, multi-hit, and piercing abilities. The other stats share a similar pattern, focusing on one main gameplay element and giving the character access to other elements unique to that stat. As for how they function outside of that; enemies have set stat values that adjust with the progress the player makes through the game. Each of the player's stats can be upgraded up to a max of 25 with an Upgrade item which drops as a possible reward for clearing the current room of enemies. More technically, stats are contained in their own Class script separate from anything else related to the character, making them a very helpful tool in tweaking a lot of the game just from that one script.

Screenshot 2024-02-02 at 5.43.45 PM.png
above is a snippet from the class and build design document (full version can be found here)

Classes and Builds
Survival of the Fishest's gameplay centers around the theory of evolution. As the core binding idea of my game, I wanted a simple concept that would maximize replayability while being a manageable amount of work for a one-person team, for which the player class and character-build framework fit remarkably well. Currently, the player has four class options: the Fish, Bird, Shrimp, and Seal Pup, each having separate stats and abilities. By upgrading the player's stats, each character can evolve into one of several new sea creatures with different abilities and playstyles based on one to two of the player's stats. Currently, the Fish is the only playable class with evolutions, those being: the Shark, Coelacanth, Salmon, Pufferfish, and Anglerfish. The chart above shows the relationship tree between all four classes and their 26 planned evolutions. Various background managers swap between evolutions with the help of a special powerup the player can collect as a reward for clearing a room.  I focused each evolution around one or a combination of certain stats or mechanics that tie into the animal that evolution is based on. The Shark, for example, revolves around the Attack stat and the Critical Hit mechanic. Each attack the player hits has a chance of doing an additional bit of damage. The Shark also deals additional damage to all enemies that are smaller than the player. I thought these effects tied in well with the Shark's natural predatory ability and sharp teeth. The full build and evolution list can be found using the link in the above caption.

bottom of page