ESP в "ESM" при помощи xEdit

К комментариям
06.04.2019 — 20:56
Автор: Meridiano

Обход подводных камней при конвертации

Итак, вам нужно конвертировать простой ESP-плагин в его вариант, помеченный как ESM. Казалось бы, что может быть проще установки флага? Однако, и здесь вас ждёт одна проблема...

Что вам потребуется:
+ xEdit (мной используется версия 4+).
+ [Опционально] Пояснение, почему это может вам понадобиться (англ).

Если кратко, то при загрузке больше 2^20 объектов (1.048.576), которые "определены" во всех активных простых ESP-плагинах, вас ждёт так называемая "вечная загрузка". Для обхода этого некоторые авторы крупных проектов создают ESM-версии своих модов.
 

TCLtOg0.png


Часть I - в чём проблема?

Все алиасы'ы (Alias) квестов в плагине ссылаются в итоге на конкретные объекты в мире игры. Разница между ESP и ESM в том, что в последнем эти объекты должны быть постоянными (Persistent), иначе алиас при старте квеста заполнится... ничем. И что-нибудь обязательно пойдёт не так. Ваша цель - проверить все алиасы всех квестов, чтобы объекты, на которые они указывают, имели флаг Persistent. Только после этого можно конвертировать плагин и начинать игру.

1) Открываем плагин в xEdit, переходим во вкладку Quest, смотрим в нужную нам запись (слева) и находим раздел с алиасами (справа).

pre_1554569265__2-001.png

TCLtOg0.png


Часть II - тип алиаса "Unique Actor".

1) Смотрим данные алиаса и видим, что это "Unique Actor", в данном случае - Тамина Эленил.

pre_1554569274__2-002.png

2) Зажимаем CTRL и переходим к NPC, переходим сразу во вкладку "Referenced By" и находим размещённого в мире персонажа - ACHR.

pre_1554569284__2-003.png

3) Переходим к нему и видим, что персонаж имеет флаг Persistent, а значит будет "работать" нормально и трогать его не нужно.

pre_1554569293__2-004.png

4) Смотрим второй алиас (Шаглак) и проделываем с ним то же самое.

pre_1554569302__2-005.png

5) На этот раз есть "попадание" - на персонаже не стоит никаких флагов.

pre_1554569307__2-006.png

6) Кликаем ПКМ по пустому полю "Record Flags" и выбираем "Edit". Нас интересует флаг Persistent.

pre_1554569317__2-007.png

7) Если мы всё сделали верно (ошибиться довольно сложно), то запись "Placed NPC" переместится из секции Temporary в Persistent.

pre_1554569332__2-008.png

TCLtOg0.png


Часть III - тип алиаса "Forced Reference".

1) Смотрим данные алиаса и видим, что это "Forced Reference", в данном случае - некий невидимый (технический) сундук.

pre_1554569338__2-009.png

2) Зажимаем CTRL и переходим сразу к объекту в мире игры - в данном случае типа REFR. Проверяем у него наличие флага "Persistent", если его нет - добавляем.

TCLtOg0.png


Часть IV - собственно, конвертация.

1) Когда мы проверим все алиасы во всех квестах, мы наконец сможем поставить плагину долгожданный флаг.

2) Нам нет нужды использовать Wrye Bash, чтобы сделать ESP-плагин псевдо-мастер-файлом. Достаточно перейти на вкладку "File Header" плагина и обратить внимание на поле "Record Flags".

pre_1554569345__2-010.png

3) Добавляем туда флаг "ESM", после чего закрываем xEdit и сохраняем плагин.

pre_1554569350__2-011.png

TCLtOg0.png


На этом всё. Надеюсь, данная статья будет полезна для вас. Выражаю огромную благодарность Zilav за разъяснения и Dimonoider за саму основу гайда.