← Zurück zur Anfrage
RI-02 Namespace: Verse

TickManager & Game-Loop

Temperatur-Abhängigkeit: MapTemperatureTick läuft in Schritt 16 alle 120 Ticks

Temperatur → Tick Verbindung
MapTemperatureTick() wird in MapPostTick() (Schritt 16 von DoSingleTick) aufgerufen. Intern läuft es nur alle 120 Ticks (Offset 7) — nicht jeden Tick.
#1 DoSingleTick — Wo Temperatur läuft Verse/TickManager.cs:357-499

MP-Kritisch — 22 Schritte in fester Reihenfolge. Temperatur-relevant:

#SchrittTemperatur-Bezug
4tickListNormal.Tick()Heater/Cooler/Vent ticken hier (Building_Heater, Building_Cooler)
5tickListRare.Tick()Türen: EqualizeTemperaturesThroughBuilding (34/375 Ticks)
14SteadyEnvironmentEffectsFeuer-Spread → PushHeat
16MapPostTick()MapTemperatureTick → RoomTempTracker.EqualizeTemperature()
19RegionDirtyerRoom-Rebuild nach Gebäude-Änderungen → RegenerateEqualizationData
#2 120-Tick-Intervall (Bucket-System) Verse/MapTemperature.cs

Temperatur wird nicht über das TickList-Bucket-System gesteuert, sondern direkt per TicksGame % 120 == 7 Check in MapTemperatureTick. Der Offset 7 verteilt die Last über verschiedene Ticks.

Bei Speed 1 (60 Ticks/s): alle ~2 Sekunden Echtzeit. Bei Superfast (6×): alle ~0.33 Sekunden.