I was thinking about Bacteria implementation and wondered about a procedural system, what do you think?
So each time anew species of bacteria is created it chooses the following things.
First it chooses a model and a colour for that model.
Second it chooses whether it is mobile or static.
Third, if it’s mobile, it chooses how to move. It may “flee microbes” (move away when any microbe gets close), “approach microbes”, “move randomly” or “flock” (try to maintain distance from others of it’s own species).
Fourth it chooses an “action”. So these might be “release a small cloud of a compound” (could be any compound, though maybe not DNA, for example), “release a toxin / agent”, “melee damage any cell it touches”, “glow” and maybe others. It performs this action periodically.
Each time auto-evo is run there is some percentage chance it will remove a bacteria species and create a new one.
The advantages of a system like this are that it creates a lot of variety for the bacteria and it means the player always has to adapt to what has spawned around them. Some species will be very dangerous (like ones which approach the player and do melee damage) and some will be very helpful (like ones which emit glucose and follow the player around). However over time each species will get replaced and so the player can’t rely on any good species nor fear any bad species too much.
I think the danger of having pre-defined bacteria species is that things will get stale and predictable too quickly.