Population System - Species Splitting


I’ve been thinking recently about how to organise species splitting in the population system. If at the start there is a single species (1 hex of cytoplasm) then how do you get from there to many species in many patches? Moreover if the species you are playing is wiped out when can you switch to another species and play as them?

If anyone else has other suggestions I’d be very happy to hear them. This is just an idea that I think might work reasonably well.

Firstly when you go to the editor and make changes that doesn’t always split your species (as otherwise we would end up with too many species). Maybe you add a flagella and that means all members of your species get that flagella.

Secondly, at a random time (based probably on population), you might get “split” when you enter the editor. This means that your old species is deleted and two new ones are created. Each of the new ones gets 100 mp (so when they come out the editor they are different) and you then continue to play as one of them.

Thirdly this results in there being a binary tree of species. Each parent has two children, that is the only operation. We can then measure the relatedness of two species as the number of steps along the tree between them. For example if two species share the same parent their relatedness is 2 (1 step up to the parent and 1 step down again). If two species share a grand-parent but not a parent then their relatedness is 4 (2 steps up to the grand parent and 2 steps down again).

Fourthly we could give the player a certain number of “respawn points”. If your species dies out you have to spend these points to get to another species to play. For example if you are wiped out and you want to switch to a species which has relatedness 4 to you this costs 4 respawn points. If you do not have enough respawn points to switch to a species which is alive then it’s game over. On iron man mode you could get 0 respawn points, on “creative” you could get unlimited (play as any species any time). We could give +1 respawn points every 20 mins of play or something like that.

Fifthly the way species move to new patches is when they split one of the offspring species gets a chance to move to an adjacenct patch and try living there. They are still equally related to you as if they were in the same patch.

What do you think? Does this make sense? is it implementable? Do you have improvements or other ideas or a whole different system? All feedback welcome.

Edit: Here is a diagram which might help explain things. The species which are alive are E F D G I K L (as a species is deleted when it is split). The relatedness of D and I is 5 and the relatedness of L and E is 7.


I love the idea of using a binary tree! I assumed we would just have a genus name variable and an epithet variable and if you share a genus those are “related” but a binary tree is much more powerful then that. I assume we will still have genus name and epithet for the naming of species though.

One thing that bugged me about auto evo is how non-Darwinian it comes off as, do you think we can use the binary tree and do mutation on a (I already sim each species and alter population numbers and they only split into new species/genuses/do mutation at a certain population and go extinct at certain populations) a per species basis to create what is effectively a Darwinian evolution sim for them and have that be auto evo? That way we dont have to loop through every individual which is the main reason we didn’t go full Darwin. (Each species can be treated as an individual by auto evo for Darwinian evolution)


Edited my previous post and added a lot of text*


Also, if a whole section of the tree (down to the last clade (a whole branch) goes extinct, do we keep them in the tree or “shave” off the extinct branch?

Also with a tree we can do an actual clade diagram.


This sounds good! I mentioned this earlier, but what happens if your species travels to a new patch and then adapts to it? If your species doesn’t split, will other members of your species in other patches get the adaptation even if it doesn’t help or even hurts them?


@Untrustedlife yeah I think having each species be a unit for darwinian selection to act upon sounds like the right thing. I think we can have a formula for how well a particular species is suited to a patch and then adjust it’s population accordingly, I haven’t figured out the details of that though.

Also I guess we can leave things in the evolutionary tree even in they are all extinct, it might be interesting for the player to look back at. Though if it makes the system slow or anything we could get rid of them.

@Narotiza I think it might make sense to have the process of spreading to another patch be a species split. So you split into two children species and one of them goes to the new patch. This would mean there would be no species which existed in multiple patches.

I think this is reasonably realistic as the patches could be quite big and, as you say, it wouldn’t be great if a species got worse to help it’s other members in another patch with different conditions.