В чем разница между файлов esl и файлов esp
Это не мод и не инструмент. В игру ничего не добавляется, и в игре ничего не меняется.
Это всего-лишь маленький и простой туториал.
Пожалуйста, внимательно прочитайте всё, что здесь написано. И как всегда, прежде чем что-либо делать, обязательно сделайте новое сохранение в игре, чтобы у Вас была возможность откатиться назад, если что-то пойдет не так и придётся переустанавливать оригинальный мод.
Кроме того, перед преобразованием esp в esl запомните (а лучше - запишите) номер расположения esp в порядке загрузки NMM, чтобы Вы могли поместить esp обратно в исходное
местоположение после того, как вернетесь обратно к esp.
При большом количестве модов, LOOT часто размещает последние добавленные плагины esp внизу списка. Поэтому, предпочтительно помещать esp туда, куде его изначально разместил LOOT.
Немного определений.
До определённого времени, существовало только два формата файлов плагинов Bethesda - это esm (elder scrolls master file), мастер-файл, и esp (elder scrolls plugin file), плагин-файл.
Мастер-файл считается автономным, хотя привязан к другим мастер-файлам высшего порядка. Мастер-файл нельзя непосредственно создавать в Creation Kit (СК). Его можно создать только путём
конвертации плагин-файла esp в esm.
Плагин-файл esp создаётся в Creation Kit. Он может быть пустыми (не содержать никаких данных), автономным (не привязанным к мастер-файлам), привязанным к одному или нескольким
мастер-файлам, или плагин-файлам высшего порядка.
Мастер-файлы и плагин-файлы esp имеют ограничение по количеству адресов в 8 бит (лимит 255). Поэтому, в игре невозможно загрузить свыше 255 плагинов.
Плагин-файл esl (elder scrolls light plugin file) - это новый, облегчённый формат обычного плагин-файла, который появился в ходе обновлений игры Fallout 4.
Формат esl позволяет обойти лимит в 255 плагинов. Однако, его нельзя редактировать в Creation Kit. Кроме того, esl имеет ограничение в 4000 форм записей,
поэтому конвертировать в esl можно только относительно небольшие плагины esp.
Что необходимо для работы?
Единственное, что вам нужно в этом случае - это Creation Kit, немного терпения и немного здравого смысла.
Первое можно получить здесь.
Остальное уже зависит только от Вас.
Порядок работы.
Шаг первый. Откройте Creation Kit.Нажмите "File", и в выпадающем меню выберите "Data".
Шаг второй. В окошке "Data" найдите нужный Вам плагин, выберите его и сделайте активным, нажав "Set as Active File".Выбранный esp бкдет отмечен флажком.
Нажмите "OK", и дождитесь окончания загрузки плагина (скорость загрузки зависит от мощности Вашего компьютера).
Совет:
Держите открытыми окно Plugins в NMM и папку Data. Это позволит Вам быстро активировать полученные esl, и удалять уже ненужные esp, что особенно удобно
при преобразовании большого количества плагинов.
Внимание.
Как сказано выше, преобразование изменяет идентификаторы форм, которые были в исходном esp. Поэтому игра будет воспринимать esl как новый мод. И если
исходный esp добавлял в игру такие предметы, как оружие или одежду, то после преобразования, Вы их не обнаружите в своём инвентаре. Их придётся получать заново.
Это не нанесёт никакого вреда текущему прохождению игры, однако лучше использовать преобразованные плагины на новом прохождении.
Шаг четвёртый. Ещё раз нажмите "File", и в выпадающем меню выберите "Convert Active File to Light Master". Для подтверждения нажмите "Yes". На этом работа в СК закончена.
Шаг пятый. Откройте Ваш мод-менеджер, и активируйте в нём полученный esl-файл, а в папке Data удалите исходный esp.
Вот, собственно, и всё. Но тем не менее, прочитайте следующие предупреждения.
Предупреждения.
- не конвертируйте esp больших модов. Помните об ограничении в 4000 форм для esl;
- не конвертируйте esp, к которым привязаны другие плагины;
- не конвертируйте esp, если в порядке загрузки он должен находиться НИЖЕ другого esp.Плагин esl будет добавлен ВЫШЕ других плагинов esp, что может испортить игру.
- Обязательно закрывайте СК после каждого преобразования. Это необходимость связана с тем, что оставаясь открытым СК иногда выделяет Skyrim.esm как активный файл.
В окне "Data" можно снять с него метку активного файла, однако он может оставаться активным в фоновом режиме. А это может привести к нежелательным последствиям при
выполнении нового преобразования, так как в новый esl могут быть записаны не верные ID форм, что вызовет збой при загрузке игры.
Удачи в преобразованиях файлов!
От переводчика - Если Вам не трудно, то перейдите на страницу этого туториала на Nexusmods, скачайте там файл, хоть он Вам и не потребуется, и поблагодарите автора.
Плагин - это база данных всех данных игрового мира, включая данные объектов, диалоги, настройки игрового процесса, размещение объектов, настройки ИИ, ландшафт, ячейки и т. д. Существует несколько типов файлов, связанных с файлами данных. Мастера, Облегченные Мастера и Плагины. В основном идентичны по формату, но имеют некоторые важные отличия.
ESM и ESP - это базы данных имеющие записи с идентификаторами xxYYYYYY, где
xx - номер плагина в порядке загрузки в 16-ричной системе исчисления, в диапазоне от 00 до FF. Таким образом получается что максимально возможное количество подключенных файлов ESP + ESM - 256 шт, в десятичной системе исчисления от 0 до 255. Слот 00 это всегда либо fallout4.esm либо skyrim.esm, и всё что идёт за ними идёт строго по порядку, т.е. фиксируем, что максимально возможное количество подключенных файлов ESP + ESM - 256 шт. Забегая немножко вперёд - использование ESL плагинов отнимает 254 слот - FE, сокращая количество до 254 плагинов. А слот 255, т.е. FF навсегда зарезервирован под временные референсы игрового мира - т.е. игра использует его для того что бы хранить временно размещённые в мире игры объекты. Итого имеем следующее утверждение: пользователю доступно 255 слотов ESP-ESM от 0 до 254 в десятичных числах или в шестнадцатиричных - от 00 до FE.
YYYYYY - это номер каждой записи в плагине. Далее мои домыслы, т.к. информации об этом не видел: Если логика верна, то диапазон этих записей должен быть от 000000 до FFFFFF, то есть максимально возможное количество записей на один плагин - до 16777216. Однако, записи в Fallout4.esm начинаются с 000001, так же как и попытка создать нулевую запись всегда заканчивается безуспешно, предположу что 000000 - это всегда запись заголовка плагина.
Если посчитать максимально возможное количество записей в игре - то 255 х 16 777 216 = 4 278 190 080
Выглядит это вот так
Обратите внимание - все НОВЫЕ записи(красные стрелки) плагина DLCCoast.esm - имеют xx - 03, и свои собственные уникальные YYYYYY.
Однако в плагине так же присутствует запись 001536F2, где xx = 00 соответствует идентефикатору 00 плагина Fallout4.esm. Это значит что плагин DLCCoast.esm не добавляет новую запись в игру, но исправляет уже созданную плагином Fallout4.esm. Если несколько разных плагинов редактируют одну и ту же запись, то игровой движок будет работать ТОЛЬКО с той записью, которая загрузится последней.
Существует ещё одно правило для ESP и ESM: плагины ESM всегда загружаются ДО плагинов ESP. Вне зависимости от того как вы их разместили.
1. Можно загрузить не более 331 плагина имеющего до 2048 (КАЖДЫЙ) записей ALCH - как я понимаю это объекты типа ЗЕЛЬЕ(POTION). Не знаю почему это ограничение, но их объединяет то, что они не имеют постоянно закрепленного референса в игровом мире. Как я понимаю речь не о самих объектах категории ALCH - а о их размещении непосредственно в мире игры, т.е. того случая когда под них резервируется временный референс.
2. Можно загрузить более 970 плагинов, каждый из которых содержит одну запись CELL и 2047 записей REFR(референс в игровом мире - иными словами предмет лежащий непосредственно в игровом мире, а не в сундуках и инвентарях)
3. Обновление файлов ESL имеет больше ограничений, чем обновление файлов ESP, но их немного. Из-за ограничения в 2048 идентификаторов форм (я так понимаю речь о предметах размещенных в мире с референсными значениями, но не уверен) важно соблюдать осторожность при удалении форм, чтобы не использовать идентификаторы форм удалённых предметов повторно. Игровой движок может неадекватно воспринять ситуацию когда, например, удалена форма оружия с определенным идентификатором, а после с таким же идентификатором загружена форма брони.
Личное мнение: Полагаю что бы гарантированно безопасно отключить ESL плагин во время прохождения - нужно отключить плагин, и поставить на его место в порядке пустой плагин ESL, после чего загрузить сохраненную игру и пересохраниться - это действие должно удалить все идентефикаторы отключаемого плагина из текущего прохождения. Всё равно, если отключить пустой плагин даже после этой операции - есть возможность некорректного смещения по идентификаторам ZZZ при совпадении YYY в нескольких разных модах. По этому, получается, что перемещение в порядке загрузки ESL плагина создающего НОВЫЕ записи в процессе прохождения игры - всегда рискованная процедура. Иногда вы сможете заметить разницу, иногда это будет не заметно, но существуют так же случаи, когда это никак не повлияет.
Приведу пример: допустим у нас есть лайт плагины с идентификаторами
A - FE000 и B - FE001.
1) В плагине A есть броня с идентификатором 001, т.е. полная запись брони для игры выглядит так: FE000001.
2) В плагине В - есть пистолет с идентификатором 001, т.е. FE001001
3) Удаляя плагин А - FE000 - мы смещаем плагин B - и теперь он будет иметь идентификатор FE000, а предмет FE000001 - станет бронёй.
Разработчик утверждает что из-за того что для игры это всё один слот - FE, могут возникнуть проблемы из-за такого смещения, игровой движок может некорректно обрабатывать такую подмену информации.
4) В то же время, если мы подставим ПУСТОЙ ESL плагин вместо FE000, то смещения FE001 не произойдёт. Т.о. предмет FE000001 - пропадёт из игры, как и его запись, а предмет FE001001 - останется в игре под тем же идентификатором, т.к. смещения адресов не произойдёт.
Лайт плагины - также известные как «ESP с флагом ESL» или «ESPFE», это комбинация ESL и ESP. Это файл с расширением .esp, но с флагом заголовка ESL.
Как и легкие мастера, легкие плагины имеют максимальное количество записей не более 4096 форм, между 0x000 и 0xFFF, и во время выполнения объединяются в слот 0xFE.
Легкие плагины загружаются вместе с обычными плагинами. Это означает, что они могут как переопределять другие плагины, так и требовать плагины в качестве мастеров без негативного влияния на порядок загрузки.
Что это значит - фактически это ESL плагин, загружающий все НОВЫЕ записи так же как ESL в 254 слоте, НО игровой движок может различать НОВЫЕ записи от исправления существующих.
Т.о. имеем следующее:
1. ESP плагины грузятся в строгом порядке со своими идентификаторами т.е. 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 0A, 0B, 0C, 0D, 0E, 0F, 10, 11 . FF
2. При этом ESL плагины имея 254 слот FE - загружаются вне этого порядка, и вероятно каким-то образом занимают всегда место в загрузке между плагинами ESM и ESP.
3. Вместе с тем ESPFE обходят эти ограничения в тех случаях когда не создают НОВЫХ записей, а редактируют уже существующие.
4. Если ESPFE и создаёт новые записи и редактирует записи других модов - существующие, то новые записи будут загружены в 254 слот FE, который загружается между ESM и ESP, а отредактированные существующие записи будут загружены в соответствии с текущим порядком загрузки.
В этом ESP-ESL плагине зелёная стрелка - это новая форма, создаваемая плагином, а красные стрелки это изменение уже существующих форм. Новая форма будет создана в слоте FE, изменение существующих форм будет принято согласно листу загрузки плагинов. Плагин будет занимать пространство в 254 слоте - ESL. Это оптимальный вариант для создания патчей между модами.
Что такое Compact FormID?
Это процедура переделывания формата записей плагина из формата для ESM-ESP xxYYYYYY в формат для ESL-ESPFE - xxzzzYYY. При этой процедуре необратимо изменяются ID записей. Эта процедура может быть опасна, в случае если плагин является мастером для других плагинов.
В каких случаях нельзя переделывать из ESP в ESL или ESPFE?
1. В плагине более 2047 записей о размещенных непосредственно в игровом мире предметах (ALCH или REFR).
прим. - теоретически это ограничение можно обойти размещая записи с помощью скриптов - но это достаточно трудозатратно - и самое главное: надо ли?
2. В плагине более новых 4096 записей.
3. В плагине содержащие данные о цветах (сигнатура CLFM) - лично у меня возникала проблема, что в игре они отсутствуют, несмотря на то, что эдит не ругается при сохранении.
4. В плагине содержаться изменения сцен СУЩЕСТВУЮЩИХ(не новых) диалогов - лично у меня возникала проблема, что в этих случаях диалоги происходят молча, без возможности их пропустить.
5. Плагин является очевидным мастерплагином для других плагинов.
6. Плагин является неочевидным мастерплагином для других плагинов, иными словами не имеет очевидных ссылок, но имеет взаимосвязи построенные с помощью скриптов Papyrus. Формат представления ссылок на ESL-ESPFE файлы отличается от формата представления ссылок на ESM-ESP.
Вероятно что есть ещё какие-то случаи ограничений, о которых мне пока не известно.
Действительно ли можно подключить 4096 плагинов ESL? И да и нет.
Есть некоторые ограничения, к которым всё равно невероятно сложно подобраться. Вполне себе можно подключить условных 1000-1500 модов что бы они работали нормально, с точки зрения их обработки игровым движком. Что касается содержимого модов и их общей внутриигровой работоспособности - такое будет невероятно сложно сделать, но возможно и зависит исключительно от навыков и понимания делающего.
Тема посвящена сравнительно новому формату файлов плагинов Bethesda - ESL.
До определённого времени в игре The Elder Scrolls V: Skyrim Special Edition, как и в его предшественнике The Elder Scrolls V: Skyrim Legendary Edition существовало только два формата файлов плагинов Bethesda - это esm (elder scrolls master file), мастер-файл, и esp (elder scrolls plugin file), плагин-файл.
Начиная с патча 1.5.3 в Skyrim Special Edition была добавлена поддержка нового формата файлов плагинов, известных как esl (elder scrolls light plugin file).
Плагин-файл esl - это новый, облегчённый формат обычного плагин-файла, который впервые появился в ходе обновлений игры Fallout 4.
Внимание игроков и модмейкеров он привлёк тем, что позволяет обойти предел в 255 загружаемых плагинов.
Немного теории
Что-же такое предел 255, и откуда он взялся?
Как известно, все элементы, к которым происходит обращение в игре, имеют свои уникальные идентификаторы, называемые Form ID или просто ID.
ID представляет собой октет шестнадцатиричных цифр. Формат ID имеет следующий вид: ХХ00000. Здесь два левых разряда (ХХ) отведены для определения номера плагина в порядке загрузки в игру. Каждый разряд представлен шестнадцатиричной цифрой. Тогда, максимальное количество загружаемых плагинов определяется следующим образом:
С учётом того, что плагин с номером 00 это сам Skyrim.esm, то получаем максимальное количество загружаемых плагинов модов:
Оставшиеся шесть разрядов октета отводятся уже под адресуемый элемент. Это его жёсткий идентификатор, который является уникальным для каждого элемента в пределах плагина. Таким образом, в пределах одного мода (плагина) может быть проадресовано 16 6 = 16777216 элементов.
Полный адрес элемента в игре состоит из номера плагина в порядке загрузки (ХХ), и шести разрядов октета идентификатора. Следовательно, изменяться в ID могут только два левых разряда, значение которых зависит от места плагина в плагин-листе, при загрузке игры.
Как-же плагин esl позволяет обойти предел 255?
Тут есть одна хитрость, которая заключается в особом формате Form ID в плагинах esl. Такой Form ID называется компактным (Compact Form ID). Особенности такого формата заключаются в том, что два левых разряда октета ID здесь имеют жёсткий номер - FE. Это значит, что все ID элементов в плагинах esl начинаются с FE. Например, FE001А45.
В таком формате ID есть и другая хитрость. Порядок загрузки плагина в игре определяется следующими после FE тремя разрядами октета. А именно, как пример:
FE000А45 - первый esl в списке загрузки;
FE001А45 - второй esl;
FE002А45 - третий, и т. д.
Таким образом, максимальное количество загружаемых esl-файлов может быть 4096. Но на самом деле, загрузка такого количества файлов сопряжена с рядом трудностей, и, скорей всего, будет невозможна. Например, если плагины содержат 2048 записей типа ALCH, то таких плагинов можно загрузить не более 331, а если плагины содержат одну запись типа CELL и 2047 записей REFR, то уже можно будет загрузить 970 таких плагинов. Также накладываются ограничения дескриптора файла и длины ссылки.
Для непосредственной идентификации самих элементов в пределах плагина esl, отводятся оставшиеся три разряда. Это значит, что в плагинах esl может быть проадресовано 4096. Но это в теории. На практике этот диапазон ограничен от 800 до FFF, что позволяет адресовать лишь 2048 форм. (Для Fallout 4 начиная с версии 1.10.162 стало возможно использование 4096 в диапазоне от 000 до FFF - уточнение от wim95).
Специфические особенности esl-файлов
Формат esl-плагина разрабатывался прежде всего для Клуба творчества (Creation Club), а вовсе не для преодоления предела 255. В связи с этим, плагины esl имеют ряд специфических, и не всегда приятных, особенностей:
- они не могут напрямую редактироваться в Creation Kit (имеют атрибут "только для чтения");
- плагины, выпущенные Creation Club, помечаются как мастер-файлы и всегда загружаются сразу после официальных мастер-файлов Bethesda в порядке, указанном в файле .ccc игры. Эти esl-файлы не могут быть деактивированы (уточнение от wim95);
- плагины, выпущенные независимыми модмейкерами помечаются так же, как обычные файлы esp, но они загружаются с мастер-файлами в порядке, указанном в plugins.txt. Такие esl-файлы необходимо активировать перед загрузкой игры;
- конвертировать обычные esp-плагины в esl в текущей игре не допускается, так как это может сломать сохранение;
- скрипты модов, содержащие функции прямого обращения к ID, например GetFormFromFile(), должны быть перекомпилированы, после преобразования мода в esl;
- для модов, преобразованных в esl-плагины скорей всего могут потребоваться патчи. Существующие патчеры не полностью поддерживают плагины esl, особенно те, в которых содержаться записи типа CELL, FACT, PACK, PERK, RACE, SCEN, WRLD. Верификацию таких плагинов придётся выполнять вручную в xEdit;
- esl-файлы, выпущенные независимыми модмейкерами не могут, а скорее - не должны, использовать в качестве мастер-файлов обычные esp-плагины. Дело в том, что из-за особенностей игрового движка Skyrim Special Edition v1.5.3, любые зависимости от esp-плагина как мастер-файла, не будут загружаться ДО загрузки дочернего esl-файла.
⚠ Важно!
Чтобы избежать путаницы в дальнейшем, нужно чётко различать два понятия:
- файл имеющий флаг ESL и расширение .esl - называется esl-мастером, или лайт-мастером;
- файл имеющий флаг ESL и расширение .esp - называется esl-плагином, или лайт-плагином, или ESPFE.
В чём между ними разница будет пояснено в следующем примере преобразования esp-плагина в esl.
Преобразование esp-плагина в esl
Преобразовать esp-плагин в esl можно тремя способами - с помощью xEdit, в Creation Kit или с помощью Vortex.
Как преобразовывать esp-плагины в esl в Creation Kit описано здесь.
С помощью Vortex esp-плагины преобразовываются в лайт-плагины через вкладку "Plugins".
Ниже приведен порядок преобразования с помощью xEdit.
В качестве подопытного используем мод Лук Ренос от TarkArk (надеюсь, он на меня не обидится).
Итак, запускаем SSEEdit.exe, в окне отключаем все ненужные моды (правая кнопка мыши (ПКМ) --> Select None), выделяем наш плагин и открываем:
В загрузившемся окне видим привычный ID предмета, и незаполненную строчку Record Flags:
Хотел бы разобраться в изменении формата плагинов. Как я понял, если изменить ESP в ESL, то сохранение не запустится и придётся начинать новую игру. Правильно?
И насколько это безопасно для игровых файлов? Ну, то есть, я могу взять, допустим, мод Homemaker и превратить его формат в ESL, и он так же исправно будет работать? Или всё же мод может повредиться?
И последний вопрос: можно ли то же самое проделать с esm-плагинами?
Создал эту тему на самом сайте, но там никто так и не ответил. Есть надежда, что тут найдётся человек, который в этом шарит.
Денис, это все что я знаю:
- Облегченный плагин формата (.esl) - это новый оптимизированный формат, представленный в обновлении 1.10 для игры. Этот формат плагина ведет себя как обычный плагин .esp, за исключением следующего:
ПРИМЕЧАНИЕ. При сжатии идентификаторы формы изменяют formids в плагине, поэтому делайте это только перед преобразованием в .esl, а не в .esp (плагин), который вы планируете создавать.
Андрей, Андрей, кстати, у меня такая ситуасьон, что у меня есть файлы esp и esl, и когда число плагинов достигает 256, то в NMM появляется жёлтый треугольник и игра не запускается. Получается, все файлы должны быть формата esl, чтобы убрать ограничение в 255 плагинов?
Денис, вот тут я не могу ничего сказать, знаю что esl они не учитываются в количестве лимита 255, не учитываются моды у которых вообще нет esp файлов, например просто моды на текстуры, и моды у которых esl, а как там уже NMM считает их я не знаю, увы
Андрей, эх, будем разбираться
А не знаете, кстати, насколько глобальные моды можно менять на ESL ( например, Sim Settlements, Horizon и т.д.)
Денис, большие моды не сделать никак, если бы все было так просто, то все авторы всех модов давно бы их все уже переделали на esl, знаю как говорили Беседка, что esl является облегченным форамтом для не очень больших модов у которых не более 4000 форм, что за формы я не знаю, наверное какие то данные которых прописываются в esl, так что такие моды как Горизонт фиг сделать в esl
На фоне новостей об открытии Creation Club для Fallout 4 и Skyrim мимо прошла новость о поддержки нового формата файлов у Bethesda Games Studios.
С 2002 года существовало два типа файлов - .esm и .esp, соответственно, "мастер-файл" и "плагин-файл". Однако с недавних пор появился и новый тип файлов - .esl или же Light Plugin file, "легкий плагин-файл".
Мастер: .esm
- Мастер-файл автономный, Creation Kit не позволяет создавать мастер-файлы.
Плагин: .esp
- Плагины не обязаны содержать какие-либо данные.
- Плагинам не требуется иметь мастер-файл, если они пустые или добавляют новый контент.
- Плагины могут ссылаться только на данные из мастер-файла или же нескольких.
- Плагины могут ссылаться только на другой плагин, используя скрипты.
Легкий плагин: .esl
Чтобы пересохранить .esp в .esl, необходимо загрузить .esp, а затем выбрать "File" —> "Convert Active File to Light Master".
Очевидно, что этот формат был создан специально для Клуба творчества, чтобы нельзя было вносить правки в модификацию. И сам теперь Клуб (пока что для Fallout 4, Skyrim будет позднее) доступен не только пользователям PC, но и владельцам PlayStation 4 и Xbox One. Однако как и в прошлый раз во время запуска Мастерской с платными модами в Steam, коллекция официальных материалов невероятно скудна. На данный момент игрокам доступны силовая броня «Хеллфайр», прототип карабина Гаусса и китайская маскирующая броня. Вы даже сможете надеть скафандр, созданный по мотивам Prey или проскакать галопом по Пустоши в силовой броне, которая заставит вас вспомнить о Лютике.
И глядя на этот список материалов, становится не очень ясно, к чему был вообще запущен этот Клуб, не поторопилась ли студия с запуском? Разумеется, более серьезные и качественные плагины появятся позже, но базовый стартовый набор выглядит и правда удручающе.
Читайте также: