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.