Environmental Tolerance polish (Microbe and Multicellular polish)

Environmental tolerances have been in the game for a long time now, and while they mostly do their job of requiring adaptation to different environments, as also mentioned in the general polish thread the experience is currently a bit on the shallow side. I believe that is still the case, even after Oxygen Resistance was reworked to limit the range of the slider (requiring use of cell parts)

And I think that’s a shame, because the core systems seem solid, and I think it can provide a lot more interesting choices with relatively small changes. So I want to see what tweaks can be made to get more value out of this system (though not everything I will mention is a small change).

Temperature and Pressure

I think there are enough dynamics here:

  • Working with a combination of a position slider and a tolerance slider
  • Penalties linearly scaling with how far they’re out of your tolerance
  • High specialization giving a bonus

But there are also still some problems:

  • With the tolerance slider on minimum (for the specialization bonus), it can be a bit finicky to place the “position slider” on the right spot. And this is not particularly necessary, because the differences between patches tend to be much larger than what the current minimum slider limits are.
    Proposal: Increase the tolerance value you can have for the bonus, and lock the tolerance slider minimum to that same minimum
    • For Pressure, the maximum tolerance you can have is 200KPa, with tolerance slider minimum locked to the same. I think this can be easily moved to 1000 or 2000, and it would still maintain the separation between “surface” and “everywhere else”. (Most microbes IRL can also grow in much wider pressure ranges than this)
    • For Temperature, the maximum tolerance you can have is 1, while the tolerance slider has minimum 0. I think both can be set to 2.
  • The only real “good” settings for the tolerance slider are “minimum” and “maximum”, everything in between is pretty pointless. From the player perspective it might as well be a checkbox, apart from the ability to make partial MP buys towards where you actually want to be.
    Proposal: Make the size of the “perfectly specialised bonus” scale linearly with how wide your tolerance is. So, when you are within your tolerance ranges, if your tolerance slider is at maximum you get 100% of the bonus, while if it’s at 50% of the maximum, you get 50% of the bonus.
    This way, every step on the tolerance slider becomes meaningful. This also makes it much easier for players to discover that this bonus exists at all.

Temperature specifically

  • With the tolerance slider maximum at 50, the actual temperature range is 100. Which is actually kind of nuts. Speaking of IRL, the widest temperature ranges I can find with measurable growth (and that’s not anywhere near "growing well) are 60. The more typical ranges are 20-30 wide. (and again, that’s not optimal growth)
    Gameplay-wise, most patches exist within a range of ~30 degrees, the vents are an extreme that doesn’t really fit in with the others if you use any reasonable width. So excluding the vents, you really don’t need more than 30.
    I’ve also had concerns with the transition to Macroscopic, where these extremely wide existing tolerances undermining any future mechanics we add there.
    Proposal: greatly reduce the maximum tolerance range for temperature. There’s some leeway here regarding which parts of the growth curve for species we would consider in/outside the “well-tolerated range”, so I would initially go for gameplay objectives: ± 15 (so a range of 30) means at maximum you can cover all the non-vent patches with one species.
  • Penalties are supposed to scale linearly with distance from the tolerated bracket, but currently this does not seem to happen for Temperature when tolerance is high. Pressure does not have this issue.
    Proposal: Figure out what’s causing that and fix it.

Pressure Specifically

  • Our current maximum pressure tolerance is 8000 kPa. Quite unlike the case with temperature, that is actually quite low compared to what’s the typical case on earth. Check out these e.coli growth curves, for example. We don’t necessarily need to stick to the exact real numbers ourselves (also keep in mind again “depth at which some growth still occurs” is not the same as “this grows well here”), but the current settings also mean that you can only have a tolerance level that simultaneously covers “surface patches + Mesopelagic” or “1 ocean layer + maybe a floor”.
    Proposal: Increase the maximum pressure tolerance. 25,000 kPa would allow you to bridge one “Mesopelagic → Bathypelagic” or “Bathypelagic → Abyssopelagic” jump without changing much for surface species.
    Realistically, you could make an argument for much more, but being able to cover the full depth of the ocean might not be what we want?
  • There’s been some discussion before about making the the tolerance range scale logarithmically with the absolute pressure (at one PR attempting to do it for the display). But after looking around, I don’t think there’s a real biological justification for it? It seems like, for life, a 1000 kPa difference is pretty much the same (not very much), whether it’s going from 1 atm to 11 atm, or 490 to 500.
  • It seems like the different penalties reach their maximum at different points? It also happens pretty quickly compared to how wide the total range is.
    Proposal: normalize the scaling between the different penalties, and scale the penalties more slowly.

Oxygen and UV

These still have one significant problem: there’s no reason to not pump these to the maximum any chance you get. There is no downside. I don’t know why it is even possible to pay MP to lower them, because nobody will ever do that! (Facetious, I know it’s a waste of effort to block that)

The nice rework of the oxygen system does not actually change that, it just limits how much value you can get out of it. You still want it maxed out always. I’ve previously made suggestions for adding some ongoing cost to them, but they have problems with it feeling too much like an unavoidable drain.

Proposal: Figure out some reason to not want these sliders maxed out always, that people don’t hate.

UV specifically

Not really making a proposal here since it’s outside of what I can do. But as previously discussed, this could receive a similar rework to oxygen rework, but this would require, at least, a new prokaryotic pigment cell part. And that would require additional work done for new unlock conditions for that and the melanosome.

4 Likes

Good ideas here.

I remember a suggestion related to ATP costs increasing with a higher oxygen slider, but my concern with that was a damned if you do, damned if you don’t situation that could be confusing to the player. “I get penalized in a very broad way for not having oxygen tolerance, but also get penalized in a similar broad way for having oxygen resistance?”

Maybe increasing the oxygen slider slightly debuffs organelles which reduce your tolerance to oxygen? Not sure how difficult that is to implement separately from the existing penalty system, but it’s something. And it serves the purpose of communicating a need to adapt your body plan to the player.

For UV: not fully sure here. Is there an argument to convert that to a ranged tolerance slider instead of a max? If an organism requires specific amounts of sunlight and it doesn’t receive it, they do tend to suffer for it (to be fair though, due to mechanisms that aren’t very present in simple microbes).


For your other suggestions, I think they sound like reasonable changes. Though to be honest, I’d probably need some sort of playtest to fully understand their implications on gameplay.

1 Like

Yeah that’s what I meant by “unavoidable drain.” Either way, being in an environment with the oxygen/UV costs you something (if not using organelles that fix it while also being beneficial overall). And I guess that is realistic, investing in a bunch of protein and DNA repair systems because oxygen/UV is ripping it to shreds does have a cost. So living on the surface is more expensive through damage or damage prevention than living on the surface. Life just suffers through it because the abundant energy from photosynthesis (directly or indirectly) is that useful.

But yeah, the problem is how it feels for the player. Maybe it’s doable if we just make the cost for the slider quite small? That way it does not hurt much, but it’s still somewhat better to dump it if you don’t need it.

I think the only similar thing I can think of is that surface dwelling animals have different levels of pigment because some of their trace metabolism needs sunlight. So, they adjust the pigmentation to balance their sunlight needs with UV damage, depending on latitude. Though that’s not really relevant when comparing life on the surface with life that sees no sun at all.

I have a proposal for UV rework:

  • limit max tolerance slider to 20%. If player start in environment with light then they have the tolerance zerod (or maybe at like 5-10%), opposite to what it is currently
  • every organism has default 100% protection to UV
  • make prokaryotic and eukaryotic chloroplast give tolerance to UV, melanosomes give huge buff
  • other organelles reduce tolerance to UV, especially the nucleus
  • cytoplasm doesn’t affect the tolerance

This way UV tolerance would play a bigger role throughout the game, especially when player wants to add the nucleus. Whenever the player adds new organelles there is a possibility that their tolerance would go below the threshold so they need to act accordingly

Hmmm, that would mean the system would not be relevant to any small species, right? I’m not sure that’s really what we’re looking for?

You do raise a very good point about starting in surface patches though! Whatever cost there is cannot be allowed to be a problem for those scenarios. (now I’m curious how this affects the IRL debate on where life started on earth)