If you want to merge two base_scripts files, first unpack them to different folders. (for example base1 and base2)
Then, you should know which files they change. If they change different files of the game, copy every file that base2 changes to base1 and replace them. Then pack base1\base_scripts to [your Witcher 2 directory]\CookedPC. For example, if the first one changes player.ws and the second actor.ws, all you need to do is copy actor.ws from the second base_scripts to the first one and replace it, then pack and install the first one.
But here is the tricky part, if both base_scripts change same game files, you need to download a tool like WinMerge (https://winmerge.org/downloads) and merge them together. For example, if they both change different lines of the player.ws script, WinMerge lets you see the differences of the two files and lets you merge them to a single player.ws with both changes. Then obviously copy the merged file to any of the base_scripts and replace it. Then pack and install.
How does unpacking them let me know which files they change? This may be a stupid question, however; you say if they change different files then all I need to do is overwrite base 1 with the files base 2 changes. But how do I know exactly which of those files each one changes or not?
If you want to know the specific files that are changed by a mod, sometimes you can find it documented on the mod's page, or its comments. If that's not the case, you can compare the hashes of the files with the original Witcher 2 files. Or alternatively, unpack the original Witcher 2 files, mod1 and mod2 files and use WinMerge (https://winmerge.org/downloads) to compare the modded files with the originals.
Why does the program failing at decoding file with russian localization? It shows following info in cmd (first line says this method is not supported) Необработанное исключение: System.NotSupportedException: Указанный метод не поддерживается. в(in) Gibbed.RED.FileFormats.StringsFile.GetRealKey(UInt32 fileKey) в(in) Gibbed.RED.FileFormats.StringsFile.Deserialize(Stream input) в(in) Gibbed.RED.Strings.Program.Main(String[] args) I need this text so much for my bachelor thesis
Damn, I could have used a GUI for gibbed tools a while ago.. Either way better late than never, the mod will most likely help other newer modders with merging. Thanks for making the GUI!
This mods contains several .exe files, which is why I think Nexus Mods automatically quarantined it upon upload. I checked my own file at Virus Total and zero vendors flag it as suspicious lol. I already requested them to manually take a look at it and it should be downloadable later today. (maybe?)
Edit: Thanks to Eric from Nexus Mods, the virus scan status has been corrected.
15 comments
Then, you should know which files they change. If they change different files of the game, copy every file that base2 changes to base1 and replace them. Then pack base1\base_scripts to [your Witcher 2 directory]\CookedPC. For example, if the first one changes player.ws and the second actor.ws, all you need to do is copy actor.ws from the second base_scripts to the first one and replace it, then pack and install the first one.
But here is the tricky part, if both base_scripts change same game files, you need to download a tool like WinMerge (https://winmerge.org/downloads) and merge them together. For example, if they both change different lines of the player.ws script, WinMerge lets you see the differences of the two files and lets you merge them to a single player.ws with both changes. Then obviously copy the merged file to any of the base_scripts and replace it. Then pack and install.
How does unpacking them let me know which files they change? This may be a stupid question, however; you say if they change different files then all I need to do is overwrite base 1 with the files base 2 changes. But how do I know exactly which of those files each one changes or not?
It shows following info in cmd (first line says this method is not supported)
Необработанное исключение: System.NotSupportedException: Указанный метод не поддерживается.
в(in) Gibbed.RED.FileFormats.StringsFile.GetRealKey(UInt32 fileKey)
в(in) Gibbed.RED.FileFormats.StringsFile.Deserialize(Stream input)
в(in) Gibbed.RED.Strings.Program.Main(String[] args)
I need this text so much for my bachelor thesis
This will help anyone modding a lot and resolve conflict.
Thank you nmus1178.
Edit: Thanks to Eric from Nexus Mods, the virus scan status has been corrected.