Jump to content

A save/load cycle changes the maximum temperature at which heat is exhausted for all buildings (that exhaust heat at all)


Silicium
  • Branch: Live Branch Version: Windows Pending

When trying to use the heat generated from buildings for power or other purposes there is a difference in the maximum temperature at which it can exhaust more heat to its environment and its overheat temperature.

I have found bug report that i think describes the same bug, but seems to imply that it only occurs in the liquid tepidizer (which is not true):

So therefore i hope i am not breaking any rules creating a new report about this problem. This bug occurs with every building i have tested so far and i have even found a workaround that i am using in a mod for now. If that is not against forum rules i could attach this fix as a very small Harmony Patch.

Anyways after a few days of investigating and modding, this is what i found and how i solved the problem:

The maxTemperature member of the StructureTemperaturePayload class, that is generated for the building, is lower after a save/load cycle than it was before.The overheat temperature modifiers for the construction elements of a building are not applied after a load of the game, because the OnSpawn method of the StructureTemperatureComponents class is called before the OnSpawn methods of the relevant BuildingComplete/PrimaryElement classes that apply these modifiers. When creating a building during the game the order of execution seems to be correct and the bug does not occur.

I am not completely sure what the intended mechanics are, but the building description screen does not inform the player about this lower temperature limit which makes this quite confusing when trying to harness heat generated from buildings. As i said i have written a small patch in the form of a mod as a workaround that reloads the StructureTemperatureComponent during the BuildingComplete.OnSpawn method which is a little bit inefficient, but i was unfortunately unable to find the source of the problem.


Steps to Reproduce

This issue is easily reproduced by creating a building that exhaust heat to its environment(i.e. has a non-zero value set for ExhaustKilowattsWhenActive in its Config class) and then looking at the difference in the temperature at which it stops exhausting heat to the sourrounding tiles, after just creating the building and after a save/load cyle.

  • Like 1



User Feedback


There are no comments to display.



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
  • Create New...