Обновлено:

Взаимная защита: обязательные контрольные случаи

Подготовлено 27.10.2026 для следующей части 4.4. Наземная модель пакта опубликована: реализация и ограничения. Оригинальные контрольные случаи ниже остаются отдельными от тестов веб-движка. Это реестр проверок исходного поведения перед реализацией, а не отчёт о готовой механике. Эмбарго разрабатывается отдельным текущим изменением.

Измеренный профиль Atlants: флаг TECH 0x100, TECH130 «Национализм». Civilopedia установленной поставки также связывает договор о взаимопомощи с этой технологией. Технологические названия стандартной Civilization III не заменяют данные Atlants.

Исходное руководство, с. 141 описывает взаимную военную помощь при нападении, посольство/мир, достаточность технологии у одной стороны, обязательство 20 ходов и отдельное урегулирование возникших войн после отмены. Отдельно указано нарушение при мире с противником, который всё ещё вторгается на территорию партнёра. Руководство не раскрывает всех событий, вызывающих реакцию.

What triggers a Mutual Protection Pact?, №2/3 различает объявление войны и нападение внутри территории участника; автор №3 уточняет первоначальный ответ №2. MPPs, №5 и №7 содержит наблюдения о достаточности нахождения противника в границах и о бомбардировке, включая повторное наблюдение игрока в 2025 году. Следовательно, нельзя без проверки свести пакт только к событию WAR_DECLARED или только к успешному уничтожению юнита.

Контрольный случайЧто требуется установить/сохранить
Объявление войны без войск в границахСамо объявление не равно нападению/вторжению; не начинать лишние войны
Войска уже в границах при объявленииПроверить точную фазу вызова партнёра, класс учитываемых юнитов и наличие прибрежных исключений
Вход воюющего юнита на защищённую территориюПроверить самостоятельный триггер входа, включая пустую клетку
Нападение на юнит вне его национальных границНациональности защитника недостаточно для территориального условия; уточнить нейтральную/третью территорию
Нападение внутри границ, закончившееся гибелью нападавшегоПартнёр должен оценивать само нападение, а не только оставшиеся на карте войска
Захват города меняет владельца клеткиСохранить владельца и координаты цели до боя; не потерять причину реакции после пересчёта границ
Захват рабочего/поселенцаУстановить, достаточно ли гражданской цели и как учитывается вторжение гражданским юнитом
Бомбардировка/налёт/десант/ядерное действиеПодключать соответствующие причины вместе с системами 5.1–5.4, без ложного объявления всей поддержки готовой
Цепочка нескольких взаимных пактовУстановить порядок реакций и разрыва несовместимых договоров; каждое объявление войны должно иметь фактического инициатора
Отдельный мирРазличать продолжающееся вторжение, завершённую угрозу и чистую отмену после обязательного срока
Загрузка между вторжением и реакциейСохранение причин/ожидающих решений должно давать тот же итог, без повторных объявлений и повторного начисления усталости
ИИИспользовать общие причины/команды и доступные сведения; проверить исключение партнёра по пакту из обычного выбора цели войны

Список — задачи проверки, а не доказанные ответы на все строки. Исполняемый эталон — 1.21.0.0; адреса и исправления C3X для Conquests 1.22 нельзя применять к нему простым вычитанием константы. Сравнение собственного воспроизводимого движка с самим собой не подтверждает эти условия Windows-оригинала.

Дополнительный первичный разбор: Flintlock о выборе войны ИИ. Он важен для предотвращения самовольного нападения на партнёра в обычном планировании войны; другие причины войны рассматриваются отдельно.