Jump to content

A (semi-comprehensive?) list of the un-physics of ONI


Recommended Posts

Hi everyone,

I have spent some time thinking about this, the ways in which ONI does things that don't work in real life. I am aware that at the end of the day it's just a game, but considering it's the most ambitious physics simulator I know of, I wanted to make a list of the ways in which it breaks physics.

This list is not intended to get Klei to change anything, it's only for documentation purposes. If you want to contribute, please tell me what I've put in the list that is actually completely physical, or something I have missed (I have most certainly missed a bunch of stuff), etc. But don't comment to discuss the balance of this or that point in this list, because that will too often be subjective.

I've ignored everything related to dupes/critters/plants biology, because they seem to operate via *magic*. Maybe in a future post. And, without further ado:

 

Mass conservation breaking:

-Digging removes half the mass. This is inconsistent with melting (and block formation?)

-Broken items/stations destroy mass. Not anymore since Space Industry, apparently

-Water is destroyed by science stations.

-Algae is destroyed by deoxidizers/terrariums.

-Refined ore is (indirectly) destroyed by Power Control Station.

-Hydrogen is destroyed by Hydrogen generator, and without producing water.

-Coal, Natural gas, Hydrogen and Petroleum generator work without consuming Oxygen.

-Coal generator outputs way less CO2 mass than it should. Petroleum generator should output less water and almost three times more CO2.

-Rock granulator, Oil refinery output way less mass than they take.

-Geysers, vents, volcanoes etc. never exhaust.

-Rockets exhaust is based on the distance they travel in the map, potentially leading to more exhaust mass than they were fueled with (notably steam engines).

 

Density / Pressure:

-All solids, liquids and gases have the same density.

-Density is used as a stand-in for pressure. Even accounting for the different densities of each element, this is wrong for solids and liquids (often incompressible), and for gases (depends on temperature).

-Pressure differentials in gases don’t move liquids around, nor break solid tiles.

-Dirt/Sand/Snow/etc can form a perfect seal, instead of letting gas through.

-Expansion / compression of gases doesn’t change the temperature of the gas (this change depends on the gas). The steam turbine, however, simulates a similar behaviour in a single direction, leading to heat deletion.

-Pressure doesn’t change the condensation/solidification (etc) temperature of elements. Notably, liquid CO2 isn't possible at standard pressure.

-Pumps can move liquids/gases an arbitrary distance upwards.

-Perfect vacuum exists, and a simple mechanical pump can reach it.

 

Energy conservation breaking:

-Water sieves, Electrolyzers, Fertilizer synthesizer and Oil refinery have fixed-temperature outputs

-All (?) power generators have outputs at the temperature of the generator, independently of the inputs.

-Hydrogen generator produce more energy than it takes to run an electrolyzer.

-Unused electric power doesn’t get converted into heat.

-Electric and thermal power have a strange conversion between each other (W to DTU/s). I could probably add much more here, but haven't studied this in detail yet.

 

Chemistry / Element transmutation:

-Crude oil converts into petroleum when heated, instead of splitting into fractions.

-Oil partly transforms into sulfur when heated enough.

-Refining iron oxides converts the whole mass into iron, with no oxygen.

-Crushing iron oxides converts part of them into sand.

-The steel recipe includes too much carbon, and incorporates calcium (lime), which in real life is only used to draw off slag.

-Algae terrarium should take water, CO2 and light, and output O2 and more algae (but no water).

 

Different physical parameters:

-"Density" of gases/liquids (as shown by their relative position in-game) does not correspond to their density relation in real life.

-Probably more stuff about the energy content of coal/petroleum/etc (need to check). For example, 1kg of coal produces about 24MJ in real life, of which about 8MJ are electricity; in ONI, 1kg of coal only produces 0.6kJ of electricity, roughly 10,000 times less!

 

Asteroid stability:

-The parts of the asteroid that aren't visible to the player aren't simulated, masking the fact that the asteroid is not in a stable state

-Surface of the asteroid gets progressively destroyed by meteor rain (once simulated).

-Critters eventually die out if left in the wild (once simulated).

 

Miscellaneous:

-Discrete (and wide) 2D tile layout.

-Single-Element per tile.

-Unclear what polluted oxygen/water are, and why they don't mix with their "clean" version.

-No thermal radiation.

-No latent heat of phase transitions. It seems like something similar is simulated by fudging temperature of an element before/after transition, but the relevant energy is very small compared to real life.

-No spontaneous reactions outside buildings (e.g: explosions).

-Gases don't "mix" vertically in many cases (e.g. gases with same density).

-Germs don't spread outside of a narrow set of interactions. Among others, dirt doesn't support germs.

-Heat spreads faster upwards than downwards.

 

 

Let me know what you think! I may also look at the energy output of the generators to see which ones make sense.

7 minutes ago, pacovf said:

-Coal generator outputs way less CO2 mass than it should. Petroleum generator should output less water and almost three times more CO2.

I like most of your post, but the quoted part would completely destroy new players. The CO2 from Coal Gens can already be quite a hoop to jump through in early stages of the game.

I make no pretence that any of these changes would make the game better or worse; the specific point you quoted is a good example of something that has to be fudged for game balance. I am just making a list of the ways in which ONI differs from real physics. :)

I think they are supposed to represent huge reservoirs that are not directly accessible in the play area. I don't think they break physics any more than real life volcanoes break physics. I will put it in anyway, though.

1 hour ago, pacovf said:

No latent heat of phase transitions.

This is partially simulated, but not in the way it should be.

A real life example: water requires energy to bring it up to 100oC, which is a linear relationship, but at the threshold of 100oC a significant amount more energy is required to make the transition from water to steam, then the linear relationship of energy to heat resumes after that.

In ONI, a more hacked method was implemented, the programmers simply hard-coded liquids, gasses, and solids to not transition for another 2.5oC beyond the transition point. My guess is this was a fast and dirty method of getting it done, because simulating every part of thermal physics is processor intensive.

The other reason it was coded this way was because if you didn't have some buffer before allowing a transition in either direction, water that was about to boil into steam at 100oC would be toggling between water/steam while it was on that threshold.

Does the element revert in temperature after the transition? I.e, after it goes that extra 2.5C, does it go back to the transition temperature? Otherwise, there is still no transition heat, just a fudged transition temperature.

1 hour ago, pacovf said:

Electric and thermal power have a strange conversion between each other (W to DTU/s). I could probably add much more here, but haven't studied this in detail yet.

This was a recent change, all energy used to be in Watts, Joules, and Joules/s. Because of how ONI is coded, thermal energy and how it exchanges with the environment was very different to the Watts and Joules units used for electrical energy. The developers, rather than bring things back in line with actual units that make sense, decided to make up their own unit system for expressing thermal energy, now called "Duplicant Thermal Units" or whatever the heck that means.

1 minute ago, pacovf said:

Does the element revert in temperature after the transition? I.e, after it goes that extra 2.5C, does it go back to the transition temperature? Otherwise, there is still no transition heat, just a fudged transition temperature.

Nope, just fudged. I didn't say it wasn't breaking with physics, just that there was an attempt to partially simulate it.

Thanks! I hope we eventually get a realistic Physics mode or mod because a lot of these annoy me a lot. The fixed temperature output for buildings is one of my least favorite things but that had been discussed a lot. My other least favorite ONI feaute that I haven't seen discussed is how algae doesn't make any sense. What happens to all the carbon and hydrogen when deoxysizing algae? And why does the terrarium eats all the algae?

 

1 minute ago, crypticorb said:

The developers, rather than bring things back in line with actual units that make sense, decided to make up their own unit system for expressing thermal energy, now called "Duplicant Thermal Units" or whatever the heck that means.

Ohh so thats what DTU means! No wonder I just couldn't find anything when I googled that.

I too find the non-realistic physics in the game annoying, but I did like the irreverant style of the game (ie, Tepidiser). But the more I thought about it the more I realised that all the unit operations actually used in processing plants are there for a reason and an irreverent take on their existence would  even harder to produce than a proper simulation - The devs have blundered into a field that was harder than they thought, and we all bought into it.

I don't mind the game being as it is, its still a fun thermodynamically themed puzzle game, but it ain't no simulator. I think the devs realised this with the ranching update, which makes the game more like a traditional task based game like Don't Starve, the devs moving back to the field they know.

For me it doesn't make sense to list things like 2d tile basis as a critique of the game, its a 2d tile based game, how else could you do the physics ? But there are some hacks that will stop the game from being great imho.

  • Split water into into component hydrogen and oxygen, then burn hydrogen to generate power and keep oxygen for breathing - Urrgh !
  • Burning coal doesn't use oxygen either - Arrgh !
  • No basic material balance, you can get more water out of a dupe than you put in !
  • Game correctly gets heat death, but does not make thermal radiators available, to radiate heat into space.
  • Some building have a fixed output temperature, regardless of the temperature of inputs, because apparently this is what the game needs to be playable - but some buildings do the opposite, trying to give balance, but without consistency.
  • Matter can be destroyed by a door.

I guess lack of scientific rigor is the price of imaginative design  - pity, but I suspect anything else would have required a bunch of engineering professors to produce anyway.

 

 

4 minutes ago, DaveSatx said:

I have to say that when my dupes repair a building or wire, the exact amount of material used the repair is dropping to the ground afterwards. so i'm not seeing a loss?

Oh, can somebody confirm that? I had the feeling it was lost, but it’s hard to keep track of it.

1 hour ago, pacovf said:

Oh, can somebody confirm that? I had the feeling it was lost, but it’s hard to keep track of it.

I can confirm, I frequently (and accidentally) had CO2 enter my Exosuit-Dock-Pipeline (because dupes did breath near the pump before I put a filer...) and as such I had as frequently drop gold upon repairs.

  • Dirt, sand, snow etc. do not let water or gases through
  • Perfect vacuum exists
  • A simple mechanical pump can completely dry or de-gas area under it
  • Gases can't mix vertically in many cases (for example, equal density)
  • "Polluted oxygen" and "Polluted water" exist, don't mix with unpolluted ones
  • Germs don't spread outside of a narrow set of interactions
  • Dirt doesn't contain or support germs
  • Gas and liquid densities/ordering aren't strongly related to each other and to ones IRL
  • Liquid CO2 exists at "normal" pressure
  • Covered tiles aren't simulated
  • Surface of the asteroid isn't stable, will erode once uncovered
  • Steam rocket engine exists, produces hotter steam than what is put into it
  • Crude oil isn't split into fractions when heated, but cracked into gasoline
  • Oil partly transmutes into sulfur when heated enough
  • Refining iron oxides turns the oxygen in them into iron, with no loss
  • Crushing iron oxides turns some iron into sand
  • Steel has way too much carbon to be feasible and it also incorporates a lot of calcium, which IRL is only used to draw off slag
  • Steam turbines delete heat

 

"Realistic ONI" would be a much blander game. If anyone says that lack of realism in ONI is a problem, feel free to disregard all their posts until they change their opinions.

32 minutes ago, Coolthulhu said:
  • Steam rocket engine exists, produces hotter steam than what is put into it

Gosh dangit! Steam rockets *do* exist: https://en.wikipedia.org/wiki/Steam_rocket

I wish everybody wouldn't keep calling it unrealistic, especially when you're launching from a tiny asteroid.

19 hours ago, pacovf said:

all generators have fixed-temperature outputs

Generators output liquid at the temperature of the generator. I`m sure this happens for nat gas and petroleum generators. There`s even a thread about using that for cooling purposes.

19 hours ago, pacovf said:

-Broken items/stations destroy mass.

Since Space Industry repairing seems to drop the used mass back on the ground. I didn`t test it extensively but it seems that it no longer removes mass.

12 hours ago, Coolthulhu said:
  • Gases can't mix vertically in many cases (for example, equal density)
  • Germs don't spread outside of a narrow set of interactions
  • Dirt doesn't contain or support germs
  • Gas and liquid densities/ordering aren't strongly related to each other and to ones IRL
  • Covered tiles aren't simulated

Would you mind explaining these? I am not sure I understand.

12 hours ago, Coolthulhu said:
  • Crude oil isn't split into fractions when heated, but cracked into gasoline
  • Oil partly transmutes into sulfur when heated enough
  • Refining iron oxides turns the oxygen in them into iron, with no loss
  • Crushing iron oxides turns some iron into sand
  • Steel has way too much carbon to be feasible and it also incorporates a lot of calcium, which IRL is only used to draw off slag

Ok, will add these in a new category, "chemistry/element transmutation". Pretty sure there are quite a few of these.

12 hours ago, Coolthulhu said:
  • Steam turbines delete heat

I think ONI's steam turbines work more-or-less like in real life, in that they output lower pressure and lower temperature steam than they receive. The problem is that the relationship between pressure, temperature and volume of gases is not done properly in ONI, which leads to strange behaviour? To be honest, I am still a bit confused as to how a turbine-as-cooling would work IRL.

I'm adding your other points.

1 hour ago, Sasza22 said:

Generators output liquid at the temperature of the generator. I`m sure this happens for nat gas and petroleum generators. There`s even a thread about using that for cooling purposes.

Since Space Industry repairing seems to drop the used mass back on the ground. I didn`t test it extensively but it seems that it no longer removes mass.

Ok, will split the output temperature issue into two: fixed temperature output, and building temperature output. Both of them break physics, but the extra detail on the behaviour doesn't hurt.

Thanks everyone for confirming that repairing doesn't destroy mass anymore. I think one of my earlier builds a year ago came to a stop because of a stressed, destructive dupe that was deleting all the copper in my colony. :p

1 hour ago, pacovf said:

Would you mind explaining these? I am not sure I understand.

Polluted oxygen can't exchange places with oxygen above or below it. It can sometimes compress/decompress vertically, but it can never change places. The rules are a bit more complex for CO2 and hydrogen, but those two can sometimes be compressed to ear-popping densities by gases of low density.

Germs only spread on gas exchange, liquid on liquid contact, dupe interactions (ladder climbing, eating, breathing, pickup, building use), building processing germy stuff. Other interactions do not: dupes submerging in germy urine, slime being dumped into germ-less water, gas on liquid contact, walking on germy tiles, critters eating germy stuff.

IRL, soil is a big risk for tetanus infection if it gets in your wounds, salmonella (food poisoning) risk if it gets on your food, parasites etc.

IRL, lighter gases float on heavier ones and gas density is directly related to molecular density. Methane (CH4, 12+4) is lighter than oxygen (O2, 16+16) and floats above it. In ONI, there is no such rule. This is even more noticeable with liquids, where crude oil (870kg/tile) is "heavier" than water (1000kg/tile).

ONI has an "optimization" where tiles you haven't seen aren't included in simulation calculations. This masks the fact that the ONI world is not in a stable state - if you left the entire map uncovered for very long, all critters would die out, map would be eroded by meteors etc.

1 hour ago, pacovf said:

I think ONI's steam turbines work more-or-less like in real life, in that they output lower pressure and lower temperature steam than they receive. The problem is that the relationship between pressure, temperature and volume of gases is not done properly in ONI, which leads to strange behaviour? To be honest, I am still a bit confused as to how a turbine-as-cooling would work IRL.

IThe steam does cool as it expands, but ONI lacks such a mechanic outside steam turbine.

Absence of gas thermodynamics outside of that one building means that recompressing the steam back will not recover the temperature deleted by expanding it through the turbine. You can use a pair of pumps to continually re-feed same steam through the turbine and it will cool on every pass.

On 11/9/2018 at 3:17 PM, pacovf said:

Does the element revert in temperature after the transition? I.e, after it goes that extra 2.5C, does it go back to the transition temperature? Otherwise, there is still no transition heat, just a fudged transition temperature.

If you bring water to exactly the point where it transitions from water to steam in ONI, the steam comes out at 100c while the water is 102c -- but the steam has such a difference in density from the water that it quickly warms to 102c.  I haven't yet set up an experiment where I could test the condensation back to water, but I believe it works similarly: Steam must be cooled below 100c, and when it condenses the water is 100c.  The big problem I've had with setting up an experiment is getting it right to that transition point without affecting the resulting condensed water.

47 minutes ago, SakuraKoi said:

 

(heated gas rises)

That's because in the real world, hotter gas is less dense than cool gas.  As already stated, ONI doesn't simulate density.   In ONI, heat tends to disperse independently of the medium that holds it.  So you can paint two lairs of oxygen at different temperatures and the heat energy will homogenize, but the oxygen won't actually change places like it would in the real world.

The heat physics in ONI is also somewhat odd.  Hot trends up and cold  trends down, so if you're heating something its much easier if you put the heating element at the bottom than at the top -- especially in gases.  This might be ONI's 'dirty hack' to simulate that hot air rises.

On 9.11.2018 at 10:03 PM, pacovf said:

Mass conservation breaking:

  • Rockets emitting Steam/CO2 based on the distance they travel on the map. This can result into rockets generating more mass than they were fueled with (in particular steam engines)

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

×
  • Create New...