2026-02-11 21:12:05 +00:00
|
|
|
|
# Missions
|
|
|
|
|
|
|
2026-02-19 11:07:04 +04:00
|
|
|
|
Подсистема `Missions` управляет сценарием:
|
2026-02-11 21:12:05 +00:00
|
|
|
|
|
2026-02-19 11:07:04 +04:00
|
|
|
|
- стартовыми условиями;
|
|
|
|
|
|
- триггерами;
|
|
|
|
|
|
- победой/поражением;
|
|
|
|
|
|
- синхронизацией с AI/Behavior/World.
|
|
|
|
|
|
|
|
|
|
|
|
## 1. Что уже зафиксировано
|
|
|
|
|
|
|
|
|
|
|
|
1. Миссии связаны с картами (`Land.msh`/`Land.map`) и объектными категориями.
|
|
|
|
|
|
2. Скриптовые ресурсы хранятся в архивных контейнерах (`NRes`) и участвуют в runtime-логике.
|
|
|
|
|
|
3. Миссионные события влияют на AI и поведение объектов через общий gameplay-слой.
|
|
|
|
|
|
|
|
|
|
|
|
## 2. Минимальный runtime-контракт
|
|
|
|
|
|
|
|
|
|
|
|
1. Детерминированный порядок обработки триггеров в кадре.
|
|
|
|
|
|
2. Единая шкала времени миссии для всех подсистем.
|
|
|
|
|
|
3. Согласованность идентификаторов объектов между mission-data и world-state.
|
|
|
|
|
|
|
|
|
|
|
|
## 3. Статус покрытия и что осталось до 100%
|
|
|
|
|
|
|
|
|
|
|
|
Закрыто:
|
|
|
|
|
|
|
|
|
|
|
|
- связь миссионной подсистемы с форматом ресурсов и runtime-контуром.
|
|
|
|
|
|
|
|
|
|
|
|
Осталось:
|
|
|
|
|
|
|
|
|
|
|
|
1. Полная спецификация форматов миссионных скриптов/таблиц.
|
|
|
|
|
|
2. Полный перечень типов триггеров и их параметров.
|
|
|
|
|
|
3. Формальные правила разрешения конфликтов триггеров в одном кадре.
|
|
|
|
|
|
4. Набор replay parity-тестов «миссия от старта до завершения».
|
2026-02-19 16:10:57 +04:00
|
|
|
|
## 4. Mission -> Prototype -> Mesh bridge
|
|
|
|
|
|
|
|
|
|
|
|
Для 3D-объектов миссии обязательна промежуточная стадия `objects.rlb`:
|
|
|
|
|
|
|
|
|
|
|
|
1. `data.tma` задаёт либо прямой ключ объекта, либо путь к `*.dat`.
|
|
|
|
|
|
2. `*.dat` даёт `model_key` (в retail-наборе через `objects.rlb`).
|
|
|
|
|
|
3. Ключ резолвится в запись прототипа внутри `objects.rlb`.
|
|
|
|
|
|
4. Из прототипа выбирается фактический `*.msh` и архив (например `bases.rlb`, `static.rlb`, `fortif.rlb`).
|
|
|
|
|
|
5. Только после этого запускается стандартная цепочка материалов и текстур.
|
|
|
|
|
|
|
|
|
|
|
|
Детальный формат и алгоритм вынесены в отдельную страницу:
|
|
|
|
|
|
|
|
|
|
|
|
- [Object registry (`objects.rlb`)](object-registry.md)
|