An iron thread

Get it? Because it’s a thread about iron, but you also have threads literally made of… never mind.

What I want to discuss here is Thrive’s iron oxidation metabolism. A very real source of energy, represented in Thrive by the Rusticyanin protein and the Ferroplast organelle. We’ll discuss how this energy source works in Thrive, and how well this corresponds to (our scientific understanding of) reality.

Skip to the end for a summary of recommendations and suggestions.


The organelles

To start with, while “Rusticyanin” might sound like a video game designer came up with it, it’s a real thing, and is strongly involved in exactly what Thrive uses it for. Meanwhile the “Ferroplast” is, hilariously, a real company that sells pipes. In all seriousness, the ferroplast is a very reasonable hypothetical organelle made of an iron oxidising bacterium, or similar. It’s good speculative evolution, I only wonder if it shouldn’t be disabled by the LAWK switch, since I’m not aware of any eukaryote having such a structure.

So far, mostly good!


The chemistry

Ah, my own field of expertise. First let’s look at Thrive again, straight from the hypothetical horse-equivalent’s mouth:


I won’t discuss the Ferroplast separately from here since it’s the same process. In chemical reaction notation, I’ll write that down as:
Iron + CO2 → ATP
It should also be noted that unlike some other compounds, iron only spawns as chunks, not as clouds directly.

Let’s now look at the real world. Wikipedia has a nice page, but here’s also a (freely available!) review paper.

The first thing to note is that “iron” is not just iron. Iron in nature primarily exists in two forms: ferrous/Fe(2+)/Fe(III) and ferric/Fe(3+)/Fe(III). Your favourite metallic iron spork is plain Fe, but not directly relevant here. While Fe(II) dissolves in water relatively well, Fe(III) would very much like not to be dissolved in water. Fe(III) therefore rapidly forms minerals (rocks) that we know as rust or iron ore. Iron oxidising bacteria turn Fe(II) into Fe(III) to gain energy. Thrive’s “Iron” is thus Fe(II).

Since our Thrive organisms are actually converting soluble Fe(II) into insoluble Fe(III), you might then argue that instead of going after iron chunks, we should be going after plain iron clouds and poop rocks. Personally I think what Thrive does here is fine. Fe(II) solubility is still not great, so it is reasonable to show some Fe(II) minerals slowly dissolving, or even some lost metallic Fe reacting with the water to form Fe(II). You could equally expect to see a bunch of spawned Iron compound clouds though. Meanwhile, waste product Fe(III) rocks are not further used by Thrive, so would be a pointless addition.

There is also not just one way to do this. As it turns out, there are more or less 4 categories recognised. With somewhat simplified reactions, I will list them here:


Aerobic iron oxidation:
Using oxygen to oxidise Fe(II) for direct energy:

Fe(II) + O2 + H → Fe(III) + H2O + ATP
Or, in Thrive terms and leaving out everything Thrive does not simulate:
Iron + Oxygen → ATP


Anaerobic iron oxidation:
Oxidising Fe(II) for direct energy using something that’s not oxygen:

Fe(II) + NO3 + H2O → Fe(III) + NO2 + H + ATP
Or:
Iron → ATP

I just showed nitrate as an example here, but there are actually a ton of options.


Iron-based chemolithoautotrophy (or chemosynthesis)
Using oxygen to oxidise Fe(II), in order to produce biomass from CO2:

Fe(II) + O2 + CO2 + H2O → [CH2O] + H + H2O
Or:
Iron + Oxygen + CO2 → Glucose

For complicated chemistry reasons, this one only really works in very acidic water. But Thrive does not model acidity anyway, so who cares!


Photoferrotrophy
Using light to oxidise Fe(II), in order to produce biomass from CO2:

Fe(II) + HCO3 + H2O + light → [CH2O] + H
Or:
Iron + CO2 + light → Glucose

Basically an alternative form of photosynthesis that does not produce oxygen.


Have you spotted the problem yet? Thrive’s current Iron consuming organelles don’t match any of these! The anaerobic (without oxygen) ATP production comes perhaps the closest, but the only reason to add CO2 as a requirement would be if it was producing glucose!


The description

One more quick point here on the description of the organelles:


afbeelding
As I mentioned a few times above, converting Fe(II) into Fe(III) for energy is called iron oxidation. Iron respiration is, in a way, the opposite: using Fe(III) instead of for example oxygen to oxidise something else. Thrive obviously does not include this type of reaction, but that does not mean respiration and oxidation are interchangeable words.

In addition, the “process” is named “Iron Chemolithoautotrophy”. As can be seen in my overview of the chemistry, this is also inaccurate. You can only speak of autotrophy when an organism makes organic compounds (glucose) out of non-organic carbon (CO2). Since no glucose is produced, a different name should be used.


Beta/experimental features: Siderophores

So, many players are probably not aware of this but by turning on “experimental features” you can enable a prototype for a proposed alteration to how iron consumption works.

In the new mechanics, rusticyanin lets you build up a compound (apparently planned to be named siderophores), that can be shot out of your cell to break small iron chunks off of large Iron chunks. If implemented, large iron chunks would probably give off iron compound clouds less quickly or not at all.

Now let’s take a look at reality. Siderophores are real, and they do help organisms absorb iron from insoluble chunks. However, as I stated earlier in this post, not all iron is the same. Siderophores are not used to aid in energy production, they are used to break down Fe(III)-based minerals (Ferric) so that the iron can be used as nutrients (like phosphate and ammonia in Thrive). So, obviously the name is wrong.

But more importantly the concept is unfortunately wrong. Like I said before, unlike Fe(III) minerals, Fe(II) (ferrous) minerals dissolve well enough in water. So the Fe(II) that iron-oxidising bacteria need dissolves out of rocks in sufficient numbers on its own, making a game design where this is a specific problem that must be overcome is misleading.

From a pure scientific accuracy point of view: this change would make the game less accurate.


Recommendations

My perspective here is purely to give recommendations based on scientific accuracy, I am not much of a game developer or programmer. I did try to construct my more firm recommendations in a way that seems like the least work.

Recommendations

  • Remove CO2 scaling from rusticyanin and ferroplasts.
  • Limit ferroplasts to non-LAWK. Edit: apparently currently a mechanical limitation?
  • Rename the process of these organelles from “Iron Chemolithoautotrophy” to simply “iron oxidation”.
  • Correct the description of these organelles to replace “iron respiration” with “iron oxidation”

Suggestions
Fun to have, but not at all necessary/something a volunteer could pick up if interested someday:

  • An organelle/modification of the existing organelles to switch to oxygen-dependent iron oxidation, with higher efficiency.
  • An organelle/modification to perform actual chemolithoautotrophy, requiring iron, oxygen and CO2 to produce glucose.
  • An organelle/modification for photoferrotrophy, requiring iron, light and CO2 to produce glucose.

Things that would be accurate but are probably a bad idea

  • let iron oxidising bacteria poop rocks.
  • Add a way for cells to use rocks instead of oxygen.

And if you actually made it this far, thanks for reading!

5 Likes

Apparently coding endosymbiosis feature to ignore ferroplasts when you’re on lawk would be too much pain to code in so ferroplasts are currently de jure lawk organelle (and de facto not).

4 Likes

This is a technical limitation of the endosymbiosis unlocks system. The system doesn’t support having an organelle where only the eukaryotic variant is non-LAWK. So this just has to stay like this until someone cares enough to program support for this rare situation.

Yep

It’s not painful, it’s most likely a pretty easy change to make but we have like 700+ open programming tasks so anyone having any time whatsoever to program can pick something else to work on.

This is the equation the in-game process is modelled after. However due to worlds starting with 0 oxygen now, that would ruin basically one of the few gameplay styles until oxygen arrives. So oxygen requirement was dropped. I asked a theorist about this and this was deemed like a reasonable compromise as there are iron processes that don’t require oxygen.

This is easy enough if someone wants to do it.

I have like 20 new items on my immediate TODO list thanks to the last release, Godot 4.4 upgrade, and recent let’s plays that caused quite many game tweak ideas to make the game more approachable (+ almost entirely reworked tutorial).

3 Likes

Very amazing paper, due to the current development stat( it’s hard to make them into the real game) anyway you have spotted really good equations, I as well thought of the same problem and even thought of the visuals differences/availability of each compounds, but it get quite complicated very fast like true Fe(3+) is only stable in very low pH<=2 and so for the Fe(2+) , pH<=7.5 moreover the Fe(3+) needs oxygen to exist in the first place and in low oxygen environments fe(2+) is more abundant than fe(3+)
From another point of vue fe(2+) is greenish while Fe(3+) is reddish and to be quite accurate in the first stage of the game we will have green clouds of Fe(2+) more than red chunks of fe(OH)3 and red clouds of Fe(3+) moreover the water pH is around 7 allowing for the Fe(2+) to dissolve into wate.

4 Likes

This is a general problem when trying to make an “accurate” evolution game: some things need to be simplified, for else they become too complex and would take too much time to reasonably put them into the game.

1 Like

With respect to the theorists on the team, I really cannot comprehend how anyone aware of the chemistry could come to the conclusion this was the best option. Again, the CO2 is there, explicitly and only as part of the reactions to make glucose. Since the decision was made to have rusticyanin produce only ATP, the obvious decision would have been to ditch CO2 from the process (which is equivalent to simply picking as inspiration the non-autotrophic reaction Iron → ATP). That would not even have been a compromise decision, just a perfect fit.

I understand what you’re saying is just what the result was when you asked a professional. I just can’t agree with their conclusion here.

Technically Fe(III) can exist fine enough without oxygen, just look at some of those non-aerobic reactions. You’re right about the effects of pH on the solubility and equilibria. Though I think that’s indeed a level more complex than Thrive wants or needs to go.

I agree with your principle, but I don’t think it applies to my observations here?

Removing the CO2 dependence would make the game less complex and more accurate.
Meanwhile, implementing the “siderophore” system would make the game more complex and less accurate.

Simplifying things does not inherently make them less accurate. The chemistry and biology we teach in high school is often a more complex treatment of topics in middle school. That does not mean what we teach in middle school is wrong.

So this is not really the result of an inevitable conflict between simplicity and accuracy. Neither would getting it closer to reality have been more difficult to implement in this case, so there was no benefit to it. It’s just an understandable accidental oversight.

2 Likes

I know. I was talking about how the iron stuff is like in-game. I’d say it holds quite the many ThriveSins (if anyone remembers what these were) out of all Thrive has currently.

It’s fine by me if someone wants to fix the mess in the game, but I will not accept any half-baked change that destroys either the game balance or early game build variability.

3 Likes

Yup, it can exists that’s assuming you are in a very low pH (probably around 2-5) but existing is not the point as it’s completely négligeable compared to Fe(2+) any way this complex and it’s more than anything just for the first stage of the game ! Maybe one day I’ll try implementing these, with a more complex system but the me in the present could not even if he wants , that being said pH, concentration based absorption of ressources ( cloud based is far from accurate) and many other things for know let’s try to get things going,

3 Likes

Acidity has a good chance to end up in the game, and with it maybe some iron metabolism changes could arise…

2 Likes

Oh, you were talking about actual dissolved Fe(3+)! Sorry, I was thinking of Fe(III) in mineral form as well. Then you’re absolutely correct yes, unless the pH is extremely low, Fe(3+) will absolutely grab the nearest negative ion and fall out of solution. Unless you have something like siderophores to keep them stable!

Really? I figured acidity was something that did not make it to the roadmap to keep development manageable, favouring pressure and temperature instead.

2 Likes

Acidity is not on the road to 1.0.0, however, enough things use acidity (fens and bogs, pollution acidifying the ocean, etc.) that even though it will likely be awhile, it will probably come eventually.

2 Likes

I mean it will probably only be added in a later stage, perhaps alongside salinity (for when freshwater patches are added)

5 Likes

You’re quite right about this. Iron reduction is the opposite of iron oxidation. Both this and the process name should be changed.

The siderophore system is about changing iron metabolism to require feeding primarily on chunks of solid iron minerals, rather than clouds. It requires releasing an agent (the siderophore) to break a small, engulfable chunk of iron rock off of a much larger chunk. In this system, iron clouds would be either reduced or entirely removed. It doesn’t affect the processing of iron at all, just how it is obtained.

Siderophores are used IRL to break down hard-to-access iron sources by solubilising Fe(III). The siderophores in game do break down iron chunks for digestion, so the name is appropriate. Microbes which release siderophores also absorb the product through their membranes - though it’s a single molecule rather than a solid chunk. So, in game terms, I think this is all fine. The realism problem is that siderophores solubilise only Fe(III), which would need to be reduced to Fe(II).

Iron-reducing bacteria can perform anaerobic respiration with iron oxides, reducing Fe(III) oxide (plus hydrogen) to Fe(II) oxide (plus water). In game, this would come out as: Iron → ATP. The products can be solid or liquid.
https://www.sciencedirect.com/topics/earth-and-planetary-sciences/iron-reducing-bacterium
https://www.nature.com/articles/nrmicro1490
This isn’t the process that rusticyanin goes through, however, as it is an iron oxidiser. The anaerobic iron oxidation reaction mentioned in OP makes sense, and having the in-game reaction stay as is but without the CO2 usage or scaling would solve the issue. As for the siderophores, it is the case that almost all iron-oxidising bacteria use them anyway, and they manage to reduce the Fe(III) for use in oxidation, using enzymes and such.
https://www.jbc.org/article/S0021-9258(18)88053-X/fulltext

5 Likes

By the way, do eukaryotes with ferroplasts also have the siderophore ability in the experimental mode?

Ferroplasts get them, too. The current version really needs balancing, though. It doesn’t provide enough energy.

1 Like

I can assume the feature was upgraded to be a proper agent now, correct? Since last time I checked it out, it consumed nothing to shoot a sidero-bullet.

Right, so I started with the assertion that since the organelle is rusticyanin, the environmental Iron simply has to be Fe(II), and therefore using siderophores to solubilise it makes no sense. On top of which, iron oxidising “bacteria” having to put in extra effort to dissolve Fe(II) is not a realistic challenge from my understanding, since the solids at most exist in equilibrium with dissolved Fe(II).

Hmmm, I do feel like there should be consistency in what “iron” means, even if the name is simplified. From rusticyanin, Thrive decides that Fe(II) = iron. If also Fe(III) = iron, rusticyanin would be both consuming and producing iron. That would practically be doing something similar to treating both glucose and CO2 as “carbon”.

So in that case that would in my opinion hilariously be more accurately be rendered as: nothing → Iron + ATP. But more likely I would just never create a process for which Thrive models the electron acceptor without the electron donor, because you could pull the same trick with oxygen, sulfate, nitrate, etc. instead of Fe (III). For example I could also write aerobic hydrogen oxidation by bacteria as: Oxygen → ATP.

I can believe that iron oxidising bacteria could have them, but I still haven’t found direct statement of that, including from those papers. Other than the fact that many iron-oxidising bacteria are also iron-reducing bacteria under different circumstances, and therefore would need siderophores to obtain Fe(III) for growth. (I’ve actually read that siderophores apparently aren’t needed to use Fe(III) for respiration, so they might only be relevant for nutrients)

Look at the cute little buggers, they completely flip around their metabolism based on what is energetically favorable at the time:

But if I understand what you mean correctly here, I do have to caution you: they are surely not reducing the Fe (III) to Fe (II) “for use in oxidation”. That would just be flipping Fe(III) to Fe(II) and back. That would be energetically not productive unless the situation changes in between.

Like I said before, if they’re reducing Fe (III) into Fe (II) that is as a consequence of using the Fe (III) to oxidise something else (like sulphur in the image above) and/or because they need the Fe(II) as a component in proteins (like in our blood!).

But I agree with your conclusions, this would solve any accuracy/realism issue here.

Actually, as of this update, no. There was no bar at least. Though I couldn’t fire continuously, there is a cooldown.

2 Likes

Hmm. So I guess the “siderophore agent” is yet to be implemented. Also, will siderophore be always included with a rusticyanin/ferroplast organelle or will you for instance be able to make an organelle specialized for making sidero-agent?

1 Like

There was consideration of having one part that makes siderophores and metabolises solid iron into liquid, and another that metabolises dissolved iron into solids. But the current idea is just to have iron organelles function as they are, and also produce siderophores.

I think some resources being used to make the siderophore would be important, and would slightly emphasise something that was discovered in studying this: siderophore producers sacrifice resources without necessarily getting anything back. Other cells can get the iron, rather than the ones that make it available. This last part can also be seen even in the current implementation in game.

I don’t know all the details, but the point is that iron-oxidising bacteria do also reduce iron, which makes it available for use in oxidising - though maybe a long way off. I did a deep dive on this, then lost most of my notes, but either way I kept hitting these scientific roadblocks. Still, on a positive note, I think we’ve agreed on some changes that would benefit the game. And updating the list of Thrive’s scientific sins would make it a bit easier to see what could be made more accurate in future.

1 Like