Upgrades, Unlocks, & Endosymbiosis Master Thread

In light of the roadmap mentioning the implementation of organelle upgrades, unlocking, and endosymbiosis being targets for 0.6., let us finally create a unified concept for how these essential mechanics will work. Design for unlocking parts has been largely finalized, and organelle upgrades are a bit of a continuous and iterative process, but the general principles behind them are pretty set. Endosymbiosis still needs a big conversation for us to understand exactly how it will work. However, part of that is because endosymbiosis was waiting on the thought behind upgrades/unlocking to be settled, so I think we can finally find a solution.

It is important to consider each aspect of this unlock, upgrade, and endosymbiosis trio together because of how intertwined they will be in the player’s experience, which is why I created a dedicated post. I will essentially condense information on how unlocks and upgrades will work according to previous thought, and propose some ideas for endosymbiosis to get the conversation going. Hopefully, this holistic approach will make things more tidy and cohesive.

I’ll specifically note if something is my own suggestion so that we can differentiate between my commentary and established thought.

Questions to Ask Yourself While Reading This

There are a few questions I want you guys to consider throughout this section. I ask a few questions because I have no clear answer, and I ask a few questions because there are multiple approaches we can take, depending on what we want Thrive to play like.

How Hard Should Unlocking Organelles Be? I think prokaryotic parts should be pretty easy to unlock and I think most of you guys should agree to this. But for eukaryotic parts, should we make it so that a player can expect to unlock all potential organelles in most playthroughs, or should we make it so that a player might not expect to unlock every single potential organelle in a playthrough depending on their choices? On one hand, making it pretty easy to unlock all organelles would ensure players are able to play how they want. On the other hand, making it a bit more difficult to unlock organelles can both incentivize endosymbiosis and make your choices as a prokaryote have more weight while realistically representing evolution.

I personally think unlocking organelles should be rather straightforward, but just a bit effort-intensive. Not enough to significantly lengthen the microbe stage, but enough so that the player doesn’t have the ability to unlock every organelle rather easily if they wish to make it speedily through the stage. So that a player would eventually be able to get the specific organelles they want, but would have to invest effort to get other organelles that differ wildly from existing morphological structures in their species. But I can easily be talked off this edge.

Anaerobic Glucose Breakdown Metabolosomes require some adjustment for when we eventually add an initially anaerobic world, as they are tied to oxygen. Buckly and I thought of having it be as simple as a toggle in their Modification tab, where you can choose to supercharge your metabolism with oxygen. However, the anaerobic metabolosome still needs some input. Would we be able to get away with just having a flat rate of glucose breakdown without it being tied to any compound?

Greater Integration of Environmental Tolerances This is generally its own topic and less of a question and more of an observation, but we need to ensure that acquiring proper environmental tolerances is not a big mess for the player. We have various parts with upgrades focused on tolerances, but we run the risk of scattering mechanisms for dealing with hazards all over the editor. So that is something we should be very aware of.


We should think of unlocking prokaryotic parts and organelles differently. As Buckly mentions, unlocking prokaryotic parts should be rather easy. They aren’t as powerful as organelles, bacteria themselves are known for being able to rapidly shift metabolic strategies, and we want atleast some stability in the Microbe stage regarding what tools a player has to adapt to their environment. Unlocking organelles on the other hand should require a bit of effort, and steps into the domain of where endosymbiosis fits in.

Buckly proposed these unlock conditions, which I think are good starting points (we can adjust exact values if need be):

Unlock Conditions (Prokaryotic Parts)

Starting Parts: Rusticyanin, Chemosynthesizing Proteins, Metabolosomes (Anaerobic), Chemoreceptors.

Thylakoid: Evolve in a patch with Lux levels beyond 0%.

Nitrogenase: Evolve in a patch with less than 5% ammonia.

Oxytoxisome: Kill 5 cells OR be killed by a cell 3 times (I think toxins should also be provided at the very start to provide some mechanism of threat other cells in the beginning of the microbe stage).

Flagellum: Produce 10 more ATP than you consume OR reach a speed below 30.

Predatory Pilus: Kill 5 cells OR be killed by a cell 3 times.

Here are some proposals for parts which have yet to be added in fully. Because they are rather unique metabolic strategies, I actually do think we should make their unlocking be a bit more difficult and interesting, which can increase replayability. I think these can be improved on, so I would love suggestions.

Thermosynthase: Move into a patch with a temperature that drastically differs from your previous patch. [Likely will evolve pretty quickly, and can be an introduction to part unlocking in a tutorial]

Radiotrophic Protein: Consume another cell within range of a radioactive rock’s effect.

Bioluminiscent Protein: Successfully reproduce in either the cave or abyss patch.

Tying in Genetic Transfer - This isn’t established design and is a suggestion I came up with, but I think it slides in cohesively. Genetic transfer is very important for prokaryotic cells, allowing them to rapidly pivot metabolic strategies whenever needed. There are various methods of genetic transfer but for Thrive’s sake, I think transformation - cells finding clumps of DNA in the environment and integrating it within their own genetic information - is the only method necessary.

Perhaps we can have it so that if a player collects 3 clumps of DNA in a single life, they are able to unlock a random part. Collecting just 1 clump provides a 25% discount for your next move in the editor, and collecting 2 provides a 50% discount for your next move. This not only incentivizes exploring, but provides another failsafe for players who wish to collect all parts possible.

Unlocking Organelles

I will discuss the alternative method to unlocking organelles that isn’t endosymbiosis here. Much of this is my own thoughts and not pre-established thought, so it very much is up to debate.

We want two ways for unlocking organelles: endosymbiosis, representing a more involved path with more immediate rewards, or through traditional unlocks, representing a less complicated but more dragged out path. We want these two options to ensure that, based on the fact that endosymbiosis involves integrating another cell into yourself, organelles are still able to be unlocked even if your auto-evo generated selection of endosymbionts is less than ideal.

At the same time, I think we shouldn’t make this alternative to endosymbiosis so easy to do that players end up neglecting endosymbiosis 90% of the time. And I mentioned it above already, but I believe it would add a good amount of replayability if unlock conditions for organelles required some effort to achieve. I’ll show what I mean by giving you these examples:

Mitochondria: With atleast 20 ATP generated, evolve 7 times with aerobic metabolosome respiration being atleast 40% of your metabolism.

Chloroplasts: Evolve 7 times in a row with atleast 5 thylakoids in your organism.

These unlock conditions aren’t very difficult, but do require some commitment on the part of the player. And I think this makes it so that players who very clearly have a specific organelle in mind for their play style will inevitably get that organelle, but a player will have to either utilize endosymbiosis or change their morphology if they want to unlock another organelle which might not directly evolve from their current build. Again, I can be talked off this edge and I might be neglecting something, but I do think it would be a pretty fun system to see implemented.


As of now, Buckly notes that we want to stay away from “flat” upgrades as much as possible and instead rely on upgrades with tradeoffs. By flat upgrades, I mean traditional upgrades which essentially just boost stats; and by upgrades with tradeoffs, I mean upgrades which make one aspect of a part better at the cost of another aspect being diminished. So for example, modifying a flagella so that it is more resistant to currents but slower overall, making chemoreceptors detect cells but letting go of the ability to detect compounds - that sort of thing.

I personally agree with the above sentiment, though it admittedly does make how we deal with progression throughout Thrive require more thought. In my opinion, the only reason why we should consider flat upgrades is if we feel like we need to lengthen a certain stage.

There are two types of upgrades currently proposed (new more scientific terms, which I know exist, are welcome)…

Variants: Somehow changing the function of a part so that a new part arises, such as changing a spiky pilus to a straw pilus, a mitochondria to a hydrogenosome, etc.

Modification: Altering the processes of a part so that certain stats are boosted at the cost of other stats, such as increasing temperature tolerance at the cost of some metabolic efficiency, reducing weight at the cost of glucose production, etc.

We can always come up with new upgrade ideas, and I’m sure we will as we continue to flesh out the environment, but we have some baseline proposals already. We require balancing and exact numbers still, but the general idea is there. Take a look, and suggestions are welcome.


Capacity - Further devotes cytoplasm to compound storage, reducing glycolysis function in return for possessing more storage. Glucose consumption reduced by 0.006 and ATP production reduced by 1.5 in return for +4 additional storage capacity.

Enhanced Glycolysis - Reduces storage capacity but increases ATP production by 1.5 and reduces glucose consumption by 0.006.


Anaerobic/Aerobic Toggle - A switch between an anaerobic and aerobic metabolic breakdown of glucose. Anaerobic metabolosomes produce less ATP, but are more versatile in habitable ranges. Aerobic metabolosomes produce more ATP and provide tolerance to oxygen, but are dependent on the presence of oxygen and will lose anaerobic function. (Variant; will need to consult with theory to see exactly how best to approach this)

Antitoxicity - Metabolosome assists with the metabolizing of toxins at the cost of less ATP generation. Four less ATP while providing .01 toxic resistance. (Slider)

In the previous concept, antitoxicity was a perk of mitochondria, relegated to being eukaryotic. I suggest that it might better to offer anti-toxicity to prokaryotic metabolosomes since toxins are really important amongst prokaryotes. If we want the antitoxicity slider to instead be a special “power” for eukaryotes to distinguish themselves from prokaryotes however, I’m all ears.

The anaerobic/aerobic toggle will be important in the arrival of free oxygen that will happen across most early worlds when oxygenic photosynthesis appears.


Antitoxicity - Mitochondrium assists with the metabolizing of toxins at the cost of less ATP generation. 10 less ATP while providing .02 toxic resistance. (Slider)

Thermogenesis - Mitochondrium will consume extra glucose, providing heat to resist the cold in return. Will consume 0.1 more glucose (0.063 glucose at 21% oxygen) and lowers temperature tolerance by 1C (EX: Temperature range of 21C-30C becomes 20C-29C) (Slider)

Hydrogenosome - The mitochondrium will become anaerobic, allowing a wider range of habitability. However, ATP production will decrease by 50%. (Variant) Hydrogenosome - an overview | ScienceDirect Topics 1

Note that I suggest thermogenesis to be a unique eukaryotic capability in contrast to the previous post. Once again however, I’m not particularly pushing for this, it’s just a suggestion we can figure out through conversation.


Oxygenic - Photosynthesis will now split water to produce oxygen, increasing the efficiency of photosynthesis but necessitating aerobic tolerance. 8.9B: Anoxygenic Photosynthetic Bacteria - Biology LibreTexts 1.

Red Pigments - Increases photosynthetic efficiency in low-lit conditions, but decreases photosynthetic efficiency in normally-lit conditions. (Slider)

Brown Pigments - Increases tolerance to cold temperatures, but decreases tolerance to higher temperatures. (Slider)

A brief google search I did seemed to indicate that red pigments were found in deep-sea photosynthetic organisms (seaweeds and other red algae) and brown pigments were found in photosynthetic organisms closer to the poles, so I wanted to reflect this to more accurately reflect life as we know it by adding red pigments and attaching Buckly’s idea to them.

The first suggestion reflects a bit of evolutionary history, where it took a while for photosynthesis to begin splitting water, and thus, producing free oxygen. It adds a cool layer I think, but it obviously can be cut if we decide that is too much detail.


Red Pigments - Increases photosynthetic efficiency in low-lit conditions, but reduces photosynthetic efficiency in normally-lit conditions. (Slider)

Brown Pigments - Increases tolerance to cold temperatures, but decreases tolerance to higher temperatures. (Slider)

Flattened - Thylakoids within the chloroplast are flattened and more streamline, reducing mass and increasing speed but decreasing glucose generation by 10% (Slider?)

Notice the lack of an Oxygenic option, which is supposed to reflect eukaryotic photosynthesis on Earth. The option can be included here as well if you guys think it is warranted.

Chemosynthesizing Proteins

Increased Tolerance to Heat - Increases tolerance to heat by .5 Celsius and decreases tolerance to cold temperatures by .5. Increases total mass by .25(?). (Slider)

Sulfur Granules - Produces sulfur granules, increasing toxin resistance by 5%. Produces 10% less glucose.(Slider)

Sulfur granules have been observed in some sulfur-respiring organisms with unclear purpose as a by product of metabolism, but I took a bit of liberty in gamifying them. Open to suggestions and comments.


Increased Tolerance to Heat - Increases tolerance to heat by 1 Celsius and decreases tolerance to cold temperatures by 1 Celsius. Increases total mass by .25 (Slider)

Sulfur Granules - Produces sulfur granules, increasing toxin resistance by 10%. Produces 10% less glucose. (Slider)


Mineralization - Creates mineralized granules which add +2 Health, but reduces ATP production by 10%. (source)https://journals.asm.org/doi/10.1128/AEM.01492-06 1

Similar to the sulfur granules of the above organelles, iron granules appear in certain iron-respiring cells but their exact purpose isn’t well known, so I took some liberties in gamifying them. Again, open to comments.


Denitrification - Instead of passively generating ammonia, the nitrogenase will speed up cell processes by up to 5% depending on the amount of ammonia within the cell(?). Releases Nitrogen. Exclusively anaerobic.

I’m not 100% sure if this is solid and I just spat it out, but I want to hear thoughts. The nitrogen cycle is a very prominent component in life as we know it, both in the niches which cells take and the ecosphere’s overall health, so it feels a bit weird just having a single part of it in. I get a similar feeling with hydrogen sulfide and chemosynthesis, but of course, we should be limiting our scope in some ways.

Nitrogen-Fixating Plastid

Not so sure about this one.


Cell-Tracing - Allows the tracking of specific cell species instead of compound clouds. (Variant)


Length (Slider): Length can be adjusted, increasing the range of the player’s attacks at the expense of damage.
Something like -1 damage/+length per point in slider.

Girth (Slider): Girth can be adjusted, increasing the damage of player’s attacks at the expense of more mass. Something like +0.5damage/+0.02 per point in slider. Somewhat hidden benefit of having a wider hitbox, making it easier to block projectiles?

Straw: Turns the pilus into a hollow tube for hostile resource transfer. Pilus deals 4 less damage, but now steals 0.2 of each consumable resource from target cell on hit.

Toxic: The pilus now injects toxins into target cells. -2 damage, +2 toxic damage. Basically would allow players to bypass physical defenses in other cells by exploiting a lack in toxin resistance. Should this require toxins in storage to function?


Length - A shorter flagella decreases sprint speed but decreases the rate at which stamina depletes. A longer flagella increases sprint speed but increases the rate at which stamina depletes.

Girth - A girthier flagella decreases the effect of currents, but increases mass. A skinnier flagella decreases mass, but increases the effect of currents.


Specialization - Increases the storage for a specific compound at the cost of reducing storage for other compounds.

Parts Remaining: Radioplasts, Thermoplasts, Cilia, Slime & Toxins (Technically parts of the agent system discussion, which must be discussed). Did I miss any?


With everything laid out, let’s finally slay the dragon that is endosymbiosis. There isn’t much established thought behind it besides some conversations on my thread in the community forums, so we must brainstorm a bit. I’ll propose some basic ideas/information as a prompt, and then we’ll figure out what we want from there.

There were a lot of ideas surrounding endosymbiosis, ranging from something as simple as consuming x amount of cells with y part to full blown customization with organelle editors determining stats. I pushed heavily for the latter, but…

  1. Our programmers wish to maintain some modicum of mental health, and
  2. The point endosymbiosis serves in Thrive is essentially an unlock system with scientific flavoring, so adding a lot of complexity to it would seriously bloat game design in my opinion.

I think endosymbiosis should be a rather simple thing to do, and I think the hardest thing about it should be finding a good endosymbiont. That is, the process itself shouldn’t be hard, but the player should be encouraged to be a tiny bit selective in deciding who to integrate within themselves. We can do this by making it so that a player needs more time/resources/effort to convert a less than ideal endosymbiont to a full time organelle, but make it so that this same process is much easier with a good candidate for the part they want.

A very rough idea I have is essentially having it so that an endosymbiont candidate can be turned into different organelles based on its morphology, but having it easier to convert said candidate into a specific organelle based on its composition. For example, if a candidate has 4 metabolosomes, 3 thylakoids, and 2 chemosynthesizing proteins, you can convert that candidate into either a mitochondria, thylakoid, or chemoplast, but it would be easiest for it to become a mitochondria. And the more metabolosomes that candidate has, the easier it would be to convert it into a mitochondria.

I think that idea is reasonable, but it has some questions we must answer…

  1. What exactly must a player invest/do to make a endosymbiont into an organelle?
  2. GUI-wise, how would we present the choices a player has in converting their candidate, represent how close to becoming an organelle a candidate is, and represent the candidate itself in the editor process (considering the fact that the player at first wouldn’t be able to place their endosymbionts)?

There are two ideas I have which I feel are robust and want feedback on…

  1. Skip the part of endosymbiosis where a cell had to find their endosymbiont in the environment and ingest them and instead allow the player to place proto-organelles based on the cells they have ingested recently. Then players will have to spend MP on making these proto-organelles more efficient and then eventually a part of yourself. This is the easiest and most convenient way to implement endosymbiosis, but if we can, I think we should make the player have to find their candidate in the environment.
  2. Add an empty part button to the editor which allows players to pick one of the cells they have ingested recently as their endosymbiont candidate, and then when they do that, they will specify what organelle they are seeking to make out of this candidate. The player will then have to reproduce a certain amount of times with that candidate in their cell depending on how optimal the candidate’s morphology is to fully integrate the candidate into themselves (we will tell the player this information). So for example, if you have a really good candidate for a mitochondria, it will take two successful reproductions to get a mitochondria, while a bad candidate for a mitochondria will take six successful reproductions to be fully integrated. The player will have to find this candidate in playthroughs, and when they do, consume them. When they are consumed, instead of dying the candidate will essentially function as an organelle for that lifespan, and will only be lost upon successful reproduction or death. Reproducing will provide a population bonus for whatever AI species is your candidate.

I feel that these mechanisms are rather easy to understand once you go through it, represent a fun but very achievable challenge, provides some replayability, and provides players a safety net even if they don’t have the perfect endosymbiont. I very much prefer option 2, but if for some reason we must simplify endosymbiosis a lot, then we can settle on option 1.

We’ll want endosymbiosis to be available before the nucleus (the nucleus followed the mitochondria if you didn’t know, and I can provide a source), but we don’t want players to absolutely ignore the nucleus. I think a player without a nucleus can only complete endosymbiosis once, meaning they can only have one organelle. This will allow worried players the opportunity to make sure they have enough energy before slapping on a nucleus by seeking a powerful organelle’s help, provides replayability, and offers realism. Of course, if a player wants to skip endosymbiosis, they will reliably get their preferred organelle regardless. However, it would take much longer, and the player would have to more dramatically alter their cell’s morphology if they want a cool organelle they otherwise would get rather easily if they just went with endosymbiosis.


A long thread, but a big topic to cover. Being able to say that we have a cohesive and universal plan for how upgrades, unlocking, and endosymbiosis works will mean great news for this project. Evolution is progression, and how progression is dealt with is a backbone of game design.

Before I forget, I’d also like to note that toxins and agents haven’t been covered yet because we need to design the agent system. We will revisit them soon enough.

Reconsider the questions I asked, and let me hear input, comments, and additional thoughts.


I spent a lot of time in the last few years researching all possible microbial structures and organelles I could find, and jotting down science’s best understanding of what they were evolved from.

What I learned is that microbes are surprisingly similar to macroscopic organisms in many ways. Just like a dolphin fin, horse hoof, and human hand are all evolved from the same tetrapod appendage, so too are many organelles evolved from simpler earlier iterations. For example we know very well that life started with no spines, then some organisms evolved cartilaginous notochords, then some of those evolved ossified spines with vertebrae. It’s actually almost the exact same in cells, we’re just much less familiar with cells because we talk about microbiology much less than regular biology or zoology, and cells are not visible so it’s harder to relate with them or imagine their lives. But here are some examples of the evolution of cellular structures:

Evolution of Membranes and Nuclei

For example, the best theory in science is that the first cells had single membranes (which also makes sense probabilistically that you don’t go from no membranes to two layers of a membrane). These were the gram positive bacteria. Then double membranes were evolved, these were the gram negative bacteria. Then some of these gram negative bacteria evolved fluid membrane (which enabled, or at least made much easier, the ability to engulf), which are the Archaea. At one point, an Archaeon assimilated a bacterium (because now they had fluid membranes which made engulfment much easier) and the bacterium stayed in the cell becoming the nucleus, forming the first Eukaryote.

Evolution of Cytoskeletons and Derived Structures

Cells have skeletons just like macroscopic multicellular organisms. Contrary to what surface level articles on microbiology say online (and what is even found in some textbooks), cytoskeletons are not exclusive to Eukaryotes. For a long time, we simply didn’t have the microscope technology to see prokaryotic cytoskeletons, but they do exist. Furthermore, we know that several cellular structures are evolved from the cytoskeleton. For example, flagella, pilli, fimbrae, and cilia all seem to have evolved from fibers of the cytoskeleton that grew to pass through and sprout out of the membrane. This explains why both prokaryotes and eukaryotes have evolved flagella independently, since both have cytoskeletons. Evidence also shows that at first flagella were evolved as stiff protrusions (since the cytoskeletal fibers they evolved from are mostly stiff) called fimbrae or pilli. These were used to paddle the water (like fins) or adhere to surfaces or other cells. It was only later that some cells with these fimbrae evolved them to become more flexible so that they could undulate and propel the cell more efficiently, producing the modern flagellum.

Gamplay Impact

So in fact most organelles can be designated as upgrades to earlier organelles. A double membrane can be locked behind the single membrane, and then fluid membranes and cell walls are locked behind the double membrane.

If we don’t want to have the cytoskeleton as a separate mutation the player needs to evolve, we can skip straight to a Fimbria/Pilus mutation that is available to all cells by default, that can then be evolved into a flagellum, cilia, cnidocyst, predatory pilus, etc.

As I was studying this I realized it could be best visualized in a “Tech Tree” format, so I made a comprehensive one for all microbial parts I could find for my own reference. Perhaps such a graphic could help visualize what organelles could unlock what more complex/specialized organelles?

In regards to this, I actually think that metabolosomes simply should not be viable if the environment has no oxygen. Anaerobic sources of energy should be plenty fine on their own until oxygen comes along with the GOE and aerobic energy production is evolved. They represent aerobic respiration proteins evolved by prokaryotes to harness oxygen’s energy, so I don’t think it makes sense for them to function in an anoxic environment.

I’ll be honest, though I was a proponent of protein unlocks and still am to some degree, I don’t think this is a good way for it to work. I think the problem is it feels a little gimmicky, and is very similar to the Lamarckian theory for evolution, where organisms perform an action and as a result evolve better adaptations to perform that action, like for example a giraffe stretching its neck every day to reach the leaves on the top of the tree will naturally grow a longer neck and then pass those genes down to his children. It was mentioned a few times on the old forums, like for example the player’s organism should need to jump 10 times to unlock the ability to glide, and then glide 10 times to unlock the ability to place wings, but people agreed that it felt a little too arbitrary, unrealistic in the restrictions it placed, and antithetical to the Darwinian theory for evolution. For example, a common phenomenon in evolution is that an adaptation you solve to address problem X, inadvertently later helps you solve problem Y, a process known as Exadaption. For example, a species may evolve warm-bloodedness in a cold environment to maintain their body heat, but then later in their evolutionary history it could serve to greatly benefit their capability as a predator, because they are able to use their warm-bloodedness to keep their muscles warm and functioning more efficiently than the muscles of a competing cold-blooded predator. Locking mutations behind activities would prevent a lot of Exadaption in my view.

I think that the best way to implement progression in mutations is to really understand the physiological and anatomical origins of different mutations, and learn what structures, organs, and parts needed to evolve first for later more complex structures, organs, and parts to then derive from them, like the examples I gave above with membranes or cytoskeletons. I think such a hierarchal system of parts evolving into other parts is really important to implement, since a big principle of evolution is that your past mutations determine your future destiny. Birds today still retain many of their traits that made their ancestors the dinosaurs once terrifying predators, and so it’s conceivable that if a mass extinction suddenly happened on Earth that wiped out humans and many of the other large mammals that feed on birds, some species of birds could utilize those latent traits to once again evolve into large apex predators.

EDIT: Just to not let my post get too long, really good work with the latter half of your post in trying to collate all the possible mutations into one place. I would suggest that we copy as many as we can onto the Microbe Stage Appendices spreadsheets, since it’s really hard to parse through so much text on these forums :sweat_smile:.


I should clarify that the primary purpose of my unlocking concept was to make for a smoother, less overwhelming introduction to the game by removing redundant choices the player could make until they have a use (For use as a new-player option). The secondary purpose was to lock powerful or highly complex parts behind others to create a sense of progress and… evolution. This purpose is, admittedly almost a different concept entirely.

I assume you’ve drawn your conclusion based off of the addition of proposed conditions for pili and toxins. I admit that those are not suitable, and indeed I’ve mentioned such last time the concept was brought up. The conditions I presented all that long ago should not be taken as absolute. They were merely examples I threw out to establish the concept, and nothing more.


Ah gotcha! Yeah I agree entirely in your intent. At first when I didn’t know that there was so much evolutionary history linking the different organelles together, I also didn’t know how to add a sense of progression to organelles. That was part of the reason I was really into Random Protein Unlocks back then.

With the reading I’ve done on this, it seems like we actually do have a strong scientific case for locking certain organelles behind others (which is part but not all of the reason I’m more undecided on Random Protein Unlocks now). For example, here’s a quick snapshot of the Organelle Hierarchy Tree I made for my own personal notes. I had to zoom in because past a certain distance the text in the boxes disappears. Note that I included every possible organelle described in science, so some of these are not in the game:

Green squares are mutations, with the bright green one at the bottom being a starting mutation. Circles are processes/abilities with the purple circles being starting abilities, and blue circles being unlocked with the appropriate mutations.

So you can see that with such a hierarchal unlock system, we could ensure that a lot of the mutations can only be evolved later after you’ve evolved the appropriate earlier mutations, like how the evolution of a thigh bone first requires the evolution of an ossified spine and then the evolution of a hip girdle.


In fact, we could actually add in some scientifically accurate progression right now without changing or adding any organelles. From my research, this is the evolutionary history of cellular membranes:

This would be using the existing organelles and would be 85% accurate. The only issues are that technically there should be a simple prokaryotic form of cell wall available to evolve for cells with only a single membrane (called a Peptidoglycan Cell Wall), and also the single and double membrane in their current stats don’t actually represent what single and double membranes were like until the evolution of fluidity, but again this is assuming we want to add progression immediately without touching any of the organelles.

In the future we can tweak the stats for the Single and Double Membranes to make them more realistic to what they’d be like before the evolution of fluidity.

Once we’re ready to add more organelles, we could add in some of the other types of membranes, and then we could end up with a more complete evolution of membranes in game:

Do you think we have enough potential parts to add if we want to go with a “tech” tree of sort?

I actually used to be a strong proponent of progression being found in the form of a tree, but I remember several conversations I’ve had with TJWhale flipped my perception away from them in Thrive. My thing is that, especially for the cellular stage, we would have to add so many intermediate parts that would essentially be doing the same thing to have a protein tree, and even then, I doubt we’d be much better off. It’s not like there would be a lot of replayability attached to this tree; you’d generally evolve things in the same way, and there would be only so many distinct things to evolve I feel.

I had similar thoughts about unlock conditions personally when I first read through them. But then, I thought…

  1. The prokaryotic protein parts represent the beginning of respiration on a planet, so I feel it is okay to have it be more explicitly abstract in unlocking them because they are the start,

  2. The various forms of respiration we see in bacteria appear rather spontaneously through iterative tiny and unique changes in structure that I think would be a bit of a nightmare to represent in Thrive for every metabolic strategy, and

  3. It would be difficult for us to present anything representing a cohesive and intuitive progression of unlocks connecting the various and very different forms of respiration together.

We could have something simple like spending MP to develop a protein focused on a specific compound to atleast weakly represent their evolution, but I feel that would be rather boring.

I think we should look at progression in Thrive as not being necessarily linear, but iterative. I believe it should be summed up like “we give you these tools at the current level of complexity you are at; what can you do with them?” In other words, emphasize the sandbox a bit. Then, when a player has demonstrated success at a certain level of complexity, we throw them another level: “you have succeeded with prokaryotic parts, now we’ll give you a nucleus and eukaryotic tools: prove you have what it takes again.” And so on for multicellularity, and so on for complex macroscopic features, etc. etc. I think TJWhale said something like that before and I didn’t really get it, but now I understand.

So I feel like, just for the microbe stage, it’s fine to have some rather abstract unlock conditions because it is supposed to represent the beginning of the journey. But yes, I agree we should absolutely try to stay away from similarly abstract conditions in the future stages. And good thoughts on the membrane, I’ll have to process what I read in your post later.

1 Like

I think there’s an important distinction to make between the organelle types since I think I see what you’re saying.

All of the “structural” organelles (For lack of a better name. Examples are membrane types, cytoskeleton derived structures like flagella, nuclei and their variations, etc) have clearly documented evolutionary origins from one another and can be clearly placed on a “Mutation Tree”. As such, I don’t think the activity based unlock system should apply to any of these.

From my research, it was hard to find any similar evolutionary hierarchy of the “prokaryotic protein” organelles. And by this I mean the organelles that represent unique proteins that grant unique abilities (whereas structural organelles usually don’t grant new abilities, they just modify existing stats). And as you said, there probably are some evolutionary relationships that are known that connect them, but to model these we’d have to put a lot more detail into representing Protein Evolution which is a ton of unnecessary detail we don’t want. So it seems odd that structural organelles have a whole progression tree, but prokaryotic protein organelles are all available from game-start. And as you said it’s a good theme for the game to start it simple and gradually introduce more features and mechanics.

However, I really don’t think that activity-based unlocking (like “enter a patch hotter than your old patch to unlock Thermosynthase”) fits into the theme of Thrive as an open-ended sandbox and scientific simulation, alongside the other reasons making me averse to it that I mentioned above. And in fact, ever since proposing Random Protein Unlocks two years ago, I have shifted on that position and am not totally convinced now that such a Protein Unlock feature belongs in Thrive. I think the best way to assess the situation would be to first implement the clearly scientifically understood progression of structural organelles, since at the moment we have almost no progression whatsoever. Such a system is not invented by us and is actually representative of the history of these organelles in evolution (just as the Organ Progression Tree will be in the macroscopic stages). Then once we have that in place, we can play the game and see if it still feels like the organelles are still lacking a sense of progression. In the case that we do, we can come back and look at how to add some progression to the Prokaryotic Proteins.

All in all, I agree with Nick that the prokaryotic proteins shouldn’t bee locked behind performing certain activities. Mutliple game design and realism reasons have already been mentioned, but I’ll add two more:

  • Certain unlocking conditions feel like they’ll be borderline impossible to keep track of for all AI species. Among them are:
    Predatory Pilus: Kill 5 cells OR be killed by a cell 3 times.
    Oxytoxisome: Kill 5 cells OR be killed by a cell 3 times
    Radiotrophic Protein: Consume another cell within range of a radioactive rock’s effect.
    And while in real-time gameplay it will be a pain to keep track of this, I imagine it will be even harder to integrate this into auto-evo, as auto evo doesn’t count the amount of cells eaten by singular specimens, let alone if that happens near a certain chunk like a rock.
    It feels like these just aren’t applicable to AI species and only applying such an unlock system to the player would very much be against Thrives design philosophy.
  • Other unlocking conditions feel like they’re wholly inconsequential. There is no point to evolving an organelle in a patch where it doesn’t work/isn’t needed, so there is no point in locking that organelle until a certain patch is reached.
    Among these are:
    Thylakoid: Evolve in a patch with Lux levels beyond 0%.
    Bioluminiscent Protein: Successfully reproduce in either the cave or abyss patch.
    Nitrogenase: Evolve in a patch with less than 5% ammonia.

All in all I feel like the input/output of these unlocks isn’t really worth it. We should rather focus on
-the upgrades-as-tradeoffs which sound more fun and can function just like any editor change for auto-evo, without the need of keeping track of which species has unlocked which parts
-the endosymbiosis unlocks, which will be a clear step ahead in terms of realism and which can potentially be very fun and engaging
I’m torn on having an upgrade tree for structural organelles such as pili and flagellae, so I don’t have anything productive to say about them for now. It could be a possibility at some point as there seems to be at least a bit of a scientific basis to it, but I’d consider it clearly less of a priority than upgrades-as-tradeoffs and endosymbiosis.

Fair enough. I see there’s enough gripe about the pseudo-evolutionary unlock conditions to reconsider them, but I’d like to preserve that feeling of mystery and replayability that comes with not showing every part from the beginning.

I have a potential simple compromise which I’m not sure is substantial enough to move the needle but could work. Perhaps we attach these conditions not to the unlocking of a part, but to the “discovery” of a part. You’d have to spend some MP to officially unlock whatever part you discover. This preserves replayability, but we can then atleast say you are more explicitly evolving these parts since you’re spending MP on them. We can readjust these discovery conditions, and perhaps give an option to turn them off so that they all show from the beginning.

And good point with the external parts. I still feel the problem of limited value from effort (they’d be pretty linear with such little options I feel) apply, but if there’s enough support there we can try to make it so.

I think this is a really good summary and I’m glad to see that “endosymbiosis (full)” is missing (it would be a nightmare from implementation complexity standpoint as it requires overhauling so many of the game’s systems).

One thing that hasn’t really come up at all is that will AI species also have these restrictions or can they just evolve however they want like they do currently?

I see this more of a “gameplay first” design. There was recently someone in the community who voiced an opinion that the behaviour editor should be removed, instead the player’s species should instead try to replicate the player’s behaviour. I see this as a similar design of going gameplay first instead of the editor.

Ah I see someone else also noticed the problem of AI species.

You’d be surprised how little the red name of a process and a “0” in the outputs discourages some players. I feel very strongly we need to really lock those organelles initially. In software design no matter how good and intuitive design you try to make someone will make a better idiot to beat the design. So I think that for making the new player experience better we should just lock the thylakoid until the player could actually use it.

I imagined that the unlock system would work like that, the player wouldn’t know what they haven’t unlocked yet but would be shown the unlock conditions for the “next” thing, and once they fulfil the conditions the new organelle would become available. This ties into improving the new player experience by just having a few first options to pick from with locked things being represented by a single icon to not take up a ton of space.


I think I’ve heard that one before. Yes, that’s definitely a reason to consider initially locking some organelles for the player.
Alternatively, we could try to give the player a warning popup when leaving the editor with an organelle which is wholly unfit for the current patch. Something like:
“WARNING: Your organism has the organelle [thylakoid] despite the environmental conditions in the selected patch rendering it useless. Having too many useless organelles actively hinders a species’ survival. Are you sure that you want to proceed?”
In the end, this is a question of preference. I’d personally rather err on the side of granting the player the freedom to do stupid choices and suffer the consequences, but I understand if you would rather make the game more accessible/forgiving.

If we choose to have certain procaryotic organelles be locked initially, I think we should be consistent with wether or not the locked organelles are visible.
Currently, the eukaryotic organelles are visible, but greyed out. The upside of this is that the player is motivated to evolve a nucleus so they can unlock all of these cool new organelles. The downside is the visual clutter.
If we choose to hide all locked organelles, the clutter would be reduced, but the player would have to actively read the nucleus description to know about all of the cool organelles he can unlock with the nucleus.

What I’d advise very strongly against however is having some locked organelles greyed out and some wholly invisible. That way the player would assume that the greyed out organelles are all they could ever unlock, and they’d have a very hard time realizing that there are additional invisible unlockable organelles.

1 Like

It’s better to hide things entirely because the flow of “hey, this is probably good, I’ll add it” then later only when exiting is the player told “hey, you did a bad thing, go back and fix it” That’s kind of tolerable with a single organelle, but imagine the player doing that 2 or 3 times in a row if we had so many potential options to self-sabotage. That’s why I think it’s actually the best idea to roll the unlock system into the new player onboarding process.

I addressed this already. I’m pretty sure it was even talked on the dev forums before, and one of the best designs was to show for each organelle group one item that represents the hidden items. This is the constant Thrive curse in action, things get designed multiple years before they are anywhere near being programmed by someone, so then the same discussion turns up again and again.


Well, that solves all of my concerns. And yeah, that is truly the eternal crux of Thrive. Sorry for making you repeat yourself:)

1 Like

I don’t think that was specifically my idea, just a relevant discussion I happened to remember.

1 Like

I’d say that we minimize any sort of obstructing access to parts for the AI and auto-evo. Unlocks add replayability because it offers a sort of strategic layer for players where they might want to plan their next few trips and moves in accordance to what they want to play like. Since auto-evo doesn’t have that same amount of foresight, I’d say we shouldn’t put any limitations on it. Atleast, if my understanding of how auto-evo thinks is correct.

1 Like

As MirrorMonkey said, I think as a sandbox and as a simulation game we should strive to have as few restrictions on the player as possible, and what restrictions we do have on the player and AI should be grounded in science so that we’re ensuring that the outcomes we see in the game are realistic.

But I do get the point of trying to limit player frustration because sometimes they will not do their own due diligence to see that the organelle they are about to place will not function in the biome they are living in, for example. I think the fix should be a warning pop-up though, not disabling the organelle altogether. Just have a condition that, if not met, prompts the player with a warning saying “Are you sure you want to place this organelle? It will hardly function, if at all, in your current biome, etc etc”. And then for experienced players, there could be a game option that disables all these warnings.

That only works to solve the problem of the player placing something they really shouldn’t. It doesn’t fix the new player analysis paralysis problem, which is that if at once you are shown like 10 options and then a further 15 that are grayed out, it takes a long time to even mouse over all of the options and see why they are locked. Then after that the player might need to think about each of the choices that are available to them. To solve this problem the player really needs to be given just like a max of 5 things to pick from initially. I think Pokemon shows this design in having just 3 starters, it’s much easier to pick from, when they could have designed the game to allow maybe 10 starters (one for each type) or even way more options. I think it shows good consideration in design from their part that they decided to allow just 3 options to start off with even though they don’t even cover all possible Pokemon types.

1 Like

I’d also like to add that these simple unlock conditions would help the player due to them forming associations with the action that got them the part and the part itself. So a person who reads that they got a thylakoid by going to a patch with sunlight would realize thylakoids have something to do with light, a person who reproduces and gets a bioluminescent protein in the dark patches would realize those parts would probably help them, and so on.

1 Like

Ah yeah that’s true.

To address that, I would lean more towards extending the tutorial though instead of placing arbitrary restrictions on what can be placed in the first generation. For example, the tutorial could be extended so that in the editor it guides the player to only choose a certain mutation, and then gives a quick blurb about important things to know for choosing mutations in the future.

Then a more experienced player on future run-throughs can simply disable/skip this tutorial and have more starting options on the first generation.

think there ought to be a longer tutorial, where perhaps it forces the player to make a certain mutation the first generation, and also explains the role of the other mutations available at game-start.

EDIT: Also in terms of greying out, I don’t think that all future possible mutations should be shown in the editor as greyed out. Ones that are too far in the future should just be entirely invisible, which can help reduce information overload in the first editor session. For example, I think you should only have the immediately available mutations, and then mutations that can be immediately unlocked by the placement of currently available mutations, visible (with the latter group greyed out). But any mutations that are two degrees of “unlocks” or farther should be entirely invisible (mutations that need a locked mutation to be placed before they themselves are unlocked). Then we could have a line in the tooltip of any organelle that unlocks more in the future saying “Unlocks more mutations”, so that the player knows.

This would be consistent with editors in the later stages as well, since for example if you’re designing a chariot in the Society Stage, we likely won’t want to be showing a greyed out “Anti-Aircraft Flak Cannon” part that is available 16 technologies later.

Something I’ve seen with some longer ongoing Youtube Thrive series is that older players just disable tutorials altogether even now with it not being too obtrusive, and as a result they miss the tutorials of new features, which is pretty bad.

In the microbe roadmap thread I said we could have a hand holding tutorial mode, but it should wait until 0.9 because we need to be really careful with any gameplay changes after that because the only thing worse than a really long tutorial that requires you to just mindlessly perform a bunch of actions in a row, is such a tutorial that doesn’t actually work due to gameplay changes done after the tutorial was created.