Temperatur → Region Verbindung
Regions sind die Grundbausteine aus denen Districts und Rooms aufgebaut werden.
Die
Room-Hierarchie (Region → District → Room) bestimmt wie Temperatur berechnet wird.
DangerFor nutzt die Raumtemperatur für Pawn-AI.
#1
Region → District → Room
Region = 12×12 Zellen, Grundbaustein.
District = zusammenhängende Regions gleichen Typs (Normal/Fence/ImpassableFreeAir).
Room = Districts die über Portal-Regions (Türen) verbunden sind.
Temperatur-Bezug: Die Temperatur wird pro Room berechnet, nicht pro Region oder District. Ein Raum kann mehrere Districts haben, aber hat eine einzige Temperatur.
Verse/Room.cs:1-937 Verse/RegionAndRoomUpdater.cs:1-409
#2
DangerFor — Temperatur-Gefahren
Verse/Region.cs
Region.DangerFor(Pawn) prüft die Raumtemperatur gegen den SafeTemperatureRange des Pawns. Ergebnis wird gecacht.
| Danger-Level | Bedingung | Pawn-Verhalten |
| None | Temperatur innerhalb SafeRange | Normal |
| Some | Feindliche Präsenz | Vorsichtig |
| Deadly | Temperatur außerhalb SafeRange / Vakuum | Meidet den Raum |
Das bedeutet: Pawns gehen nicht freiwillig in Gefrierkammern oder brennende Räume, es sei denn sie werden drafted.
#3
Room-Rebuild → RegenerateEqualizationData
Verse/RegionAndRoomUpdater.cs:1-409
Wenn eine Wand/Tür gebaut oder entfernt wird:
Zelle dirty → RegenerateNewRegions → FloodAndSetNewRegionIndex →
CreateOrAttachToExistingDistricts → CombineDistrictsIntoRooms (DFS) →
RegenerateEqualizationData → Shuffle()
MP-Kritisch — Die gesamte Rebuild-Pipeline muss auf allen Clients identisch und zum gleichen Zeitpunkt ablaufen.