Dungeon Settlers открывает свои регионы в фиксированной цепи. В игре очистка региона - это единственное, что открывает следующий. Сохранение хранит состояние блокировки каждого региона, и игра загружает его в сохраненном виде.
Сводка
Цепочка регионов
Veil of Silence открывается с самого начала. Когда регион очищен, игра открывает регионы, связанные с ним (OpenAdjacentRegion). Ссылки фиксированы в коде (SetAdjacency).
Ссылки:
- Очистка Veil of Silence открывает Festering Burrow.
- Очистка Festering Burrow открывает Abandoned Mine и Infinite Abyss.
- Очистка Abandoned Mine ничего не открывает.
- Очистка Forgotten Abyss открывает Dead Swamp, а очистка Dead Swamp открывает Forgotten Abyss.
No clear opens Tower of Apocalypse, and no clear of the first three regions opens Forgotten Abyss or Dead Swamp.
Только первые 2 региона имеют настоящее содержимое; остальные - заглушки (см. Закрытый контент страницу).
Очистка региона
Каждый регион указывает босса зачистки в константе GAMESYSTEM_Dungeon_UnitForClearRegion. В текущих данных заполнены 2 слота:
- Слот 0, босс зачистки Завеса тишины, это
Гигантский каменный голем - Слот 1, босс зачистки Гниющая нора, это
Цепной рыцарь-страж
Заполнены 2 из 8 слотов; каждый следующий слот равен NULL.
Цепочка, прослеженная в двоичном файле DS_B.0.4.11 (2026-09-04):
- В каждом регионе кампании 5 этажей (
GAMESYSTEM_Dungeon_MaxFloor). Этаж n запускает фазу подземельяPhaseUnit[n]отGAMESYSTEM_Dungeon_PhaseUnit = [0, 1, 2, 3, 4, 5](индекс 0 это безопасный этаж), поэтому этаж 5 запускает фазу 5. - Фаза 5 это фаза босса: пул комнат это Вход -> Босс -> Портал, а комната босса (
DUNGEONROOM_VeilSilence_Boss_GiantStoneGolem,AvailablePhases = [5]) генерируется там. Этаж 5 Гниющей норы генерируетсяDUNGEONROOM_FesteringBurrow_Boss_ChainKnightSentinelтем же способом. - Убийство босса зачистки на этом этаже помечает босса региона как побеждённого (
TryMarkCurrentRegionBossDefeated). Затем экран результатов экспедиции предлагает Вернуться; нажатие подтверждает переход и помечает регион как зачищенный (SetClearRegion -> SetDungeonClear -> SetRegionClear) и открывает соседа (OpenAdjacentRegion). - На этаже босса выходной портал уже является порталом следующего региона (
BUILDING_DungeonFloorPortal2на Завесе тишины,BUILDING_DungeonFloorPortal3на Гниющей норе).
Исправления более ранних трактовок
"Голем не может появиться." Более ранние версии утверждали, что собственная таблица фаз Завесы тишины GAMESYSTEM_Dungeon_Floor_Phase_Division_Veil_Silence, ограничивает регион ниже фазы босса, поэтому комната босса никогда не могла сгенерироваться.
Эта таблица есть в данных, и ни одна сборка с B.0.3.40 её не читает. Поиск строковых литералов в двоичном файле игры не находит ни одной ссылки в B.0.3.40, B.0.3.44 и DS_B.0.4.11. Фаза этажа берётся из GAMESYSTEM_Dungeon_PhaseUnit, как указано выше. Этаж босса был достижим всё это время.
"Второй замок держит Гниющую нору закрытой." Более ранние версии также описывали жёстко заданные исключения для Гниющей норы в двоичном файле. Эти инструкции были в B.0.3.14 и отсутствуют начиная с B.0.3.40:
IsRegionBlockedвозвращает false для каждого регионаSanitizeRequestedRegionвозвращает свой ввод без изменений- Ни
OpenAdjacentRegionниGetAvailableRegionне проверяет номер региона
Автоочистка демо-сборки
В демо и плейтест-сборках (B.0.3.x) игра также автоматически зачищала Завесу тишины. Обработчик только для демо помечал регион как зачищенный с экрана результатов этажа 5, независимо от убийства босса.
DS_B.0.4.11 убрал это поведение. Обработчик скомпилирован в константу false, и экран результатов читает настоящий флаг победы над боссом.
Основной квест vs очистка региона
Завершение основной истории это отдельная линия от зачистки регионов. Эта Ползучая гибель main chain (Основной квест 0 до Основной квест 8) ends with killing the Красная крыса-монстр, элитного монстра, а не босса зачистки региона.
Его выполнение завершает историю сценария, но не зачищает Завесу тишины и не открывает Гниющую нору. См. Задания.
IsCleared флаг, который ведёт цепочку разблокировки.Редактирование сохранений
IsLocked значение как есть. Регион сохраненный с IsLocked false открыт. Установка IsCleared само по себе ничего не открывает, потому что загрузка не переоткрывает связанные регионы.Некоторые более ранние версии переопределили разблокировку из IsCleared при каждой загрузке. На этих версиях IsLocked редактирование ничего не делало. См. Файлы сохранения.