2.9 KiB
Автоматический импорт mount и pet
Список современных моделей находится в custom-creatures.json. В нём есть две независимые
секции:
{
"mounts": [
"assets/creatures/my_mount"
],
"pets": [
"assets/creatures/my_pet"
]
}
Папка должна быть результатом Raw M2 export из wow.export и содержать:
- один основной
.m2; *.manifest.json;- все упомянутые в manifest текстуры, skin, skeleton, bone и animation-файлы.
Разрешены абсолютные пути, например C:/Users/sindo/wow.export/creature/catslime, но для
воспроизводимой сборки папку лучше скопировать внутрь репозитория и указать относительный путь.
Что делает сборщик
При обычном запуске tool.exe, run.ps1 или deploy.ps1 сборщик:
- читает manifest каждой модели и добавляет все зависимости в
patch-Z.MPQ; - генерирует
WXLFileData.csvдля WarcraftXL; - дописывает модели в
CreatureModelData.dbcиCreatureDisplayInfo.dbc; - сохраняет стабильные ID в
custom-creatures.lock.json; - кладёт серверные копии DBC и таблицу ID в
build/server-dbc.
Перестановка моделей в списке не меняет уже выданные ID. Lock-файл необходимо хранить в Git.
Дополнительные параметры
Если значений по умолчанию недостаточно, вместо строки используется объект:
{
"folder": "assets/creatures/my_mount",
"key": "my_mount",
"archive": "Creature/MyMount",
"model_file": "my_mount.m2",
"template_display_id": 2404,
"display_scale": 1.0,
"model_scale": 1.0,
"collision_width": 0.6111,
"collision_height": 2.031,
"mount_height": 1.8657,
"flags": 0
}
Для mounts по умолчанию клонируется верховая лошадь с display ID 2404, для pets —
компаньон-кот с display ID 5448. Шаблон задаёт физические размеры, звук и прочие поля DBC;
параметры объекта позволяют их переопределить.
Сгенерированные DBC сами по себе не создают серверное существо или заклинание. Сервер должен
загрузить DBC из build/server-dbc, а полученный displayInfoID нужно назначить записи питомца,
транспорта или соответствующему spell.