Rate Modifier coupled with burning/freezing temperature when using compat mod? (Ecliptic Seasons compat issue)
Nerodon opened this issue ยท 2 comments
I have been testing a new Seasons mod, Ecliptic Seasons, that just added compat for Cold Sweat and I see some really strange behaviors that the actual burning_point /freezing_point seems to be coupled with the Rate Modifier setting, which I don't think is intentional.
For example: the closer Rate Modifier is to infinity, the more closely the burning_point matches the one we expect, if you set the Rate to low values, it completely changes the effective burning_point without making any sense to me... CS debug commands shows the correct burning_point , but reality in the game is different.
Reproduction steps:
Install both Ecliptic Seasons and Cold Sweat mods only
using commands do the following to set a baseline for testing
/temperature modify @s set base 0
/temperature modify @s set world 1
/temperature modify @s set burning_point 1
/temperature modify @s set freezing_point 0
/temperature modify @s set heat_resistance 0
/temperature modify @s set heat_dampening 0
/temperature modify @s set cold_resistance 0
/temperature modify @s set cold_dampening 0
The above sets the character to burn above 1 MC unit of temperature, and freeze below 0
Now we play with world temperature manually with
/temperature modify @s set world 1.1
Notice that the player is not accumulating heat, in fact with the setting of Rate Modifier at 1.0 , the player can avoid burning up to like 6+ world temperature now!
Change the settings for Rate Modifier in the Cold Sweat mod config menu to a high number like 100
Notice the player burns even at world temp of 1.01.
I've played around and the higher the Rate Modifier is, the more close the burning_point reacts to the world temperature.
Not sure if this is an issue with the Ecliptic Seasons or Cold Sweat, but it completely breaks when using low Rate Modifier settings.
Also, just to make it clear, this issue only occurs when Cold Sweat is coupled with Ecliptic Seasons, so its an interaction with the API issue probably. The Seasons mod code is super basic and adds nothing to allude to this unintentional coupling that I can see. (I am not a contributor to that mod and have opened a ticket there as well) joe-vettek/Ecliptic-Seasons#5
Also... in any case, the debug commands themselves don't seem to show this phantom change to burning/freezing temp threshold so I imagine there must be a problem somewhere in Cold Sweat and not just the Seasons mod.
Thanks!
I think there might be a misunderstanding of how temperature works in Cold Sweat, so I'll break it down to make sure we're on the same page:
- The higher your temperature is above
burning_point
, the faster you will overheat. So if the temperature is at or slightly above the burning point, your will overheat very slowly. This could be the reason why it might appear you aren't overheating at a temperature of 1.1, since that isn't very high above the burning point you set. - The rate modifier config is a multiplier on top of whatever rate is determined by the above calculations. So a rate of 1 is normal and a rate of 0.5 is half-speed.
I wasn't able to produce any abnormal behavior from the reproduction steps you provided. In fact, the code for the compat (linked by joe-vettek) is directly based on my own code for Serene Seasons compat, which I know works.