Каталог




Главная » Моды » Fallout 4 » Туториалы » Что такое конфликт модов в Fallout 4, взгляд изнутри.



Что такое конфликт модов в Fallout 4, взгляд изнутри.


DeCroix



Статус: Offline
Автор: DeCroix
Распространение: Требуется разрешение от автора





Добавлено: 22 Декабрь 2015
Просмотров: 19849 | Загрузок: 0 | Комментарии: 21

Понравилось: 54 пользователям



Немного лирики:
  Туториал будет носить "механическое" описание сути проблемы, а свои мысли и эмоции я оставлю при себе.

Кому может пригодиться ознакомление с данным материалом?
  В первую очередь тем игрокам, кто не понимает\не до конца понимает, из за чего конфликтуют различные модификации. Знание и понимание этого вопроса существенно упрощает установку модов и облегчает жизнь в целом. Итак, приступим.

Начнём издалека.
  В игре Fallout 4 основной игровой контент содержится в файле Fallout4.esm. Это мастер-файл, он имеет расширение .esm, внутри находится тот самый ванильный мир игры. Все данные разбиты на категории и пронумерованы. Объекты, предметы, персонажи, локации и т.д. и т.п. - всё помечено уникальным идентификационным номером, ID.
ID уникален, не может быть двух объектов с одинаковым ID. Создавая мод, мы вносим поправки в оригинальные значения уже имеющихся записей, или же добавляем новые записи, каждую со своим уникальным ID.

  Давайте представим, что мы хотим изменить значение силы для определенного персонажа. Для этого нам надо будет из мастер-файла Fallout4.esm создать дочерний файл с расширением .esp, который будет содержать обновлённую запись о персонаже. Например, для Пайпер, записанной в базе данных мастер-файла как ID [00002F1E], увеличение силы будет изменением значения параметра "Strength", в свою очередь имеющего свой уникальный ID. То-есть значения ID есть как для Пайпер, так и для силы.



  Копируем запись 00002F1E в новый файл (Так как мастер файл нельзя менять), меняем значение силы и сохраняем файл мода под именем: strength.esp. Файл мода создан, он создан на основе мастер файла Fallout4.esm, а значит, он привязан к нему как к базовому.

  Порядок загрузки для такой комбинации будет выглядеть так:
Fallout4.esm (Файл, содержащий оригинальные данные)
strength.esp (Файл, содержащий изменённые данные)

  Обращаю ваше внимание на то, что мастер файлы .esm должны загружаться раньше, чем их плагины, иначе игра просто не запустится.

Почему происходит конфликт модов?
  А что произойдёт, если мы захотим создать еще один мод на основе Fallout4.esm, и добавить Пайпер (запись 00002F1E), к примеру, интеллект? Создаём еще один файл intelligence.esp, аналогично параметру силы меняя параметр интеллекта. Ставим эти моды в очередь загрузки, например, вот так:

Fallout4.esm (Файл, содержащий оригинальные значения для записи 00002F1E)
strength.esp (Файл, содержащий новые значения силы для записи 00002F1E)
intelligence.esp (Файл, содержащий новые значения интеллекта для записи 00002F1E)

  В этом случае неизбежно произойдет конфликт модов. Дело в том, что значения различных параметров для определенной записи (например, для Пайпер) в мире Fallout4 содержатся в одном файле (изначально в Fallout4.esm). В нашем случае файл intelligence.esp стоит последним в очереди загрузки, а значит, данные, которые он содержит, будут загружены после файла strength.esp и именно они будут определять характеристики персонажа.



  Отсюда следует нехитрый вывод: все модификации, которые вносят изменения в одну и ту же запись, неизбежно будут конфликтовать друг с другом, и последний в очереди загрузки мод будет определять конечные параметры. В случае с мелкими модами это, может быть, не так уж и критично, Пайпер сможет жить полноценной жизнью и с пятью единицами силы вместо десяти. Но вот крупные модификации с большим количеством изменённых записей, которые, к тому же, ещё и связаны друг с другом скриптами, могут вызвать серьёзные баги в игре.

  Например: вы установили какой-то крупный мод, содержащий в себе много новых ID-записей, и среди них оказывается одна ванильная, описывающая некий ключевой предмет в игре. Допустим, она добавляет к нему привязанный скрипт, который срабатывает при попадании предмета в инвентарь главного героя игры, после чего запускается ряд определённых триггеров, важных для игрового процесса. Потом вы устанавливаете другой мод, который также меняет многие записи, среди которых оказывается и указанный выше ключевой предмет. И, так случилось, что в этом моде нет информации о привязке скрипта к предмету. Это значит, что, при попадании предмета в инвентарь скрипт не сработает, какая-то важная дверь не откроется, какой-то ключевой персонаж не заспавнится, и т.д и т.п. вплоть до критических ошибок, когда игра просто не запуститься, или будет крашиться при каждом срабатывании поломанного скрипта или триггера.

Как избежать конфликта?
  Первый и самый важный способ избежать конфликта - это логический анализ модов перед их установкой. Например, вы хотите установить два строительных мода. Логично предположить, что все новые объекты будут добавлены в общее меню построек. Меню делится на несколько каталогов, каждый со своим уникальным ID, которые в свою очередь содержат в себе ссылки на ID подкаталогов, в которых содержатся ссылки на ID предметов для строительства, которые будут в них находиться. Логика должна подсказать, что, если оба мода используют один и тот же каталог\подкаталог для размещения своих предметов, то каталог\подкаталог в итоге будет содержать предметы из того мода, который стоит последним в очереди загрузки.

  Второй способ: использовать для установки модов специальный софт, вроде Nexus Mod Manager, Fallout 4 Mod Manager, и т.п. Вроде как, по заверениям авторов, они помогают избежать конфликтов (лично я этим способом установки модов не пользуюсь вообще).

  Третий, достаточно сложный, но наиболее качественный способ: можно "сшивать" конфликтующие моды в специальных редакторах. На момент написания этой статьи я использую программу Fo4Edit, которая позволяет проанализировать, нет ли среди ваших модов конфликтующих записей, и, в случае обнаружения оных, вы можете скопировать конфликтующую запись в отдельный .esp файл на основе двух конфликтующих модов и исправить её так, чтобы она содержала в себе необходимые параметры обоих.

 
  Вот и всё, за сим откланиваюсь. Надеюсь, мой маленький туториал поможет вам получить полноценное удовольствие от игры с модами, но без багов. Всего доброго и удачи!


P.S. поскольку данный материал посвящён причинам возникновения проблемы, а не способам её решения. Я не стану писать тут гайдов по работе с утилитой Fo4Edit, подобную информацию вы в изобилии найдёте на просторах интернета.





Скриншоты | Images:





Хотите больше русскоязычных модов? Станьте нашим переводчиком! Научим и поможем. Обращайтесь в тему на форуме. Будем рады вас видеть :)


Помогите нам в поиске качественных модов на локализацию! Если знаете хорошую модификацию, которой нет в базе, пишите в тему на форуме и мы постараемся добавить ее в базу. Большое вам спасибо! :)

Всего комментариев: 21

Информация
Для того, чтобы оставлять комментарии к данной публикации необходимо зарегистрироваться .
Набор в команду сайта
Наши конкурсы











Ответ на жалобу смотрите в разделе жалоб