fix(zone): zones older than version 30 have no terrain scene map

For a zone file older than version 30 the client reads the terrain in
an older format (OpenTerrain, 1.10.64: mapVersion < 30), and the game
client never reads that format's scene map (only the editor does), so
scene loading goes by the zone's scenes alone. The world now does the
same instead of reading the terrain file as the newer format.

Check in game: nothing to check (all live zones are version 36+).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aaron Kimbrell
2026-09-29 06:43:29 -05:00
parent 93c7b1948f
commit 21f1f3f8e1

View File

@@ -219,6 +219,9 @@ void Zone::LoadLevelsIntoMemory() {
bool Zone::LoadSceneMap() { bool Zone::LoadSceneMap() {
if (m_ZoneRawPath.empty()) return false; if (m_ZoneRawPath.empty()) return false;
// Zones older than version 30 have terrain of an older format, whose scene map the game client never reads
// (OpenTerrain: only the editor does)
if (m_FileFormatVersion < FileFormatVersion::PrePreAlpha) return false;
auto file = Game::assetManager->GetFile((m_ZonePath + m_ZoneRawPath).c_str()); auto file = Game::assetManager->GetFile((m_ZonePath + m_ZoneRawPath).c_str());
if (!file) { if (!file) {
LOG("Could not open the terrain file %s for its scene map", (m_ZonePath + m_ZoneRawPath).c_str()); LOG("Could not open the terrain file %s for its scene map", (m_ZonePath + m_ZoneRawPath).c_str());