Script merger ведьмак 3 как пользоваться
When you have multiple mods that modify the same game file, TW3 only loads 1 of the modded versions of that file, overriding all over versions. This kind of conflict is common & can break mods. Script Merger tries to make the problem less painful.
Uses these 3rd-party external tools:
- KDiff3 by Joachim Eibl, for merging text files.
- QuickBMS by Luigi Auriemma, for scanning & unpacking .bundle files.
- wcc_lite by CD Projekt RED, for packing merged text files into .bundle files.
1) Download, extract, & launch Script Merger.
Using KDiff3
This video shows a couple KDiff3 basics. This video goes a bit more in-depth.
Witcher 3 "Script Merger - исправление ошибок в модах"
Script Merger — это буквально самая необходимая программа для The Witcher 3: Wild Hunt, если вы используете модификации. При установке сразу нескольких модов к игре существует огромная вероятность того, что они могут вам сломать игру и вызвать ошибку или просто моды не будут работать как положено. Проблема серьезная и очень распространенная, но легко исправляется с помощью Script Merger.
Проблема возникает из-за того, что разные моды ссылаются один и тот же файл в игре. Самостоятельно движок игры не может разрешить конфликт, а авторы модов просто физически не могут учесть все вышедшие моды к игре. Тут на помощь и приходит стороння программа, которые без сложных манипуляций способна устранить все ошибки и заставить работать все ваши моды.
Script Merger сканирует все установленные модификации к игре и обнаруживает конфликты, которые они вызывают в .ws скриптах и .bundle пакетах. После обнаружения проблемы она может автоматически создать объединенный файл для решения конфликта и запустить в работу все моды. Утилита способна автоматически решать множество проблем, как технических модах, так и текстурных. В самых серьезных конфликтах, где автоматическая система не справляется, вам будет предложено решить проблему через редактор кода.
Script Merger состоит из:
- KDiff3 от Joachim Eibl – объединяет текстовые файлы.
- QuickBMS от Luigi Auriemma - сканирует и распаковывает .bundle файлы.
- wcc_lite от CD Projekt RED – упаковывает объединенные XML в .bundle файлы.
Гайды по использованию:
- Распакуйте архив в любое удобное для вас место. После первого запуска программы укажите путь к игре
Steam-версия - \Steam\steamapps\common\The Witcher 3.
GOG-версия - \GOG\The Witcher 3 Wild Hunt. - Основное окно программы разделено на две части
- Если какие-либо конфликты модов будут обнаружены, они отобразятся в левом окне. В правом окне отображаются моды, которые прошли автоматическое слияние.
- Отметьте галочкой моды, которые нужно объединить и нажмите "Create Selected Merge". Отменить слияние можно будет в правом окне, нажав на "Delete Selected Merge".
- Если программа успешно провела автоматическое исправление, выскочит маленькое окошко "Conflicts" с указанием количества конфликтующих строк, в последней строчке будет написана цифра "0". В этом случае можно смело наживать "ОК". Затем выскочит еще одно окошко побольше с названием модов, которые были объединены в новый мод "mod0000_MergedFiles". Также нажать "ОК".
Иногда программа может не справится с объединением. В таких случаях исправления должны вносить вы. После того, как выскочит маленькое окошко, в третьей строчке появятся цифры, показывающие, сколько строк программа не объединила и которые нужно объединить вручную. Нажать также "OK".
- Выскочит большое окно, разделенное на 3 (бывает и 2) вертикальные колонки: A, B, C. Окно A как правило показывает строки из самой игры (оригинал), В и C - строки из объединяемым модов. Программа сама выделит конфликтующие строки желтым цветом, нужно в нижней части большого окна нажать на выделенную надпись <Merge Conflict> правой кнопкой мыши и выбрать один из вариантов - В или С, т.е. какой мод предпочтителен. Иногда бывает, что нужно выбрать В и С или С и В. Если конфликтующих строк больше, чем одна, нужно пролистать ползунок нижнего горизонтального окна вниз пока не встретится опять надпись <Merge Conflict> или воспользоваться стрелками в виде треугольничков на Панели инструментов, и произвести объединение. Если крайний треугольничик имеет красный цвет, то значит есть еще не объединенные строки.
- Затем закрыть окно. Выскочит маленькое окошко, нажать "Save & Quit". Программа сделает сохранение и большое окно закроется. Также можно просто сохранить, нажав на иконку на Панели инструментов или зайдя в "Файл", а потом "Выйти".
Если объединяется несколько модов, то программа продолжит объединение дальше. Если программа отказывается записывать файлы и закрываться, значит осталась какая-то не объединенная строчка. Нужно пролистать еще раз строки в нижнем окошке и найти строку <Merge Conflict>. После того, как все будет объединено, выскочит еще одно окно, показывающее, что идет слияние модов. Нажать "ОК". - Все объединенные моды переместятся в правое окошко.
После исправления всех конфликтов можно закрыть Script Merger и запусткать игру. TW3 должен загрузить сначала объединенные файлы, игнорируя не объединенные версии.
Важно! Автор утилиты не советует в ручную вводить исправление в код игры. Программа полностью автоматизирована, если простое слияние и замена код через неё не помогли вам, с этим и вы не справитесь.
Script Merger
Версия 0.6.5
- Исправлена ошибка, из-за которой объединенная папка модов не удалялась из папки Mods при удалении всех слияний.
- Первоначальное обнаружение аргументов (это еще нигде не используется должным образом, но это некоторая фоновая работа), включая обнаружение того, когда Vortex начинает слияние.
- Исправлена ошибка, из-за которой слияние скриптов приводило к сбою, если пользователь переместил свою директорию игры W3.
Версия 0.6.2
- Добавлено распознавание в обновлении слияния исходных файлов и базовой строки для удаления пораженного слияния.
- Добавлена валидация mods.settings.
- Заново добавлена информация о выполнении в файле config. Надеюсь TypeLoadException избежит при пуске.
- Исправлено: ложная ошибка "missing file" после успешного пакетного слияния 3+ модов.
- Исправлено: пункт меню "Dependency Locations" перестал работать в 0.6.1.
- Исправлена ошибка: сбой при попытке открыть относительные пути к файлу.
- Исправлено: отключены флажки модов в некоторых ситуациях.
Что делает 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 не будет работать. В таком случае объединение нужно произвести также вручную.
5. Нажать кнопку "Create Selected Merge".
6. Если программа все сама объединила без проблем, выскочит маленькое окошко "Conflicts" с указанием количества конфликтующих строк, в последней строчке будет написана цифра "0". В этом случае спокойно жмем "ОК". Затем выскочит еще одно окошко побольше с названием модов, которые были объединены в новый мод "mod0000_MergedFiles". Также нажать "ОК".
7. Бывает так, что программа сама не справляется с объединением. Выбор должны сделать мы. После того, как выскочит маленькое окошко, в третьей строчке появятся цифры, показывающие, сколько строк программа не объединила и которые нужно объединить вручную. Нажать также "OK".
8. Выскочит большое окно, разделенное на 3 (бывает и 2) вертикальные колонки: A, B, C. Окно A как правило показывает строки из самой игры (оригинал), В и C - строки из объединяемым модов. Программа сама выделит конфликтующие строки желтым цветом, нужно в нижней части большого окна нажать на выделенную надпись <Merge Conflict> правой кнопкой мыши и выбрать один из вариантов - В или С, т.е. какой мод предпочтителен. Иногда бывает, что нужно выбрать В и С или С и В. Если конфликтующих строк больше, чем одна, нужно пролистать ползунок нижнего горизонтального окна вниз пока не встретится опять надпись <Merge Conflict> или воспользоваться стрелками в виде треугольничков на Панели инструментов, и произвести объединение. Если крайний треугольничик имеет красный цвет, то значит есть еще не объединенные строки.
9. Затем закрыть окно. Выскочит маленькое окошко, нажать "Save & Quit". Программа сделает сохранение и большое окно закроется. Также можно просто сохранить, нажав на иконку на Панели инструментов или зайдя в "Файл", а потом "Выйти".
Если объединяется несколько модов, то программа продолжит объединение дальше. Если программа отказывается записывать файлы и закрываться, значит осталась какая-то не объединенная строчка. Нужно пролистать еще раз строки в нижнем окошке и найти строку <Merge Conflict>. После того, как все будет объединено, выскочит еще одно окно, показывающее, что идет слияние модов. Нажать "ОК".
10. Все объединенные моды переместятся в правое окошко.
11. Закрыть Script Merger и запустить игру. TW3 должен загрузить сначала объединенные файлы, игнорируя не объединенные версии.
Если при запуске игры выскакивают ошибки - объединение прошло неправильно или версии модов не соответствуют версии игры и не адаптированы под нее.
ВАЖНО!
Перед тем как удалить или обновить один из модов, включенных в "Merge", т.е. который объединен с каким-либо другим модом, нужно убрать объединение, поставив галочки на группе модов в правом окошке Script Merger и нажать на "Delete Selected Merge". Все моды переместятся в левое окошко. Тогда можно спокойно удалять или обновлять моды, после чего открыть Script Merger и заново объединить моды.
Если объединение всех 3-х версий r4Player.ws прошло успешно, Script Merger поставит объединенный скрипт 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)
Использование KDiff3
Это видео показывает пару основ KDiff3. Это видео более подробное.
Script Merger
Версия 0.6.5
- Исправлена ошибка, из-за которой объединенная папка модов не удалялась из папки Mods при удалении всех слияний.
- Первоначальное обнаружение аргументов (это еще нигде не используется должным образом, но это некоторая фоновая работа), включая обнаружение того, когда Vortex начинает слияние.
- Исправлена ошибка, из-за которой слияние скриптов приводило к сбою, если пользователь переместил свою директорию игры W3.
Версия 0.6.2
- Добавлено распознавание в обновлении слияния исходных файлов и базовой строки для удаления пораженного слияния.
- Добавлена валидация mods.settings.
- Заново добавлена информация о выполнении в файле config. Надеюсь TypeLoadException избежит при пуске.
- Исправлено: ложная ошибка "missing file" после успешного пакетного слияния 3+ модов.
- Исправлено: пункт меню "Dependency Locations" перестал работать в 0.6.1.
- Исправлена ошибка: сбой при попытке открыть относительные пути к файлу.
- Исправлено: отключены флажки модов в некоторых ситуациях.
Что делает 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 не будет работать. В таком случае объединение нужно произвести также вручную.
5. Нажать кнопку "Create Selected Merge".
6. Если программа все сама объединила без проблем, выскочит маленькое окошко "Conflicts" с указанием количества конфликтующих строк, в последней строчке будет написана цифра "0". В этом случае спокойно жмем "ОК". Затем выскочит еще одно окошко побольше с названием модов, которые были объединены в новый мод "mod0000_MergedFiles". Также нажать "ОК".
7. Бывает так, что программа сама не справляется с объединением. Выбор должны сделать мы. После того, как выскочит маленькое окошко, в третьей строчке появятся цифры, показывающие, сколько строк программа не объединила и которые нужно объединить вручную. Нажать также "OK".
8. Выскочит большое окно, разделенное на 3 (бывает и 2) вертикальные колонки: A, B, C. Окно A как правило показывает строки из самой игры (оригинал), В и C - строки из объединяемым модов. Программа сама выделит конфликтующие строки желтым цветом, нужно в нижней части большого окна нажать на выделенную надпись <Merge Conflict> правой кнопкой мыши и выбрать один из вариантов - В или С, т.е. какой мод предпочтителен. Иногда бывает, что нужно выбрать В и С или С и В. Если конфликтующих строк больше, чем одна, нужно пролистать ползунок нижнего горизонтального окна вниз пока не встретится опять надпись <Merge Conflict> или воспользоваться стрелками в виде треугольничков на Панели инструментов, и произвести объединение. Если крайний треугольничик имеет красный цвет, то значит есть еще не объединенные строки.
9. Затем закрыть окно. Выскочит маленькое окошко, нажать "Save & Quit". Программа сделает сохранение и большое окно закроется. Также можно просто сохранить, нажав на иконку на Панели инструментов или зайдя в "Файл", а потом "Выйти".
Если объединяется несколько модов, то программа продолжит объединение дальше. Если программа отказывается записывать файлы и закрываться, значит осталась какая-то не объединенная строчка. Нужно пролистать еще раз строки в нижнем окошке и найти строку <Merge Conflict>. После того, как все будет объединено, выскочит еще одно окно, показывающее, что идет слияние модов. Нажать "ОК".
10. Все объединенные моды переместятся в правое окошко.
11. Закрыть Script Merger и запустить игру. TW3 должен загрузить сначала объединенные файлы, игнорируя не объединенные версии.
Если при запуске игры выскакивают ошибки - объединение прошло неправильно или версии модов не соответствуют версии игры и не адаптированы под нее.
ВАЖНО!
Перед тем как удалить или обновить один из модов, включенных в "Merge", т.е. который объединен с каким-либо другим модом, нужно убрать объединение, поставив галочки на группе модов в правом окошке Script Merger и нажать на "Delete Selected Merge". Все моды переместятся в левое окошко. Тогда можно спокойно удалять или обновлять моды, после чего открыть Script Merger и заново объединить моды.
Если объединение всех 3-х версий r4Player.ws прошло успешно, Script Merger поставит объединенный скрипт 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)
Использование KDiff3
Это видео показывает пару основ KDiff3. Это видео более подробное.
Читайте также: