Petri Kings

Petri Kings is a single player evolution game for Windows PC, inspired by Spore and Agar.io. As the Player you start with a simple single cell in a petri dish full of other prokaryotes and must consume energy to divide and evolve into the dominant species in the dish. With each cell division, you can use the energy you’ve collected to change the shape and size of your cell, or add new organelles from a branching tech tree, gaining new stats and abilities as you specialize and evolve. The game uses procedural meshes to generate an array of unique enemy cells that you can encounter with each game, as well as granting a wide range of creativity to design your own cells.

Gameplay

The gameplay loop leans into the simplicity of a single celled ecosystem. As the Player you must navigate a dangerous environment and gain energy which you can then use to gain lives and improve your character.
Your main cell moves forward following the direction of the mouse, and consumes nutrient pellets scattered throughout the dish. You must avoid carnivorous cells and toxins in the environment until you collect enough energy to divide and edit your cells.
New cell parts are purchased with collected energy in the cell editor and each one unlocks new abilities or parts, branching into different paths of evolution that mirror the evolution of early prokaryotes here on earth.

Procedural Generation

As with my Procedural Dungeon Generator tool, this project uses procedural generation to create unique encounters for each game, this time focusing on the characters as opposed to the level. The bodies of each cell in the game use procedural meshes with a front, middle, and back segment. These segments can each be stretched in two directions and the body is constructed around these parameters. Any unlocked organelles are then dynamically attached to the generated mesh. This system allows for a great deal of control for players when designing their own cells.
NPC cells also use this system to generate their body structures before selecting their organelles and adaptations from the same tech tree available to the player. This allows for a great deal of variety in NPC cells that players can encounter, as well as creating a unique and dynamic ecosystem for players to navigate and adapt to during the course of gameplay.

Educational Elements

My first introduction to game design was during a high school science project when we were tasked to make a game that taught a concept we’d learned that semester. To honor that project Petri Kings is intended to serve as a light introduction to the concept of evolution and microbiology. Unlike Spore where new parts are randomly encountered in the game, each new part here is unlocked in a branching tech tree which follows the evolution of prokaryotes here on earth. The 1.0 release will include evolutionary branches into simple Bacteria and Archaea. While some cell parts like Ribosomes and Membranes are universal, others like Capsules and some Secretion Systems are only available to specific cell types after specializing, resulting in different playstyles based on the design and evolution of your cell. There are also many examples of convergent evolution where parts have analogs with similar effects on each branch, ensuring successful and potentially overpowered traits aren’t fully locked to a single line of evolution. Descriptions of each cell part and the effects it has on the cell are displayed when hovering over them in the editor before unlocking them.
As the complexity of your cell grows, you’ll require more energy to divide resulting in a steeper difficulty curve the quicker you evolve and unlock new parts.

Change Log

    • Additions

      • Added Pathogen ability for bacteria builds 

        • Allows a cell to invade larger cells and multiply

        • Cells display the amount of energy that will be gained by invading

        • When an infected cell dies it will spawn duplicates of the invading cell based on the scale difference between invader and prey

        • T5SS is automatically triggered on an invasion attempt

      • Added HGT as a prerequisite for Plasmids

      • Added Phages as a new Environment hazard

        • Phages attach to a cell on contact and drain health over time

        • When an infected cell dies it will spawn mobile phages based on the cell’s complexity

    • Changes

      • Changed some UI Textures

      • Changed background and energy pellet textures to improve visibility 

      • Changed AI respawning in late game to make cells easier to find

      • Changed Cell AI in late game to allow enemy cells to survive longer

      • T3SS Spikes now animate on contact and only apply damage once per animation

      • Max population now increases when AI goes extinct

      • Changed base Max Population for each difficulty level

      • Camera now lingers on death position longer

      • Stronger toxins now have unique colors

      • Changed AI progression to have abilities  unlock over time based on the player’s complexity

      • Changed Plasmid loot table to unlock new plasmids over time based on player interactions

      • Changed Secretion System part names and some part descriptions 

    • Fixes

      • Fixed an issue that prevented AI cells from growing as large as the player's cell

      • Fixed an issue that allowed the scale complexity bar to display as negative

      • Fixed an issue that sometimes allowed the leader board to display negative cells

      • Fixed an issue that allowed cells with high defense plasmids to heal from toxins

  • Changes

    • Changed some text and materials in the tutorial

    • Changed how the AI cells are spawned and tracked in game to improve performance

    Fixes

    • Fixed an issue that caused cells to generate with data from extinct species

    • Fixed an issue that caused cells to sometimes generate with no data

    • Fixed the Cell Consumption ability becoming unlocked before Pili

  • Additions

    • Added plasmids as temporary items that can buff a cell's health, attack, toxin defense, and speed

    • Added new SST5 combat ability

    • Added a new inventory popup for equipped and collected plasmids

    • Added new names to the bot name list

    Changes

    • Changed unlock conditions for SST2 and SST3

    • Increased the number of combat abilities available to carnivore cells

    • Redesigned the editor and tech tree to visualize the full branching tree as well as the required parts to unlock each branch

    • Changed the tutorial to allow completing steps out of order

    • Changed some existing bot names

    Fixes

    • Temporarily removed pili collisions to improve large performance hit while I work on improving the system

  • Additions

    • Added Credits screen

    Changes

    • Changed AI cell generation to reduce CPU load 

    • Added optimizations related to procedural mesh collisions 

    Fixes

    • Fixed issue causing enemy cells to spawn stuck in place

    • Fixed an issue that caused the yellow pellet sound to play when sound effects are off

    • Fixed an issue that caused the unlock sound to play while sound effects are off when increasing max size

  • Game officially Released in Beta on Itch.io.