Script Merger

Script Merger is a mod for The Witcher 3: Wild Hunt. The mod detects conflicts between mods and helps you resolve them, either by creating merged files that override the conflicting ones, or by configuring a custom load order for your mods. Merges are easy to undo because they don't change the original mod or game files. Depending on your mods, some merges may require basic understanding of code.

About
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 and can break mods. Script Merger tries to make the problem less painful.

Despite the name, Script Merger detects mod conflicts in .bundle packages as well as .ws scripts. Then, it helps you resolve them by creating merged versions of conflicting text files. It leaves the original files untouched, but overrides them. It can't merge non-text conflicts, but for these it can help you manage your custom load order (mods.settings file) to make certain mods override others.

Instructions
When merging, KDiff3 simply does a text merge. In many cases, that works fine. But because the tool doesn't actually understand the code, sometimes it can merge things in the wrong order. Auto-resolved conflicts aren't guaranteed to be correct. In these cases, it needs human help.

Also, script mods can have logic conflicts that the tool can't detect. In these cases, even if the text can merge without direct conflicts, the resulting script won't work properly. For example, if Mod A tries to hide the HUD, but then Mod B displays the HUD, Mod A won't work. Resolving this also requires human help.

1) Download, extract, & launch Script Merger.

2) Enter your game's installation path in the textbox at the top.

3) Click "Refresh" button above the "Conflicts" list.

4) If mergeable conflicts are detected, repeat these steps until the conflicts are resolved:
 * > Choose 2 or more versions of any file(s) to merge.
 * > Click "Create Selected Merge" button.
 * > If the mods have differences that don't overlap, KDiff3 can merge them automatically.
 * > If the mods have differences that overlap, KDiff3 will appear so you can merge them manually. See below for tutorial videos.
 * > If Script Merger can't find the vanilla version of the modded file, you must merge all differences manually when KDiff3 appears.

5) If non-text conflicts are detected, Script Merger displays them but can't merge them.  So, one of the mods in each conflict will "win" & override the others.  Here's how the winner is decided:
 * > By default, the game loads mods in order of folder names — numbers first, then underscores, then letters (not case-sensitive).
 * > Or, you can right-click one of the mods to set its priority (1 to 9999, lower number loads first).

6) Play!

7) When you uninstall or update one of the mods included in a merge, Script Merger will detect the change & prompt you to delete affected merges. If you update a mod & Script Merger doesn't prompt you delete any of that mod's merges, then they weren't affected by the update.