Multicellular Auto-evo

Expanding auto-evo into the multicellular stage scares people. I think the main reason is the combinatoric magnitude of multiplying the number of ways you could add a cell times the number of organelles you could add to a cell (gonna feel strange not calling it “a microbe” for a while). This, fortunately, is a matter that mutation strategies were conceived to address.

Here’s an example set of mutation strategies that can make a wide variety of creatures. Lets start with this simple starting clump:

  • Differentiate forward: make a new cell type, mutate it once, place it on the front of the central column

  • Differentiate Backwards: As before, but you add it to the bottom of the central column:

  • Grow Forwards(cell_type): For all instances of that cell type, if the front-left and front-right positions are empty, but another instance of that cell in that spot:

  • Grow Backwards(cell_type): As before, but with the rear-left and rear-right spots:

With these four rules, here’s a few species I can make with five mutations:

These shapes can be made by not iterating over possible positions in the grid, only iterating over mutation strategies. That gives you 2 + 2 * the number of cell types possible moves to try, with the differentiate strategy probably inherently having some subtypes that involve special differentiating mutations in the new cell (but not every miche has every mutation as a mutation strategy). This set of rules also happens to force all species to be bilaterally symmetrical, and won’t permit, for example, this species to emerge

It’s possible to limit (or eliminate) these restrictions with enough mutation strategies, but I would actually discourage it. First off, this might result in some really cursed looking creatures, but more importantly we have a much better source of originality: the player. Even a small change a player makes early in multicellular changes the set of possible designs for that run, most of which won’t look at all like a copy-cat of what the player actually made. As species start having more shapes and taking on “personality”, making sure the same species don’t show up game after game will become more important. Remember: the goal of mutation strategies is not to capture all possible actions in the editor, or even to ensure that any body plan can be made eventually, but to ensure a wide enough variety of potentially viable body plans to create diversity.

So what scares me in multicellular auto-evo? The selection pressures. In microbe stage, placement of organelles doesn’t matter most of the time, and microbes are are roughly circular exempting some very long line cells that don’t evolve until very late in microbe stage, if at all. In multicellular, cells of different types are on opposite parts of the body, and geometry starts to matter. Grasping tentacles are very advantageous (and awesome), but if they are not near the mouth, don’t pull things towards a mouth, or are surrounded on all sides by a hard shell, they do nothing.

Clever use of mutation strategies might help us a little here: the differentiation strategy that mutates a cell to have pulling cillia might only branch off from a cell that can engulf, for example. Simple geometry rules can also help: If you can engulf, but all six adjacent slots have a cell in them, then that doesn’t matter very much. In many (particularly heterotrophic) cases, however, I expect things to get tricky, and we will likely need to be smarter.

I think multicellular is the right time to start bringing up the idea of miches not directly reflected in the gameplay itself. For example, drought resistant plants are important in an alien biosphere, but we might never actually implement droughts in-game, because we decide generations aren’t lasting that long in later stages for example. Particularly while we still work out how gameplay really works in multicellular, I would suggest starting out with a few “silly” miches just to get some basic designs on the field, and start playing with and against them:

  • a “snowflake” miche that rewards maximizing surface area
  • a “blob” miche for minimizing surface area
  • a miche for maxing out single-target damage (without starving to death)
  • a miche for the widest “mouth” (vaguely defined)

As other parts of multi-cell solidify, a couple of these might solidify into something backed by science and or gameplay, and others will get removed. With our dreams of getting multicellular done much faster than we did microbe, however, I don’t think we have time to wait until the gameplay of multicell is fully fleshed out before scaffolding for auto-evo is built, nor do I think we will be able to try out gameplay very well until other species are forming into anything interesting.

5 Likes

Very nice to see thought on auto-evo for the Multicellular already. That was one thing that spooked me a bit, so I’m glad the miche grandfather is going for it.

Not sure I have much substance to add as to the quality of your points. One thing I brought up on Discord briefly in regards to auto-evo, that may or may not be addressed by this post - I wonder if it’s possible to decrease the granularity of adaptation considered for the Multicellular Stage.

In the Microbe Stage, mutation seems to be based on a part-by-part basis. With the Multicellular Stage - like you mention - shape and macrostructure becomes more important. So what if instead of auto-evo thinking in terms of “should I put a merabolosome here?” it thinks “would it be best to make the entire perimeter of my organism rigid?” or “should I put on a whole lot of slime jets to seriously boost speed?”

This could very well easily already be handled, or be dealt with cohesively with your writing here. For example, you mentioning the “biggest mouth” or “fat blob” miche kind of is in that same direction. Not an auto-evo wizard - just sounding out thoughts :sweat_smile:

2 Likes

Glad to see some thought going into this, as it’s definitely very important. What you’ve lined out for mutation strategies seems like a good base to get started on making things look interesting.


One thing I want to say right from the start though. I have mainly stated this in the multicellular concepts thread, so many people will have missed it:

Our current pattern of “enter Multicellular Stage with one cell, then build, differentiate and design from there” is a very poor fit for the real-life development of multicellular life and is an awkward transition from potentially living several generations mainly in colonies. For both of these reasons, it would be in my opinion much preferable to start the stage with a little blob of identical cells that you then start differentiating.

So it would be good for auto-evo concepts to have some notion of adapting cells already on the grid into different cell types.

For me as well. Because you haven’t mentioned it, but these selection pressures also apply to the player species, that’s how the population calculations work. So the scoring systems need to handle player-made cells decently well, or we’re going to get the same problem as what I have been trying to eliminate from Microbe Stage: The player very well designing an effective organism, but the auto-evo system saying “Nah, that’s terrible, you’re going extinct.”

One option is to go a bit mild on geometry-related scoring so that players don’t get destroyed and use mutation strategies that can only make “good” geometry like you said. But I think there are limits to that.

Microbe stage auto-evo does take positioning into account for some of the organelles, like movement tools (and in my ongoing PR I’ve added pili to this). Could we do something similar with cell placement in macroscopic? “Mouth cells” should go towards the front, etc.?

I also have had plans for this in the Microbe Stage that I still want to do. But the only thing holding me back from this is auto-evo calculation times. And I don’t think that’s going to get any easier for Multicellular.


Other assorted thoughts:

Cell differentiation

You briefly referenced it, but we functionally have two layers of editing here: cell level and organism level. So I’ve been wondering if we can have a two-layer auto-evo.

I think Deus and I have settled on the idea that creating specialised cell types is a big theme of the Stage. So what I would want to do is have the organism-level auto-evo decide “We want to have mouth cells on the front”, then makes a new cell-type, names it “Mouth” and slaps it on the front.

It then passes the buck to the cell-specific auto-evo which uses the mechanics of our Microbe Stage auto-evo with a special set of miches to evaluate how good of a mouth this mouth cell is, and evolve it in that direction. The organism-level auto-evo only gets fed back that score and decides when it wants to improve some cell-type.

To add another example:

This would be a case of organism-scale auto-evo wanting to maintain a perimeter of “skin” cells, and then instructing that cell type to use the “skin” miche nodes.

Time-scale split

I want to actively advocate for having Multicellular Stage on a separate time-scale from Microbe Stage. Meaning that once you enter it, auto-evo spends most of it time on Multicellular Auto-evo, only occasionally doing a round on Microbe-stage species. Auto-evo calculating times are already limiting for just Microbe Stage. So I think we need to do this to have any depth in Multicellular auto-evo.

3 Likes

I accept this title, mostly due to the logical implication that @Gamedungeon is now “miche daddy”

My hope would be that mutations across a cell type would achieve some of this. There’s also nothing wrong with a “spend all your remaining mutation points on X” mutation strategy; they don’t need to resemble single editor moves.

At this point I consider that the cannon game-design. That’s why I started my examples with a small blob. Maybe the blob is a slightly different grouping of five cells (5 is how many you need to start multicellular, so it makes sense to me that that’s the starting size) in order to “seed” different evolutionary bodyplans in different worlds…

I would agree. I would also have the million years between editor cycles decrease with each stage accordingly just for the extra bit of accuracy.

4 Likes

Ah, I see I misunderstood the first image, I thought was already the first round of cells being added.

The main point I was trying to bring across is that the mutation strategies you proposed so far only add cells to the organism in different patterns (and differentiate to create new cell types to place). I do think it would be good to also have a chance to replace some already existing cells with a different type, or delete existing cells.

I wouldn’t count on the Stage transition requirement being a 5 cell colony staying long-term. I think there’s enough thoughts going around that it’s a bit odd that you can immediately transition the generation that you place binding agents.So I don’t think we should feel “shackled” by that number when deciding what “starting blobs” should look like.

I like the idea of starting off with different blob shapes. In the concept thread I suggested having shapes based on the cell membrane type, but something more random could also work. I think this would not just differentiate between worlds, but also between independent multicellular lineages on the same world.

I would also have the million years between editor cycles decrease with each stage accordingly just for the extra bit of accuracy.

Yes, I think this should just go hand in hand with editor frequency changes.

1 Like