Script merger ведьмак 3 как настроить

Script Merger

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

Версия 0.6.5
— Исправлена ​​ошибка, из-за которой объединенная папка модов не удалялась из папки Mods при удалении всех слияний.
— Первоначальное обнаружение аргументов (это еще нигде не используется должным образом, но это некоторая фоновая работа), включая обнаружение того, когда Vortex начинает слияние.
— Исправлена ​​ошибка, из-за которой слияние скриптов приводило к сбою, если пользователь переместил свою директорию игры W3.

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

Журнал изменений:
— Добавлено меню с опциями открыть определенные файлы / папки, переупаковать объединенные bundle или выйти и запустить игру.
— Эстетичный статус-бар.
— Быстрая функциональность «Set Priority».
— Убраны флажки с отключенных модов.
— Добавлен запрос на удаление слияния, включающий отключенные моды.
— Добавлен прогресс-бар на панель задач (Windows Vista или более поздняя версия).
— Добавлены всплывающие подсказки в контекстное меню.
— Спрятан пункт контекстного меню «Select / Expand All» для правой кнопки мыши.
— Отключение отсутствующих приоритетов мода дает 9999, а самый низкий приоритет + 1.
— Добавлено ожидание пути отсутствия диалога выбора файла для устранения неисправностей.
— Исправлено: возможное обрушение конфликта разрешается в порядке загрузки всех разрушенных конфликтов.
— Исправлено: контекстное меню «Open Vanilla» было показано при отсутствующем файле ванили.
— Исправлено: неправильный цвет текста при нажатии правой кнопкой мыши и выборе флажка.
— Улучшена обработка пользовательского порядка загрузки.
— Добавлены элементы контекстного меню по установке приоритетов модов, включить/выключить, удалить из порядка загрузки.
— Конфликты, разрешающиеся в пользовательском порядке загрузки, выделяются фиолетовым цветом.
— Моды, имеющие приоритет в пользовательском порядке загрузки, выделяются серым цветом.
— Моды, отключенные в пользовательском порядке загрузки, выделяются курсивом.
— Добавлена опция автоустранения конфликтов, разрешающихся с помощью пользовательского порядка загрузки.
— Добавлена опция отключения проверки пользовательского порядка загрузки.
— Исправлены min и max ограничения приоритета в соответствии с документацией CDPR.
— Удалены опции и предложения отключения пользовательского порядка загрузки.
— Исправлено: подтверждение порядка загрузки крашилось при пустом файле mods.settings.
— Добавлена горячая клавиша F5 для обновления конфликтов.
— Переименование «unsupported» в «not mergeable».
— Допустимое исправление для смещенных иконок в отчете слияния
— Исправлено: модификация пользовательского порядка загрузки была сломана (mod0000_MergedFiles крашился и переназначал существующие приоритеты неправильно).
— Исправлено: Bundled файлы XML были интерпретированы не верно.
— Добавлена ​​поддержка для non-bundled файлов XML.
— Добавлено ​​исправление, когда модификация пользовательского порядка загрузки (файл mods.settings) не загружала в первую очередь слитые файлы.
— Переименована настройка ScriptsDirectory в VanillaScriptsDirectory, потому что для некоторых пользователей было не понятно.
— «Witcher 3 Directory» перемещен в текстовое поле над UI.
— Добавлены знак плюс, стрелка и цветной текст, чтобы отчет об объединении был более ясен.
— Добавлены всплывающие подсказки к пунктам меню Options.
— Добавлено сообщение об ошибке об отсутствующем файле сonfig.
— Исправлено: неправильные цифры прогресса при слиянии нескольких game файлов.
— Исправлено: пустая категория конфликта оставалась для обновления после разрешения конфликта за пределами Script Merger.
— Возможно исправлена ошибка, где каталог tempbundlecontent не существовал, в результате чего QuickBMS незаметно запрашивал подтверждение.
— Добавлена ​​поддержка 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
content\scripts\game\player\r4Player.ws
Мод 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 из игры на тот случай, если ошибка все равно будет выскакивать, чтобы вернуть игровые скрипты обратно (если она имеется в наличии).

Witcher Script Merger : О программе, и как пользоваться.

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

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

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

Источник

О Script Merger на русском

Что такое Script Merger и с чем его едят.

Script Merger by AnotherSymbiote — это утилита для устранения конфликтов между скриптовыми и xml модами путём объединения конфликтующих файлов в один.

Даже очень разные моды могут менять один и тот же исходный файл (игровой скрипт или файл с описаниями предметов), но в совершенно разных местах. Движок Ведьмака 3 не очень приспособлен для работы с модами и в случае конфликта он просто использует тот файл (скрипт или описание), который загрузится первым. Все изменения другого мода при этом будут потеряны: в лучшем случае это приведёт к ошибкам компиляции и игра откажется запускаться, а в худшем — игра запустится, но какие-то из модов будут работать неправильно.

До появления Script Merger конфликты между модами игроки устраняли вручную, сравнивая различные скрипты и xml в текстовом редакторе или WinMerge и прочих подобных программах. Практически, для рядового пользователя, не разбирающегося в программировании, установка более одного мода была мучительной и долгой задачей.

Script Merger использует утилиту kdiff3 для сравнения исходного (ванильного) и нескольких модифицированных файлов и объединения всех изменений в один файл. Объединённый файл помещается в специальный “мод” (mod0000_MergedFiles), имеющий наивысший приоритет, который затем используется игрой как основной — все остальные файлы с таким же именем игнорируются.

Для установки Script Merger’а его надо скачать с Нексуса и распаковать содержимое архива в любое удобное место, например, “D:\Witcher-3-Modding\Witcher-3-Script-Merger\”. Не надо устанавливать мержер в “Program Files” или в другие системные папки! Можно установить его в папку с игрой и даже в папку с модами, но лучше, всё-таки завести отдельную от всего папку для утилит.

Читайте также:  Алюминиевые радиаторы отопления не работает

После распаковки необходимо запустить файл “WitcherScriptMerger.exe” и указать путь к игре:

Далее, рекомендуется открыть “Меню -> File -> Dependency Locations” и убедиться, что все вспомогательные утилиты у вас присутствуют (пути должны быть зелёными):

Следующий шаг — настройки, которые расположены в “Меню -> Options”:

  • “Show Status Bar” — статусная строка в самом низу окошка, рекомендуется включить.
  • “Merging…” — рекомендуется отключить всё, чтобы ускорить процесс объединения, особенно, если в программировании и моддинге вы особо не разбираетесь — всё равно эти сообщения не будут вам полезны. Однако, если что-то ломается и вы не можете понять, почему программа не объединяет ваши моды, все галочки, кроме “Review Each Merge”, рекомендуется включить. “Review Each Merge” имеет смысл включать, если вы разбираетесь в моддинге и желаете лично проверять все объединения, даже те, которые прошли нормально на автомате.
  • “Refreshing Conflicts” — включить всё, кроме “Check Non-Bundled XML Files” — эта фича программы НЕ работает и является постоянным источником недопонимания! В подменю “Auto-Collapse Tree If…” рекомендуется всё отключить, чтобы не было проблем с “потерявшимися” конфликтами.

В окошке “Conflicts” отображаются найденные конфликты, кнопка “Refresh” обновляет окошко.

Аналогично, в окошке “Merges” отображаются объединённые моды, кнопка “Refresh” обновляет окошко.

Ветка “Scripts” показывает конфликты в игровых скриптах. Для их устранения (объединения модов) необходимо выделить соответствующий файл (или все скрипты сразу) и нажать кнопку “Create Selected Merge” внизу:

В случае успешного объединения появится вот такое окошко:

Если объединяется несколько модов, то и окошек будет несколько — они будут появляться последовательно, после того, как вы нажмёте “OK”.

Если же программа не смогла устранить конфликты самостоятельно — запустится kdiff3, где вам предложено будет устранить конфликты вручную.

Ветка “Bundled Text” объединяется аналогично, но объединение занимает больше времени, т.к. необходимо распаковывать и запаковывать файлы (бандлы).

Ветка “Bundled Non-text — Not Mergeable” носит чисто информационный характер: вы можете увидеть конфликты между, например, текстурами, но объединить их не сможете — в этом случае или решайте, какой мод вам важнее, или обращайтесь к инструкции/автору — часто, например, для модов меню, авторы предоставляют специальные файлы совместимости под конкретные моды.

Иногда автор мода рекомендует установить конкретный приоритет при использовании его/её мода с другими модами. Например, при использовании Ghost Mode и Preparations первый должен иметь больший приоритет.

Установка приоритета делается в контекстном меню, которое вызывается при клике правой кнопкой мыши на названии мода — не важно, в каком именно дереве, важно только выбрать правильный мод:

Установка приоритета “1” заставит мод загружаться самым первым:

По-умолчанию, игра загружает моды в алфавитном порядке, поэтому альтернативный способ ручной установки приоритета заключается в переименовании мода. Например, если вы хотите, чтобы мод “modNotSoCoolMod” загружался перед “modAVeryCoolMod“, переименуйте “modNotSoCoolMod” в “modAAANotSoCoolMod” или же переименуйте “modAVeryCoolMod” в “modZZZAVeryCoolMod“. Заморочено? Тогда используйте Script Merger 😉

Для удаления объединений надо выделить соответствующий файл (или всю ветку) в правом окошке и нажать “Delete Selected Merge”:

Ещё одна полезная фича — возможность открыть объединённый файл в редакторе: для этого кликните правой кнопкой мыши на объединённом файле в окошке справа и выберите “Open Merged File”:

Следует помнить, что Script Merger — это не панацея и всё зависит от автора мода и того, насколько он/она позаботились о возможных конфликтах. Кроме того, некоторые моды просто невозможно объединить: если вы пытаетесь установить, например, два принципиально разных мода на алхимию, не жалуйтесь, что объединение не работает — моды эти вполне могут менять одни и те же скрипты/описания, но по-разному.

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

Источник

Оцените статью