diff options
Diffstat (limited to 'docs/tomes')
| -rw-r--r-- | docs/tomes/04-world.md | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/docs/tomes/04-world.md b/docs/tomes/04-world.md index e486e18..dcd53b2 100644 --- a/docs/tomes/04-world.md +++ b/docs/tomes/04-world.md @@ -195,6 +195,26 @@ Property properties[property_count] большинстве записей равен `(1,1,1)`. `instance_name` может быть пустым у unit-ссылки или содержать stem размещённого прототипа. +Сразу за строкой ресурса лежат два DWORD, и их нельзя склеивать в одно +«владение» или менять местами. Первый, `raw_after_resource`, оригинал использует +как индекс выбора AI. Второй сохраняется отдельным полем +`identity_or_clan_raw`, но одно его имя ещё не говорит, кому объект принадлежит. +В runtime draft оба значения остаются раздельными: + +```rust +MissionObjectDraft { + raw_after_resource: object.raw_after_resource, + identity_or_clan_raw: object.identity_or_clan_raw, + .. +} +``` + +Мы знаем это по пути создания: загрузчик копирует первое слово из TMA-записи в +строку схемы объекта; затем хост передаёт его ArealMap и World3D, а World3D +направляет его в ветку выбора AI. Соответствие этого индекса типу `OwnerId` в +`fparkan-world` не подтверждено. Смещения, условия версий и контрольные суммы исследованных +сборок приведены в [справочнике TMA](../reference/tma.md). + Свойства хранятся как ordered property bag: ```text |
