Translating Multicellular species to Macroscopic species

With the end of development switching to Macroscopic rapidly approaching, I want to tackle a specific topic: translating Multicellular species to Macroscopic species. While we have a pretty feature-complete Multicellular Editor and an in-depth concept for the Macroscopic Editor, they have quite some differences between them, and perhaps even points where they are in conflict. So, once we start implementing more features and restrictions in the Macroscopic Editor, no matter what those actually end up being, I think it will be good to have some plans for how to convert things.

General Concept

I think we are in principle able to take every aspect of a Multicellular species and translate it to the initial Macroscopic design. The fact that the Stages have different mechanics does not preclude that, it just means that while x translates to X, y might translate to Z. We also want most things to still be evolvable in the Macroscopic Stage. So when a trait carries over, you can consider it an “early unlock” and a head start on that trait, but it should still be possible to be unlocked afterwards, albeit more expensive.

As an example: In Multicellular, the Axon organelle boosts movement organelles in the whole organism. But things are translated when entering Macroscopic: If none of your cells have axons, you start with no nervous system. If you have one cell of a multifunctional cell type that also has an axon, then you start with a “basic” nervous system of a small size. If you have several cells of a cell type that is specialised in just handling the axon, then you start with a more advanced nervous system that also already has significant investment in its size.

I have discussed each attribute of a Multicellular species separately below. Of course, the specifics depend a lot on how Macroscopic mechanics are implemented exactly, but I have relied on the Macroscopic Editor concept, and hope that most of this will be applicable.

Cells to metaballs

The default structure of a Macroscopic species is expected to be a bilaterally symmetrical one, with a single “chain” of connected metaballs running from front to back. If we have more symmetry types, that will likely just mean more of these axes. Metaballs attached to the sides of this chain are appendages, and later on limbs. This immediately conflicts with how the Multicellular design (and the current translation of it to Macroscopic) works, since it is made up of a 2D sheet of nodes, where nodes to the side of the middle one can be something completely different.
My proposal for this is that each row of the Multicellular hex design is converted into one metaball for the initial Macroscopic design. That metaball is stretched in width depending on how many cells there are in that row. Any properties of that metaball depend on the properties of the cells in total. So, a row with chloroplasts, actomyosin and pili in it would turn into a wide metaball that has muscle characteristics, performs photosynthesis and does damage on contact. But how much the metaball contributes to each of those depends on how effective those cells were, and what their relative abundance in this row was.
This preserves the shape of the original organism and the function of its cells (both in an absolute sense as in relation to parts of the body), while still meeting the design goals of the Multicellular editor.

Membrane types to Tissue properties

Membrane types should have a fundamental effect on how the species works, or at least on its starting metaballs.

  • Rigidity, or the ability for the tissue to flex in any way. (this was not explicitly in the macroscopic editor concept, but I think it is reasonable to have). The membrane rigidity slider can also affect this.
    • Normal and Double: very flexible.
    • Calcium Carbonate and Silicate: Entirely rigid, like a rock. Compare with coral, but without the soft bits that coral has. Considering the physical nature of rock here, the membrane slider should affect the flexibility much, if at all.
    • Cellulose and Chitin: Intermediate between the above two. The slider can affect rigidity a lot here.
  • Damage Resistances: I think this is more straightforward, assuming the Macroscopic Stage has a similar damage resistance system. I do think the cell’s HP should be integrated into the damage resistance numbers, because the actual Macroscopic Species’ HP should be based on other things.
  • Microbe Absorption: Te ability to absorb nutrients from microbe clouds/mats by moving into them. Normal and Double enable this, the Cell Wall types do not.
  • Compound Absorption: The Macroscopic Stage will still have some mechanic for absorbing small compounds from the environment. Membrane stats can directly translate to this.

Organelles to metaball properties and available tissues

Personally, I believe that all the cell parts we have in the Microbe and Multicellular Stages should translate to some function in the Macroscopic Stage. I also believe this is doable. It does not have to be the exact same function (it might even be more interesting if it is somewhat), and multiple cell parts might translate to the same thing. But everything should do something.

  • Processes: should mostly translate into Macroscopic metabolisms. Things like photosynthesis and chemosynthesis are of course fairly easily ported since they add up across the organism. Anything that produces ATP is a bit trickier since that’s local. We might be able to ignore it as long as cells don’t have an ATP shortage, or it could translate to sprinting ability.
  • Environmental tolerance effects: These should be easy to transfer, assuming the Macroscopic tolerance system is still somewhat similar.
  • Storage: Can pretty directly translate to Storage attribute of metaballs.
  • Flagella and Cilia: should convert into a “skin type/feature” that provides some mobility based on the surface area.
    • Flagellum length: If the skind feature can have settings, than this would similarly translate to the initial setting of “cilium length”.
    • Pulling Cilia: Can enhance microbe absorption if it is enabled at all.
  • Pili: Provides some contact Microbe Absorption ability, even if the membrane type does not. (this is based on the Thrive gameplay implementation of pili, which is quite different from what they are IRL)
  • Actomyosin: Should become “muscle tissue.”
  • Axon: Should become “nerve tissue,” possibly as part of a nervous system capacity organ system.
  • Toxisome/Toxin vacuole: Translates to a new toxin system. Most likely should me limited to the “when you get eaten” or “contact” type of toxin deployment. If there are damaging toxin types selected, this should also have some Microbe Absorption ability.
  • Signalling Agent: Improves the internal organisation system (hormone system?), if we have such a thing in Macroscopic. (I believe communication with different individuals of your species should be a more advanced unlock).
  • Chemoreceptor: Better chemoreception. (the most basic sense in Macroscopic)
  • Lysosome: Needs to translate to a new digestion system.
  • Bioluminescent Vacuole: Besides the tolerance effects mentioned before, this would be producing light, which might have more relevance once vision becomes a thing.
  • Slime Jet: Ability to adhere to surfaces. A defensive mucus layer. (skin feature?)
    • Mucocyst: Stronger defensive mucus.

A note on different possible Macroscopic Editor designs

There is still some debate on whether we want to keep cell designs around during the Macroscopic/Aware Stages, or keep track of what tissues your species has available in some other way. I believe everything I wrote here can work for either system. Either drawing metaball stats from celltypes is an ongoing system, or it is run only once during the transition from Multicellular to Macroscopic.

Growth Order

This one is I think the exception to my rule of “everything translates to something.” While there’s a lot of potential for life stages, larvae, etc. I am going to assume that at least initially, juveniles will be implemented as mini-versions of the adults. In that case, there is no “order” different things grow in in the Macroscopic Stage.

Reproduction

Side-note

Writing this part has made me realise that the “minimum size in Macroscopic is 1 mm” fact has an additional dimension to it. If that’s the minimum size we can simulate and we want adults to be larger than juveniles, that automatically means the initial adults have to be significantly larger than 1mm.

I believe right now there is a consensus that at least sexual or sporulation will be required to advance to Macroscopic? If so, then both of those options would transfer over quite easily, with them both being implemented as “tiny ball, transforms into mini version of adult”. The difference would again just be if you need to track down a mate first.

Optionally, if we were to include “mass budding” as an option, it would directly spawn you as a mini-adult adjacent to an adult, instead of an “egg” by itself.

Behaviour

As far as I can tell, all the behaviour sliders seem like they would still be relevant in the Macroscopic Stage, so I propose we just continue to carry them over directly as we do now.

There’s one important point of discussion though. In the Microbe and Multicellular Stages so far, pretty much all species are actively responding to their environment, chasing, running away, etc. I believe only “max Peaceful Sessile + Brave” might just not respond to anything at all? I think this works fine for those Stages. But once we are in Macroscopic, the world should gradually become full of life that does not move or respond at all. There are plants/macro-algae of course, and sessile animals. And most of our current behaviour system directly relates to movement.

An important factor here is the nervous system. You have neuron-less animals like sponges which some people have pointed out do move, but I have to add that this is in mm per day. While among animals with neurons even the tiniest worms or animals notorious for being slow, like snail, they move closer to mm per second.

So, do we just want to disable the behaviour sliders and most AI for anything that does not have any nervous system? I think at the same disabling intentional movement for the player would make sense. This at least would mark a very definitive marker to decide what species we treat as active versus not active. The one reason I think this can work without too much player frustration is because even if you enter the Macroscopic Stage without any Axon cells, you should be able to create a basic one before you leave the editor.

Environmental Tolerances

One reason I proposed to change how some tolerances work (and made a prototype for that) is that once implemented, I think we can also directly port this over. As far as I can tell, excluding later developments like air pockets and massive sizes, when you look at “what average exterior pressure and temperature can this species perform reasonable well in (not just survive until you bring them back to their preferred environmen)” single-celled and multicellular species aren’t acutally that different.

The main concern would be to make sure that environmental effects from organelles are carried over to metaball/species properties in a way that ensures roughly the same outcome.

2 Likes

I don’t know how this would be concretely programmed. The player doesn’t have to follow any symmetry in multicellular stage if they don’t want to. So I’m not sure how this would otherwise work than by just taking only “inspiration” from the player’s current shape but otherwise basically just discarding what the player designed already…

Right now, metaballs are always perfect spheres, and I think that is a requirement of the entire convolution surface approach, so metaballs have to be spheres, they can’t be stretched horizontally.

1 Like

That could be a fun distinction, but considering how often people want to play as “plants,” I don’t know if forcefully losing all control over your organism outside of the editor would be satisfying for them. I think ideally, “plants” will just naturally want to move less and less as they evolve because movement will waste more and more energy as they grow bigger, they won’t gain anything from movement because they don’t have to find food, and they won’t be fast enough to outrun predators.

The two easy options I can think of are

  1. Making the macroscopic species look identical to the multicellular species, with each cell being replaced by one metaball. So, most players’ species will probably start as sort of circular blobs. This does mean they’d start with a quite a few metaballs, though.
  2. Ignore the multicellular species shape and just make one metaball for each type of cell. The more copies of a cell type that were in the multicellular species, the bigger the metaball would be. This would be “discarding what the player designed,” like you said.
1 Like

This is a freight train of excessive thought, but I think it’s good to express. My ultimate concern with this topic is placing limitations on an editor which:

  1. Will serve as a bedrock for atleast 5 hours, very easily even more hours of gameplay.
  2. Is the most ambitious in scope, and will have to support the greatest diversity of phenomena in the game.
  3. Will likely be Thrive’s big selling point: there are several “cell games” and many society/space civilization games, but very few “animal evolution” games.

I’m not saying this because I’m convinced anything suggested here is inherently flawed or unable to be “patched in” to a cohesive Macroscopic Editor. That’s just to say that in my head, the most important objective of a macroscopic editor concept is to make sure that, above all else, it is a great macroscopic editor. Obviously that’s the goal with any sort of mechanic in a game - it’s not like we created a microbe editor with the goal of it being anything else than the best possible microbe editor we can create - but the macroscopic editor is just so big in scope, that any limitation can be really jagged. And we have mechanics leading into the macroscopic.

So I get really nervous about hyper-focusing on making sure everything in the microscopic stages hooks up directly to the macroscopic editor across this time jump because the two editors have completely different rules, scopes, and goals. Or more specifically - focusing on the macroscopic editor with this at the front of our minds.

In my ideal world, we create macroscopic editor mechanics we know will work well, and then with those implemented, figure out how to hook the multicellular/microbe features in - not start with multicellular/microbe features as the base layer then find a way to jam macroscopic features on top. Though obviously this sounds a lot prettier than it would likely end up working.

That’s also why I took the approach I did in the macroscopic editor concept of just figuring out the best mechanics to represent as much as possible, instead of stressing over how to hook everything up. Building up this monumental and extremely important tool on mechanics not meant for this stage can lead to some very difficult constraints placed on possibilities.

For example, with membranes and the integumentary system as a whole: there are just so many questions related to mobility, muscle rigidity, flexibility of internal components, etc. which root from how membranes work in the microbe/multicellular stages. So I decided to distance from that a bit, and my first concern with the integumentary system was creating something that would work with representing as much of the diversity we see in metazoans.

That spawned the Skin Type & Skin Attribute system in the concept document. Then from there, I worked backwards to make some assumptions, and concluded that two options would work pretty well:

  • There is one Skin Type that all motile macroscopic organisms start with, and your choice of membrane in the microscopic unlocks a unique Attribute, or -
  • We create multiple Skin Types based on your membrane choice, that all have their own attributes.

The merit of either can be debated, but the larger point is that I started from a point of understanding what was best for the stage at hand, and then worked backwards to the Microbe/Multicellular - not started from the Microscopic Phases and worked forwards.


But I will concede that I am being very extreme and binary in this discussion when in reality, most aren’t mutually exclusive. I also want to clarify that I’m not trying to say that anyone is “hyper-focusing on hooking things up” in a rudimental way (everything brought up here is very important to consider, and would have to be considered no matter what approach we take), and I hope I don’t make that impression.

I honestly think that a part of this reaction is due to the fact that I wrote a bajillion words of macroscopic editor mechanics over a long period of time, and through that process, I bumped into hundreds of of dead ends and difficulties before landing on something that sounded kind of right for every concept. So I remember all of the ways I’ve gotten stuck for certain topics, and am really fixated and worried about us bumping into that down the road because of a decision we make earlier.

TL:DR - I really do hope we consider things from a “best for macroscopic, work backwards to the microscopic” approach instead of a “work with what we have and grow into the macroscopic” approach. Rathalos already does this in the original post well for many segments.

1 Like