Конфликт модов в ведьмак 3. Экипировка и торговля

Если у вас есть несколько модов, которые изменяют тот же файл игры, TW3 загружает только 1 из этих модов. Это приводит к конфликтам модов. Script Merger устраняет данную проблему.

Что она делает

Это утилита проверяет папку mods на наличие конфликтов и отображает их в пользовательском интерфейсе. Если конфликтом являются скрипты.ws или.xml внутри.bundle пакета, то Script Merger может объединить разные версии, используя мощный открытый исходный код слияния утилиты KDiff3 by Joachim Eibl. Если вы пытаетесь соединить моды, которые изменяют ту же часть того же файла, KDiff3 поможет разрешить конфликт вручную. Если есть конфликты в текстурах / моделях / др., Script Merger обнаруживает их только, но не может объединить их. Script Merger называет их "неразрешимые" конфликтами.

Как пользоваться


1) Укажите путь к папке с игрой ("Ведьмак 3", не папка Mods)

2) Нажмите "Refresh" и вы увидите список "Conflicts".

3) Если какие-либо конфликты будут обнаружены, выберите 2 или более файлов, чтобы объединить\merge.

4) Click "Merge Selected Files" button.

5) Если есть какие-либо изменения, которые совпадают в той же части файла, в KDiff3 появится выбор, как решить пересекающиеся изменения

6) Играть!

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

Ссылки на видео, которые показывает, как пользоваться Script Merger.

На данный момент почти каждый, кто хоть иногда просматривает новости на игровую тематику - знает про ведьмака Геральта и его похождения. Многие люди так же успели пригубить данный атмосферный продукт и остаться полностью удовлетворенным.

Однако, несмотря на то, что игра достаточно насыщенная - разработчики оставили возможность за пользователями создавать модификации, изменяя игровой мир на свой вкус. И сейчас я Вам расскажу как устанавливать те самые модификации.

Инструкция по установке модификаций

1. Качаем архив понравившегося вам мода с нашего .

2. Распаковываем архив.

Примерно так он будет выглядеть его содержимое:

3. Переходим в корневую директорию игры и создаем папку под названием mods .

Если у вас лицензия от Steam, то путь к игре будет примерно таким: C:\Program Files (x86)\Steam\steamapps\common\ The Witcher 3: Wild Hunt

4. Копируем содержимое архива в ранее созданную папку mods.

Вот так выглядит папка mods с несколькими установленными модами:

5. Запускайте игру. Перед тем как игра запустится - Red Engine будет компилировать скрипты для синхронизации их с игровыми. От вас ничего не требуется. кроме как подождать максимум 1-2 минуты.

Если при компиляции ошибок нет, значит моды успешно установлены!

ВАЖНО!

С большинством модов компилятор Red Engine все же конфликтует и выдает ошибку, что не дает в дальнейшем запустить игру.

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

*Так же учитывайте версии модов, большинство из них привязаны к версии патча игры.

Приятной игры!

Так для чего же нужен Script Merger?

При установке нескольких модов, изменяющих один и тот же файл игры, Ведьмак 3 загружает лишь одну доминирующую версию этого измененного файла. Подобный конфликт файлов - обычное дело и может сделать пару установленных вами модификаций абсолютно бесполезными (а, иногда, и не юзабельными). И именно Script Merger помогает игрокам избежать этой проблемы.

Так как же он работает?

Несмотря на своё название, Script Merger (груб. Объединитель скриптов) находит конфликты не только в скриптах (.ws), но и в других файлах (.bundle). Найдя существующие конфликты, он создает объединенные версии конфликтующих текстовых файлов. При этом, он не изменяет исходные файлы, а просто замещает их. Программа не может исправить нетекстовые конфликты, но может помочь вам в управлении порядком загрузки (файл mods.settings), чтобы запускать определенный мод в обход остальным.


Для работы Script Merger использует три внешних инструмента:

Примечания

Инструмент KDiff3 просто объединяет текст. В большинстве случаев, он работает нормально. Но из-за того, что данный инструмент не совсем понимает игровой код, иногда он объединяет файлы в неправильном порядке. Нет никаких гарантий, что автоматически разрешенные конфликты будут разрешены правильно. В случае возникновения подобной проблемы потребуется вмешательство пользователя.
В модах со скриптами могут возникнуть логические конфликты, которые инструмент не может выявить. В таком случае, даже если текст объединился без прямых конфликтов, вышедший скрипт не будет работать правильно. Например, если Мод А скрывает элементы графического интерфейса, а Мод Б, наоборот, отображает их, то Мод А не будет работать. Чтобы решить эту проблему, опять же, потребуется вмешательство пользователя.

Для пользователей NMM (Nexus Mod Manager): Пока что Script Merger не поддерживает NMM"s multi-HD mode (или какие-либо симлинки).

Установка и использование

1) Скачайте, извлеките и запустите Script Merger.
2) Укажите путь к установленной игре в поле в самом верху.
3) Нажмите клавишу "Refresh" над списком "Conflicts".
4) При выявлении исправимых конфликтов - повторяйте данные шаги, пока конфликты не разрешатся:


  • Выберете две или более версии одного файла, которые вы бы хотели объединить.
  • Нажмите клавишу "Create Selected Merge".
  • Если в модах нет совпадающих различий, KDiff3 может объединить их автоматически.
  • Если в модах есть совпадающие различия, появится окно KDiff3 и вы сможете объединить их вручную. Детальнее это показано в видео ниже.
  • Если Script Merger не найдёт оригинальной версии измененного файла, вам придется объединить моды вручную, когда появится окно KDiff3.
5)При выявлении нетекстовых конфликтов, Script Merger покажет их, но не исправит. Это значит, что один из модов в каждом конфликте “победит” и заместит остальные. Вот как выбирается победитель:

  • По умолчанию, игра загружает моды в стандартном порядке: сначала цифры, затем подчеркивания, затем буквы (без учёта регистра клавиатуры).
  • Вы можете клацнуть правой кнопкой мыши по одному из модов и выбрать его приоритет (от 1 до 9999, сначала загружаются меньшие числа). Об этом можно узнать больше из объяснения Kad_Venku.
6)Наслаждайтесь игрой!
7)При удалении или обновлении одного из модов, который является частью объединенного файла, Script Merger обнаружит изменение и предложит удалить поврежденный файл. Если вы обновили мод и Script Merger не предложил удалить объединенные файлы с этим модом, значит, обновление на них не повлияло.

Учебные видео (Script Merger: Азы)


В этом видео показаны некоторые азы KDiff3.


Это видео заводит уже дальше в дебри.

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


Мод 1 - modFOVTweak8070 (ссылка) Мод 2 - modManualCam (ссылка)

  • content\scripts\game\cameras\combat\customCamera.ws
  • content\scripts\game\player\playerInput.ws
  • content\scripts\game\player\r4player.ws
Мод 3 - modNoWitcherSense (ссылка)

  • content\scripts\game\player\r4Player.ws

Если вам удалось успешно объединить все три версии r4Player.ws, то Script Merger, по умолчанию, переместит объединенный скрипт сюда:


Новый мод - mod0000_MergedFiles

  • content\scripts\game\player\r4Player.ws

Новая директория начинается с "0000_", чтобы игра загружала её раньше остальных. (В3 загружается в порядке ASCII) Так как объединенная версия r4Player.ws загружается первой, не объединенные версии просто игнорируются игрой.

Удаление

Чтобы удалить все объединенные файлы и вернуть моды к их первозданному виду - удалите директорию с объединенными модами (mod0000_MergedFiles в версии 0.5, mod__MergedScripts в версии 0.4.3).
Чтобы полностью удалить Script Merger с вашего компьютера - удалите файлы, которые были в загруженном архиве и генерируемый файл MergeInventory.xml, если такой имеется.


Версия: 0.6.2
Язык интерфейса: английский

Описание :

Зачем нужен Script Merger
Когда у вас есть несколько модов, которые изменяют один и тот же файл игры, TW3 загружает только одну версию того файла. Такой вид конфликта является распространенным и ломает модификации, т.е. при запуске игры выскакивает ошибка, и игра просто не запускается. Эта программа пытается исправить данную проблему.

Обновление: 0.6.2
- Добавлено распознавание в обновлении слияния исходных файлов и базовой строки для удаления пораженного слияния.
- Добавлена ​​валидация mods.settings .
- Заново добавлена ​​информация о выполнении в файле config . Надеюсь TypeLoadException избежит при пуске.
- Исправлено: ложная ошибка "missing file" после успешного пакетного слияния 3+ модов.
- Исправлено: пункт меню "Dependency Locations" перестал работать в 0.6.1.
- Исправлена ​​ошибка: сбой при попытке открыть относительные пути к файлу.
- Исправлено: отключены флажки модов в некоторых ситуациях.

История версий:

Версия 0.6.1
- Добавлено меню с опциями открыть определенные файлы / папки, переупаковать объединенные bundle или выйти и запустить игру.
- Эстетичный статус-бар.
- Быстрая функциональность "Set Priority".
- Убраны флажки с отключенных модов.
- Добавлен запрос на удаление слияния, включающий отключенные моды.
- Добавлен прогресс-бар на панель задач (Windows Vista или более поздняя версия).
- Добавлены всплывающие подсказки в контекстное меню.
- Спрятан пункт контекстного меню "Select / Expand All" для правой кнопки мыши.
- Отключение отсутствующих приоритетов мода дает 9999, а самый низкий приоритет + 1.
- Добавлено ожидание пути отсутствия диалога выбора файла для устранения неисправностей.
- Исправлено: возможное обрушение конфликта разрешается в порядке загрузки всех разрушенных конфликтов.
- Исправлено: контекстное меню "Open Vanilla" было показано при отсутствующем файле ванили.
- Исправлено: неправильный цвет текста при нажатии правой кнопкой мыши и выборе флажка.

Версия 0.6.0
- Улучшена обработка пользовательского порядка загрузки.
- Добавлены элементы контекстного меню по установке приоритетов модов, включить/выключить, удалить из порядка загрузки.
- Конфликты, разрешающиеся в пользовательском порядке загрузки, выделяются фиолетовым цветом.
- Моды, имеющие приоритет в пользовательском порядке загрузки, выделяются серым цветом.
- Моды, отключенные в пользовательском порядке загрузки, выделяются курсивом.
- Добавлена опция автоустранения конфликтов, разрешающихся с помощью пользовательского порядка загрузки.
- Добавлена опция отключения проверки пользовательского порядка загрузки.
- Исправлены min и max ограничения приоритета в соответствии с документацией CDPR.
- Удалены опции и предложения отключения пользовательского порядка загрузки.
- Исправлено: подтверждение порядка загрузки крашилось при пустом файле mods.settings.
- Добавлена горячая клавиша F5 для обновления конфликтов.
- Переименование "unsupported" в "not mergeable".
- Допустимое исправление для смещенных иконок в отчете слияния

Версия 0.5.11
- Исправлено: модификация пользовательского порядка загрузки была сломана (mod0000_MergedFiles крашился и переназначал существующие приоритеты неправильно).

Версия 0.5.10
- Исправлено: Bundled файлы XML были интерпретированы не верно.

Версия 0.5.9
- Добавлена ​​поддержка для non-bundled файлов XML.
- Добавлено ​​исправление, когда модификация пользовательского порядока загрузки (файл mods.settings ) не загружала в первую очередь слитые файлы.
- Переименована настройка ScriptsDirectory в VanillaScriptsDirectory , потому что для некоторых пользователей было не понятно.
- "Witcher 3 Directory " перемещен в текстовое поле над UI.
- Добавлены знак плюс , стрелка и цветной текст , чтобы отчет об объединении был более ясен.
- Добавлены всплывающие подсказки к пунктам меню Options .
- Добавлено сообщение об ошибке об отсутствующем файле сonfig .
- Исправлено: неправильные цифры прогресса при слиянии нескольких game файлов.
- Исправлено: пустая категория конфликта оставалась для обновления после разрешения конфликта за пределами Script Merger.
- Возможно исправлена ошибка, где каталог tempbundlecontent не существовал, в результате чего QuickBMS незаметно запрашивал подтверждение.

Версия 0.5.8
- Добавлена ​​поддержка bundled файлов CSV и TXT .
- Добавлен звук при завершении слияния или упаковки (новый параметр в меню Options и в config файле).
- Сообщение процесса слияния: "конфликт Х c Y , файла N c М ", если это применимо.
- Убрана рекомендация копировать скрипты из wcc_lite , потому что они устарели.
- Исправлено: элементы контекстного меню для удаления слияния не работали.

Что делает Script Merger
Script Merger обнаруживает конфликты в обоих .ws скриптах и .bundle пакетах. Затем она создает объединенную версию конфликта .ws скриптов или .xml файлов внутри .bundle . Также обнаруживает конфликты текстур и моделей, но не может объединить их.

В ней также используется 3 другие программы:
- KDiff3 от Joachim Eibl - объединяет текстовые файлы.
- QuickBMS от Luigi Auriemma - сканирует и распаковывает.bundle файлы.
- wcc_lite от CD Projekt RED - упаковывает объединенные XML в.bundle файлы.

Примечание:
- При объединении KDiff3 просто делает текстовое слияние. Во многих случаях это хорошо работает. Но т.к. данная программа фактически не понимает код, иногда она объединяет в неправильном порядке. В таком случае объединение нужно произвести вручную.
- Кроме того, в скриптовых модах могут быть логические конфликты, которые не может обнаружить программа. В этом случае, даже если текст объединяется без прямых конфликтов, в результате скрипт не будет работать должным образом. Например, если MодА пытается скрыть HUD, а MодB выводит на экран HUD, то MодA не будет работать. В таком случае объединение нужно произвести также вручную.

Инструкция:
1. При первом запуске программы нужно указать путь к папке игры "The Witcher 3 Wild Hunt".
- Steam-версия - \Steam\steamapps\common\The Witcher 3.
- GOG-версия - \GOG]\The Witcher 3 Wild Hunt.
2. Откроется окошко с двумя половинками.
3. Нажать кнопку "Refresh" выше списка "Conflicts".
4. Если имеются какие-либо конфликты модов, в левом окне будут показаны эти моды. Правое окно будет пока пустое. После объединения модов в этом окне будут показаны уже объединенные моды. Отметить галочкой моды, которые нужно объединить.

5. Нажать кнопку "Create Selected Merge".
6. Если программа все сама объединила без проблем, выскочит маленькое окошко "Conflicts" с указанием количества конфликтующих строк, в последней строчке будет написана цифра "0". В этом случае спокойно жмем "ОК". Затем выскочит еще одно окошко побольше с названием модов, которые были объединены в новый мод "mod0000_MergedFiles" . Также нажать "ОК".
7. Бывает так, что программа сама не справляется с объединением. Выбор должны сделать мы. После того, как выскочит маленькое окошко, в третьей строчке появятся цифры, показывающие, сколько строк программа не объединила и которые нужно объединить вручную. Нажать также "OK".
8. Выскочит большое окно, разделенное на 3 (бывает и 2) вертикальные колонки: A, B, C . Окно A как правило показывает строки из самой игры (оригинал), В и C - строки из объединяемым модов. Программа сама выделит конфликтующие строки желтым цветом, нужно в нижней части большого окна нажать на выделенную надпись правой кнопкой мыши и выбрать один из вариантов - В или С , т.е. какой мод предпочтителен. Иногда бывает, что нужно выбрать В и С или С и В . Если конфликтующих строк больше, чем одна, нужно пролистать ползунок нижнего горизонтального окна вниз пока не встретится опять надпись или воспользоваться стрелками в виде треугольничков на Панели инструментов, и произвести объединение. Если крайний треугольничик имеет красный цвет, то значит есть еще не объединенные строки.

9. Затем закрыть окно. Выскочит маленькое окошко, нажать "Save & Quit". Программа сделает сохранение и большое окно закроется. Также можно просто сохранить, нажав на иконку на Панели инструментов или зайдя в "Файл", а потом "Выйти".

Если объединяется несколько модов, то программа продолжит объединение дальше. Если программа отказывается записывать файлы и закрываться, значит осталась какая-то не объединенная строчка. Нужно пролистать еще раз строки в нижнем окошке и найти строку . После того, как все будет объединено, выскочит еще одно окно, показывающее, что идет слияние модов. Нажать "ОК".

10. Все объединенные моды переместятся в правое окошко.

11. Закрыть Script Merger и запустить игру. TW3 должен загрузить сначала объединенные файлы, игнорируя не объединенные версии.

Если при запуске игры выскакивают ошибки - объединение прошло неправильно или версии модов не соответствуют версии игры и не адаптированы под нее.

ВАЖНО!
Перед тем как удалить или обновить один из модов, включенных в "Merge", т.е. который объединен с каким-либо другим модом, нужно убрать объединение, поставив галочки на группе модов в правом окошке Script Merger и нажать на "Delete Selected Merge". Все моды переместятся в левое окошко. Тогда можно спокойно удалять или обновлять моды, после чего открыть Script Merger и заново объединить моды.

Пример:
Мод 1 - modFOVTweak

Мод 2 - modManualCam
content\scripts\game\cameras\combat\customCamera.ws
content\scripts\game\player\playerInput.ws
content\scripts\game\player\r4player.ws
Мод 3 - modNoWitcherSense
content\scripts\game\player\r4Player.ws

Если объединение всех 3-х версий r4Player.ws прошло успешно, Script Merger поставит объединенный скрипт r4Player.ws по умолчанию.

Новый мод - mod0000_MergedFiles
content\scripts\game\player\r4Player.ws

Новый мод начинается с "0000_" , чтобы объединенный мод загружался первым (все моды в папке "mods" находятся в алфавитном порядке), не объединенные версии будут просто игнорироваться игрой.

Чтобы отменить все слияния и возвратить моды к их исходному состоянию, нужно удалить объединенную папку "mod0000_MergedFiles".

При обновлении:
Нужно отменить слияние всех модов, папка "mod0000_MergedFiles" должна сама удалиться из паки "mods", удалить папку "Witcher Script Merger" из папки корня игры. А затем установить обновленный Script Merger, после чего запустить ярлык программы и объединить все моды заново.

Установка:
Распаковать архив и закинуть папку "Witcher Script Merger" в папку с игрой "The Witcher 3 Wild Hunt" (не в папку "Mods"). Для удобства ярлык программы можно вывести на Рабочий стол.

Удаление:
Чтобы полностью удалить Script Merger с компьютера, нужно удалить папку "Witcher Script Merger" из папки корня игры, а также сгенерированный файл MergeInventory.xml.

ДОПОЛНИТЕЛЬНО :
Иногда даже при успешном слиянии модов, при запуске игры может выскочить окошко с ошибками. Поэтому по дополнительной ссылке можно скачать скрипты , которые могут устранить эту ошибку. В этом случае нужно заменить папку scripts из игры по пути: The Witcher 3 Wild Hunt/Content/content0/ на папку scripts из архива, предварительно удалив папку scripts из игры.

Советую предварительно сделать бэкап папки scripts из игры на тот случай, если ошибка все равно будет выскакивать, чтобы вернуть игровые скрипты обратно (если она имеется в наличии).

Учебник: видео
общего пользования
(спасибо Gopher и wghost81)

Примечание: Туториал Gopher"а весьма полезен в целом, но его совет редактирования файла config Script Merge вручную не нужен, т.к. это увеличивает вероятность неправильной настройки.

Использование KDiff3
Это видео показывает пару основ KDiff3. Это видео более подробное.


Любители игры в Witcher 3: Дикая Охота с модификациями часто сталкиваются с проблемами конфликта модов, использующие одни и те же системные скриптовые файлы. В результате чего происходит либо вылет игры на стадии компиляции скриптов, либо же некоторые моды работают неадекватно! Данная утилита позволит в полу-автоматическом режиме совмещать (склеивать) различные модификации друг с другом без потери функционала!

Особенности Script Merger:
- Позволяет совмещать конфликтующие моды (от 2+) вместе в один единый мод с рабочим функционалом.
- Позволяет находить различия не только в скриптах (.ws), но и в других файлах (.bundle).
- Так же в архиве вы найдете оригинальные скрипты различных версий игры (патч 1.30, патч 1.31, патч 1.31 GOTY) для более корректной адаптации модов, где затрагиваются системные функции скриптов, которые в старших версиях отсутствуют!
- Удобный интерфейс и дизайн программы.
- Вшиты все необходимые инструменты (KDiff3, QuickBMS, wcc_lite) для распаковки/упаковки и редактирования различных форматов модификаций.

Внимание!!! По возможности старайтесь вручную вносить изменения в код (с помощью инструмента), потому как полностью автоматическое слияние может привести к конфликту кода старых патчей с новыми, будьте предельно внимательны и старайтесь "читать код", а так же предварительно сравнить изменения патча 1.30/1.31/1.31 GOTY, чтобы случайно не перенести "изменения" патчей из одной версии в другую (где их уже нет). Иначе получите баги, ошибки и краши сейвов.

Установка и использование Script Merger:

Цитата (http://modgames.net)

1) Скачайте, извлеките и запустите Script Merger.
2) Укажите путь к установленной игре в поле в самом верху.
3) Нажмите клавишу "Refresh" над списком "Conflicts".
4) При выявлении исправимых конфликтов - повторяйте данные шаги, пока конфликты не разрешатся:
- Выберете две или более версии одного файла, которые вы бы хотели объединить.
- Нажмите клавишу "Create Selected Merge".
- Если в модах нет совпадающих различий, KDiff3 может объединить их автоматически.
- Если в модах есть совпадающие различия, появится окно KDiff3 и вы сможете объединить их вручную. Детальнее это показано в видео ниже.
- Если Script Merger не найдёт оригинальной версии измененного файла, вам придется объединить моды вручную, когда появится окно KDiff3.

5)При выявлении нетекстовых конфликтов, Script Merger покажет их, но не исправит. Это значит, что один из модов в каждом конфликте “победит” и заместит остальные. Вот как выбирается победитель:
- По умолчанию, игра загружает моды в стандартном порядке: сначала цифры, затем подчеркивания, затем буквы (без учёта регистра клавиатуры).
- Вы можете клацнуть правой кнопкой мыши по одному из модов и выбрать его приоритет (от 1 до 9999, сначала загружаются меньшие числа). Об этом можно узнать больше из объяснения Kad_Venku.

6)Наслаждайтесь игрой!
7)При удалении или обновлении одного из модов, который является частью объединенного файла, Script Merger обнаружит изменение и предложит удалить поврежденный файл. Если вы обновили мод и Script Merger не предложил удалить объединенные файлы с этим модом, значит, обновление на них не повлияло.

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


Цитата (http://modgames.net)

Внимание!!! Для того чтобы в оболочке KDiff3 можно было переключать язык интерфейса замените KDiff3 0.9.98 на версию 0.9.97 (можно найти в интернете). Потому как в текущей версии утилиты ошибка с переключением языка.

Видео-гайды по использованию Script Merger:

Скриншоты интерфейса Script Merger:

P.S. Прошу вас так же обратить на то, что зачастую вам придется совмещать моды, которые имеют вкрапления в системные скрипты разных патчей. Таким образом вы можете ненароком перенести куски коды из патча младшей версии в старшую, что приведет к ошибках и крашам сейвов. Будьте внимательны и аккуратны, читайте код.

P.P.S Имейте ввиду, что многие функции могут быть изменены (лишены аргументов, либо добавлены новые) в разных патчах и поэтому моды на новых патчах могут и не работать, даже при правильном переносе. Тут уже потребуются небольшие знания в понимании структуры кода и кодинга.

Если у вас получится совместить несколько модов вместе (таким образом создать солянку) оставляйте состав и ссылки в комментариях, думаю другие пользователи сайта будут вам примного благодарны!

Если же вам удалось адаптировать мод версии 1.30 под 1.31/1.31 GOTY или же других версий дублируйте комменты в темах соответствующих модов. Возможно кому-то поможет.

Удачных адаптаций и совмещений!

Скачали : 1119 раз(а)
Размер : 55.80 MB