I recently saw some developer discussion about the limitations of the current multicellular prototype and the way it affects how the player must transfer to the full 3d editor. Currently, the creature’s body is made up of individual cells, and therefore dozens of entities that must be calculated by the game. this puts a hard limit on how many cells a creature can have using the current system, which means that the jump from individual cells to a 3d model body is unusually early; Probably from 100 cells to 1000s, which is hard to make look realistic.
What if, to solve this issue, an intermediary editor is added to the multicellular stage that exists between 100 cells and 1000 cells? To do this we would ‘scale up’ the hexes from containing a single cell to containing seven in a hexagonal arrangement. These groupings of cells would be named clusters, and would allow for the best of both worlds between cell editing and 3d model bodies. The way it’d work is that in the game world, each hex containing seven cells would be treated like a cytoplasm hex in the cell stage, forming a large 3d model made out of these smaller cluster-based hexes.
At the same time, inside of the editor, each individual cell in the creature can be added or removed, with the cell cluster hex grid overlaid on top of the regular individual cell hex grid - The middle cluster hex would line up with the starting cell, so that it’s directly in the center of that cluster hex. The way that the cell clusters would work is that they each have a hitbox attached to their location in the 3d mesh, so that collisions and damage can affect that cluster, and even remove it from the creature if too much damage is taken. Each cluster would represent the combined statistics of the seven cells within, combined into one set of variables.
Possibly also, six hitboxes would be added to the edges of the clusters that allow individual cell interactions to occur, but i don’t know how expensive this would be. However the benefit would be that specific arrangements of cells would allow for chemical diffusion, spawning of projectiles/chemicals, and other interactions on a single cell’s scale, including digestion. Players would not technically need to fill a cluster, it is simply there as a grid-based outline so that the cells within are transferred into the game world whilst remaining performant. So a player could make their organism spiky with single cells on the external edge.
(The players would be able to click on the individual circles to place cells. Areas they leave blank would result in those parts of the 3d model being empty)
(On the left is an example of the creature made out of stem cells, to show how the shaping of the organism works. Next to it in the middle is an example of the player placing specialized cells in the desired area to create their species. The image on the right shows how the cluster’s hexes translate into a 3d model, similarly to how the hexes in a ‘cell stage’ creature translate into a 3d model. It basically uses the same tech but treats the cell cluster as an organelle, except with it’s own hitbox.)
Due to the fact that in the game world, the creature is a single mesh with hitboxes equal in number to cell clusters, players would probably be able to place hundreds of clusters whilst keeping the creature as performant in not more performant than the existing multicellular prototype. If the extra six external hitboxes are added to every hex, it might reduce performance heavily but in return allow the potential for complex processes such as primitive digestion and circulatory systems. Additionally, it might be possible to select clusters and turn them into internal voids in the creature, allowing players to create stomachs and chemicals storage chambers for various purposes.
Due to the fact that there are seven cells within every cluster, and that ‘many hitboxes within a single mesh’ should be more performant than having an equal number of game entities, the player would at least have access to 700 cells in their creature assuming the maximum entity limit per creature is 100. But much more likely is the chance for the maximum hitbox amount being greater than 100 before the performance demands are the same as the prototype editor, so the player should easily be able to use a thousand or several thousand cells. The way the player would access the new cluster-based editor is that, after reaching 100 cells, the player would upgrade to the new editor and the cluster-based hex grid would overlay their existing creature, with the middle cluster hex sitting atop the starting cell.
The editor would then record the cells within each cluster and transfer the stats/variables of each cell to the game entity that possesses the 3d model, as a simplified representation of what each cluster does. In game, the corresponding hitbox of each cluster would access the stored stats/variables of the relevant cluster, allowing the status of each part of the creature’s body to be managed in game, in the same way the current multicellular creature prototype does, but without needing as many entities.
in the example image there are about 60 cell clusters meaning about 500 or so cells, and each cluster is constructed to contain things such as storage cells, sensory cells, movement cells, transfer cells, chemicals absorption cells, acid release cells, neural cells etc. The cells which are on the outside of the creature might interact with the world via specific individual hiboxes, whereas internal cells might have hitboxes disabled and instead use their cluster-based blueprint to affect the performance of the creature.
Using this intermediary editor system, players would have access to a more fun, complex, factorio based species editor before they have to abandon individual cells, and it lets them experience the full potential of individual cell editing before they lose access to them.