Under construction: Creating multicellular life is an exhausting undertaking and as long a it’s taken to get this far I feel like it will take even longer to explain it.
What is HexCell:
HexCell is an evolving cellular automata, in which cells compete to collect the nutrients needed to survive. Each cell has a corresponding gene expression which, aside from mutations, will be passed on in its entirety to new cells every time an existing cell splits.
At first mutation is rapid, to assist in the quick optimisation of early generations, however mutation rate itself is determined by the genes and may change at any division.
If two dividing cells aim to occupy the same location, a new cell with a third gene expression will be created using the original two cells as parents sharing their genes with equal probability.
Rules of survival
The Cell Properties:
Each cell is initialised by its genetic information, the following values are created as the cell is initialised:
|Property Name||Initial Value||Additional Notes|
|Generation||0 for first cells.||Each new cell will be 1 generation higher than its parent. Or 1 higher tah|
|Receptors||Same receptors as the parent.|
Or a combination of two parents receptors
|Negative Ion Pump||One boolean value for each of the 6 sides. Initially all False|
|Positive Ion Pump||One boolean value for each of the 6 sides. Initially all False|
|Flow Valve||One boolean value for each of the 6 sides. Initially all False|
|Resources||Start with 25 each of A,B,C,D,E,F,G,H for the original generation|
Each time a cell divides, both new cells will have half the resources of the original cellQ
|Primary Resource||A,B,C,D,E,F,G,or H||Primary resource must be spent every 1 in N turns|
|Secondary Resource 1||A,B,C,D,E,F,G,or H||Secondary resource must be spent every 1 in N turns|
|Secondary Resource 2||A,B,C,D,E,F,G,or H||Secondary resource must be spent every 1 in N turns|
|Start Mode||Integer from 0 … 15|
|After Breed Mode||Integer from 0 … 15|
|Mass||Chemical Mass + Stored|
|Chemical Mass||The mass of all available chemical reserves|
|Stored Mass||The mass of the cell-body||Increases every time a resource is “spent”|
|Turn||0||Increases by 1 for every frame the cell is alive|
|Do_breed||FALSE||False if the cell is not ready to divide otherwise, an integer from 0..5 representing which direction to divide in.|
|State||“REST”||State can be set to “REST”, “COPY”,“DIE”,“PANIC”|
-Breed Cost -Life Expectancy -Cost of Living -Resources Dropped -Stability
|0..5||There are 5 stats with a total of 10 points to allocate.|
As the breed cost stat increases, the amount of resources required to divide a cell are decreased.
|Stat 1: Breed Cost||The amount of primary resource lost during cell division|
|Stat 2: Max Age||5+Life Expectancy*8|
|Stat 3: Cost of Living||Each additional point gives you an extra turn free in each cycle without the need to spend primary or secondary resources|
|Stat 4:Resources Dropped||As resources are spent on survival a some will be stored within the cell, the higher this stat, the more resources will be dropped when the cell dies.|
|Stat 5: Stability||Each additional point to stability reduces the chance of mutation during division or breeding.|
Low stability will increase the rate of evolution and is beneficial in arms races or rapidly changing environments.
High stability will greatly reduce the chance of cancers or other detrimental mutations.
|Target Weights:||*88||One integer for each potential action the cell can perform.|
All reset to zero at the beginning off each round.
If an actions weight exceeds 0 the action commences, if it drops below 0 it halts.
If it’s exactly 0 there is no change.
Kickstart your evolution by downloading existing genes to initalise your population