Jump to content

Recommended Posts

  

1 hour ago, mathmanican said:

What I'm hearing is that the game could use a fresh relook on conservation laws. It would be really nice to satisfy those.  I also hear others say they would like a fresh pass on gravity, or conduction, or "insert favorite law". An ideal gas law implemented in the game would be awesome.

I don't think that conservation laws for ONI are the same thing as implementing or being concerned with specific derivatives like ideal gas law or effective gravity.

The thing is that ONI has conservation laws whether they were deliberately installed or not. This problem as I have stated in my gas deletion threads is the result of what the sim is conserving with total rigidity. That set of perfectly rigid set of conservation laws is what makes the super coolant ultra high pressure exponential duplication machine work; if the space time wasn't isochoric in the way that it is then that machine would explode long before it got to the point demonstrated in the above video.

The specific set of conservation laws which are upheld include some number of properties which should not be held as invariant and the consequences of doing so should be allowed in the game mechanics. Suppressing that artificially just produces *families of bugs*.

The three laws of the thermodynamics are functionally an axiomatic set forming something like a programmatic basis for a space. The conservation laws implicit in the first law give rise to all the invariant behaviors of the thermodynamic system.

ONI has laws like this. It has an axiomatic basis, but I guarantee you that it is far more than three laws. The space that it produces is far more complicated than it needs to be. And I can guarantee you that the axiomatic basis of ONI is not consistent; if it were then the game wouldn't crash or lock up in the many ways that it does or have so many of the side-effects that we regularly catalogue and exploit and watch get patched up months or years later. The rules that ONI has at its root are fundamentally in conflict and will continue to be so until and unless those rules are revised such that the contradictory premise(s) is/are thrown out.

The first law of thermodynamics is a theoretical refection in physical laws of the meta-mathematical law of identity. In logical theory and at the base of programmatic theory, the law of identity is one of three of the classical laws that is necessary for a consistent system. ALL classical logical systems and ALL consistent and halting programs have these laws at their root; they all implement them strictly. Law of identity, law of non-contradiction, and law of excluded middle. Greedy programs need additional structures to functionally operate like the rule of exchange, the rule of weakening (an unphysical deletion rule), and the rule of contraction (an unphysical creation rule); resource aware programs specifically exclude one or both of weakening or contraction.

In all the systems and theories and languages that I have studied (paraconsistent and consistent) they all agree on one and only one rule. Law of identity or equivalently the rule of assumption or Tarksi's T Schema or the metalingustic property of reflection. Disagreeing with this particular rule or law or axiom or scheme or outright trying to exclude it predictably results in inconsistent systems.

In thermodynamic theories, we can talk sensibly about the classification of impossible machines that result from the absence or non-strict enforcement of the three laws in the basis of thermodynamics. The class of impossible thermodynamic engines essentially corresponds to classes of machines which are fundamentally inconsistent with possible machines like a Carnot engine or a Turing machine. And the corresponding relevant concept of possible machines in computer engineering is programmatic correctness.

In so far as ONI is trying to approximate a representation of thermodynamics, it is relevant that it lacks conservation of the specific properties that would be necessary to secure it systematic consistency and programmatic correctness. Again, not doing this and playing like its no big deal creates more work and problems than it resolves. It also creates situations like this one which represent sets of conditions which can not be consistently resolved without abandoning a basic mechanic that is premised in the configuration of the situation. I hammer on this because it is a classic impossibility condition. The existence of this one example implies the existence of many others because the same set of premises has multiple consequences and many derived conditions that will similarly be inconsistent. Swatting the symptoms doesn't fix the root cause. At best it results in the proliferation of ad-hoc mechanics that each addition has a significant chance of introducing further inconsistency and instability to the sim.

I mean congrats to the game dev team on playing years of programmatic jenga.

Link to comment
Share on other sites

I support the simulation revolution movement and love the passionate coined phrases "...produces a families of bugs" and "...programmatic jenga" ! :rolleyes:

Is there some kind of compiled written list of all the current simulation bugs available ? If all the bugs would be cut together in one utube video, then Klei and gamers would understand better and have a compiled list :p

Link to comment
Share on other sites

While i agree with you pretty much completely here, it seems like your argument misses one of the important objectives of ONI: that it creates a fun game for its target player audience. From what i have observed the mechanics depend as much on creating a rather precise and steady progression through the different stages and problems that occur in the game as they do on approximating a physical simulation. The amount of water used to create oxygen and food is designed so that you the player have to find more water at a certain rate. The rate of carbon dioxide production is designed so that your base will start to fill up with it at a certain point in the progression of the game. Thermal output of buildings and processes is designed so that your base will start to overheat at a certain (significantly later) point. The current system of programmatic jenga as you put it is certainly not the most elegant or effective for preventing bugs and severe violations of the basic laws of physics. It does however allow pretty much arbitrary tweaking and twisting of the game systems to make an effective "game" for the intended target audience, of which i assume physicists and mathematicians are, while important, ultimately a minority.

So i think the question should not be whether it would be simpler to enforce strict conservation laws in the sim (i believe it would), but rather whether this could be done while retaining the ability to encourage a steady progression through game systems and stages as currently exists.

If i recall correctly thermal energy was originally represented using physical units, but at some point this was changed to the absract "DTU" to hide the fact that basic heating and cooling systems violated conservation of energy to quite an extreme degree. Since then there has been a rather steady progression towards more realistic thermodynamics (the water sieve now transferring input temperature to its output, and aquatuners now producing heat energy equal to that removed are two examples i can think of), but the liquid tepidizer stubbornly outputs frankly ridiculous amounts of heat for the amount of power input. This would be easily exploitable, but has been artifically limited by a "target temperature" so that it can be used effectively in the game to fulfil its intended purpose (heating liquid as a solution for too-cold water reservoirs or germ removal) at its intended time (when these problems first start to occur) and with its intended rapidity (quickly enough that it will resolve the situation before complete colony breakdown), but not easily exploited to create an impossible machine.

Personally i would greatly prefer that the sim strictly conserved both energy and mass. However i don't know if this could be effected without completely redesigning the game from the ground up, and i'm not sure at all that it could be done while retaining the game's charm to a non-simulationist audience.

Link to comment
Share on other sites

10 hours ago, Yobbo said:

The current system of programmatic jenga as you put it is certainly not the most elegant or effective for preventing bugs and severe violations of the basic laws of physics. It does however allow pretty much arbitrary tweaking and twisting of the game systems to make an effective "game" for the intended target audience, of which i assume physicists and mathematicians are, while important, ultimately a minority.

1) implementation of conservation laws for fundamental quantities like mass-energy to ONI is not mutually exclusive to all the other balance and game play considerations you mention. In most of the system, there is already partial implementation of conservation laws of this type and they are essential to you having the water at the rates that you need them for as long as you need them to get to the point that you can progress; when the conservation laws have failed in bulk in the past almost all of those instances were identified as game breaking bugs and patched away.

2) This post arises because there are something like a dozen identified situations that regularly occur within the simulation which result in the devs having to make a choice about something happening that is otherwise counter-intuitive and which tends to result in the deletion of quantities out of necessities that are not fundamentally concerned with game balance or play but are the result of a limitation of the way that the ONI spacetime is implemented in the sim.

These restrictions actually are very much contrary to your assertion that "allowed pretty much arbitrary tweaking and twisting of the game..." They are fundamentally ingrained by the way the whole grid/cell/particle system is processed and would require a complete revision to the mapping system to alleviate.

3) I am speaking with the benefit of a specific kind of education and an experience of playing the game and testing edge cases going back to the Expressive Upgrade at least, but I am no less a player. That a minority of the players notice or understand an issue does not mean that the issue does not exist or does not impact the majority, and dismissing arguments on the basis of majority/minority is problematic.

10 hours ago, Yobbo said:

So i think the question should not be whether it would be simpler to enforce strict conservation laws in the sim (i believe it would), but rather whether this could be done while retaining the ability to encourage a steady progression through game systems and stages as currently exists.

As someone who deliberately goes around trying out physics sims and testing them as a game designer, play tester, theoretical physicist, and a computer theoretician, I would say that yes we can enforce strict conservation laws in sims AND we can have fun progression based game play like what ONI intends with its design; the progression of these kinds of games is inherent in the combination of the physics sim and the construction toys particularly when we bring people/dupes into the sim. Again these things are not at all mutually exclusive and the game already depends on at least partial enforcement of conservation laws to work at all. The primary issue for ONI right now is that it conserves some quantities (volume/area) that it shouldn't which results in a bunch of cases where it fails to conserve quantities that it should (mass-energy or matter-type).

This by the way isn't a problem that is exclusive or even particularly special to ONI. Most of the physics sims suffer this problem because of the way that programmers historically and presently conceptualize spaces and the valid transformations of those spaces.

Space Engineers conceptualizes things in terms of very static Euclidean cubes for their voxel universe; their structures try to implement something like Newtonian physics and in many ways are very successful, but they are afflicted by the notorious Clang/Klang. Many of the game breaking bugs in Space Engineers are actually examples of the failures of Newtonian physics and Euclidean spaces that motivated the development of their replacements; implementing them in a computer program straightforwardly doesn't get rid of the flaws that were inherent in them in the first place.

The Ishimura here explodes violently when a single block is added in a certain spot because the whole structure gets its position recalculated in an instant of time. The more change there is to a mass over a given distance in a time approaching 0 the larger the energy of the reaction. The dynamic parts of the structure make this all worse because they react to changes to their position by changing their position to compensate resulting in a harmonic resonance cascade that blows the whole thing apart.

10 hours ago, Yobbo said:

If i recall correctly thermal energy was originally represented using physical units, but at some point this was changed to the absract "DTU" to hide the fact that basic heating and cooling systems violated conservation of energy to quite an extreme degree.

My sense of the change is that people got confused about watts being used for talking about electrical power vs watts being used for talking about thermal power. DTUs are meant to reflect something like BTUs and are functionally equivalent for all intents and purposes to Joules. ONI uses something roughly equivalent to the SI units and for the most part faithfully reproduces something sufficiently suggestive of thermodynamics for the purposes of play.

And while the justification may have been hiding the violations of conservation of energy that was in fact very rampant early on in the game, the history of patchnotes will show rather concretely that Klei has been tracking down with the help of players the violations to conservation of energy and patching them more and more over time. Most of the thermal exploits for deleting heat or generating heat or creating large/abrupt differences have been eliminated as players and devs have worked out solutions that satisfy the complex constraints for game development and game play. This is why many buildings no longer output at constant temperatures and either input and output at equivalent temperature or output with non-constant temperatures bounded by inequality (a few choice one still do because of agreements between devs and players given the current state of the sim).

10 hours ago, Yobbo said:

However i don't know if this could be effected without completely redesigning the game from the ground up

To do it strictly to an arbitrary precision that it is absolutely true, but we're really not talking about making something that has to run on a super computer, so most of our discussions about conservation of fundamental quantities don't come down to being absolutely strict about things. The closer that ONI gets to a strict and consistent implementation without becoming intractable to the average computer or crossing into non-computability the better the sim is in general; it brings stability, performance, and game play gains.

The point I am intending to make is that when players bring up "conservation of fundamental quantities" as a reason that something is a bug it should not be silenced or shouted down and retorts of "we don't care about conservation of fundamental quantities" or "that's a nerd concern" or "we/the-devs are comfortable with non-conservation" are counter to constructive criticism and collective problem solving. Citing conservation violations is a short hand way of saying that something very important and basic to the operation of the sim is being threatened which will generally have knock on effects that may not be obvious from the first citation but at the least is something that caution and attention should be the response. Players bring this up because they care about the game and perceive something that either is a missed opportunity for game play or which will produce problems for players even if those players don't know why they are having the problems they do.

10 hours ago, Yobbo said:

i'm not sure at all that it could be done while retaining the game's charm to a non-simulationist audience.

The game's charm has been retained throughout its lifetime of these discussions and changes. As the ONI sim has gotten better and better at balancing the conservation with the build up of heat in the sim, the game has gotten better in general. Whether you're a simulationist, a narrativist, or a gamist.

Link to comment
Share on other sites

I'm a little out of my league on this (I'm a little rusty on physics and the exploity stuff gets crazy), but I would like to note in regards to the "gameplay trumps realism" argument that there's at least a few cases where ONI's strange mechanics actually create a gameplay problem from being unrealistic.
A big one is that digging tiles halves mass, which creates heat deletion exploits while also making it take an extra reasoning step to figure out how much you get out of an area, and makes for some stupidity with how much of vital resources you get (uranium has this really badly with Spaced Out). Another, very similar thing is critters normally only excreting half the mass they ingest, which again creates heat deletion exploits, and hinders getting vital resources.
Critters however also have a mechanic that I think is more what is talked of here, in that they reset their temperatures, creating even weirder heat deletion exploits and leading to ranching being able to inadvertently make the game easier or harder in a very hard-to-notice way for the average player (this is an especially bad problem with Dreckos, which tend to stifle the food source you want for them to become glossy dreckos, and mess with the rust biomes they can inhabit).

ONI clearly has cases where it would be better off if its simulation followed a bit more closely our own universe's rules rather than its.
As to my preferences on the matter, I think it should be obvious that my main issues with ONI are related to losing mass. I totally get producing mass or energy from nowhere as part of making heat and garbage actual issues the player must face, but losing mass is generally frustrating and bad for gameplay because it diminishes the heat issue, creates exploity ways to trivialize the heat issue entirely, and ruins a lot of really interesting systems relating to critters. A lot of processes in ONI have mass as input and output, but change it too much between the two.

Link to comment
Share on other sites

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...