Temperature phases (HOT/COLD/FROZEN) tweaks & fixes [SPLIT] #25166
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
SUMMARY: Bugfixes "Fixes and tweaks of values used by freezing mechanic."
Split from #24971
Resolves #24914
Partiallyresolves #25020 by activating freezer.Freezer behavior however is not fixed in this PR.EDIT: found a way to tweak freezer to freeze at expected ratios.Rationale:
After feedback from field testing and initial tweaks the conclusion was that transition between
FROZEN
(deeply )<-->FROZEN
<-->COLD
<--> normal <--HOT
stages is too fast, and needs fine-tuning.This PR introduces:
Tweaks the way how transition speed is calculated, so cooling/freezing & thawing/warming will be more realistic now.
There are 3 main adjustable variables in food temperature mechanics:
1. Max freezing/cooling time at lowest ratio: now set at 60 minutes
2. Max (capped) temperature ratio influence (how much faster can it go max) for ex. x2 = 30 min., x4 = 15 min, x5 = 10 min, now set at x4 = 15 min
3. Number of degrees per 1 ratio unit (how big difference converts to 1 unit of ratio) for ex. can be set 1:1 so 1 degree = 1 ratio unit, 5:1 means for 5 degree diff = 1 ratio unit (10 = 2 etc.) - now set to 10F per 1 ratio unit (~5.5C per ratio unit)
Difference is calculated between measured temperature and freezing point (32F, 0C) for freezing, and cooling point (37F, ~2.7C) for cooling.
HOT
food is unaffected so in normal (not cold, not freezing) temperatures it will return to 'normal' after 60 min, and if it was defrozen via aHOTPLATE
action it will cool down after 30 minutes (unless affected by cold temperatures that is - in both cases).Example:
EDIT: after some extra changes numbers blow were edited to represent current state of this PR
It works like that:
FREEZE
, and after it hitsFREEZE
ratio is 2 = 60min/2 = 30 min fromFREEZE
to (max)FREEZE
(deep freeze)COLD
)HOT
but in -10C rate of cooling is 2 so it eats upHOT
for 30m/2 = 15 min, then itsCOLD
for 20 min so, 15+20+= 35 minutes of edibility.EDIT numbers have changed because @cainiaowu convinced me in comments to get rid of that extra time in which food stays edible despite being frozen to avoid player confusion about why some frozen food is edible and some not. Also the differential for each ratio step was changed to 10F (~5.5C) per step
You can run down this numbers yourself to see how will it affect outcome in different conditions.