[WIP] Witcher 3 Mod Merger

+
Another solution - try to find and delete all texture.cache files which have 0 bytes size (like all mods from your list except LoTR). It will force Merger to skip the Uncooking stage (theoretically it is not necessary for such mods) and just unpack (the same way as QuickBMS does) and merge them. Tried this method with your troublemaking mods and it works too.
I did not know the .cache files were empty.I'm gonna try it out,maybe this was the problem.
 
Path length limit is 256 symbols I guess so it is better to uncook mods into something like D:\Uncooked rather than D:\<long folder structure here>\Uncooked because packed files might have long folder structure too and there must be a reserve :)

Another solution - try to find and delete all texture.cache files which have 0 bytes size (like all mods from your list except LoTR). It will force Merger to skip the Uncooking stage (theoretically it is not necessary for such mods) and just unpack (the same way as QuickBMS does) and merge them. Tried this method with your troublemaking mods and it works too.

hey DJ, makimoto had the same issue as I did. It turns out, I hadn't updated to the latest version of modkit. I only had the original one. Once i installed the latest version everything worked perfectly. I haven't had an infinite uncooking error since.

---------- Updated at 06:37 AM ----------

Oh, one more thing. Why is is that some of the mods I have don't show up in the merge list? I have a mod that makes avallach the size of the aen elle like he should be, but it doesn't show up in the list, or the actual game.
 
hey DJ, makimoto had the same issue as I did. It turns out, I hadn't updated to the latest version of modkit. I only had the original one. Once i installed the latest version everything worked perfectly. I haven't had an infinite uncooking error since.
Thanks, that is a quite useful info :)


Oh, one more thing. Why is is that some of the mods I have don't show up in the merge list?
It means that the mod is not mergeable. To show in the list it must have both *.bundle and metadata.store files
 
hey DJ, makimoto had the same issue as I did. It turns out, I hadn't updated to the latest version of modkit. I only had the original one. Once i installed the latest version everything worked perfectly. I haven't had an infinite uncooking error since.
Yeah,seems like empty texture.cache files and an outdated ModKit don't get along.
 
Greetings : ) I really want to thank DJ_Kovrik for this wonderful tool, as I was waiting for quite awhile for someone to make a tool that simplifies the otherwise tedious mod-merging process. After the recent 1.30 update it apparently takes less mods than before to trigger the infinite loading screen, so this came out right on time for me. I just merged over a dozen texture mods without any issues! Thanks a bunch, and keep up the great work ; )
 
Okay, I know this thread is an older thread, but I do have a question. Is there something that could cause some merged mods to work, while others do not? There were no conflicts reported when I clicked on "Conflicts" with all the recommended mods were chosen, so I am stumped on what could be causing some of them to not work.
 
DontBlnkBadWolf;n9286241 said:
Is there something that could cause some merged mods to work, while others do not?
Yes, I mentioned that in the FAQ section on Nexus page. Some texture mods can not be merged because wcc can't unpack them properly.
 
Okay, I was on your Nexus page and had just the FAQ post and your top post showing. I didn't see until just now that you are currently answering questions on your page, lol. Some do not respond any more, which is why I asked the question here.

Is this the one you are talking about?

" Q: I can't merge mod X into my mods setup, what's wrong?
A: Just keep in mind that if mod author used texture groups unpacking feature from the latest ModKit update it is likely that such mod can't be merged. The most well known example are mods from ramccoid so please check this list as a first step, also some users had problems with Realistic Contrast Textures merging."

I was taking it as just for HIS mods, not all in general, when it clearly is worded as an example. Sometimes you read just what you want to read and nothing else, *sigh*.

So that was a silly question I asked then. My fault, sorry.
 
Marcin_89.683 well first off you cant merge script mods with Mod Merger only textures, mesh, fx (particle) files can be merged. Also no mods by Ramccoid can be merged except blood and weather mods. HD textures like Ultra High Definition or HD reworked Project cant be merged unless you know what to look for to remove the bad textures so its best not to merge those. Try not to merge mods with xml files as well leave that for script merger. RCT aka real contrast textures can not be merged as well.
 
^this. Try clicking on ‘recommended’ and then un-tick according to what willief just said.
 

Guest 3841499

Guest
willief23;n9857741 said:
Marcin_89.683 well first off you cant merge script mods with Mod Merger only textures, mesh, fx (particle) files can be merged. Also no mods by Ramccoid can be merged except blood and weather mods. HD textures like Ultra High Definition or HD reworked Project cant be merged unless you know what to look for to remove the bad textures so its best not to merge those. Try not to merge mods with xml files as well leave that for script merger. RCT aka real contrast textures can not be merged as well.

It ALL can be merged, except for ramccoid's packs and Ultra High Definition pack. The rest just needs to be separated into 2 parts:
1. Textures-only
2. Meshes, mesh buffers, FX files, templates, etc.

The reason to that is that non-texture-related errors in meshes or FX files or whatever else, do not get uncooked by Mod Merger, as long as, there is no texture cache file. Instead, they get unpacked by QuickBMS, which ignores all the errors and allows for merging without issues. I am writing a small guide on how to do this, but its fairly simple. This also can save a ton of time. For example, Novigrad Reloaded mod comes with 0KB texture.cache file that is there to fully uncook meshes (longer process for this mod, takes up a TON of extra space!), but you can delete this file and meshes will be simply unpacked (no loss in quality or function).

Please understand the difference between Cooking/Uncooking and Packing/Unpacking. This may not be the technical explanation, but basically, from my understanding, Cooking means COMPRESSING. AFAIK, only meshes and textures get compressed. Textures get compressed into texture.cache file, but meshes and mesh buffers simply get compressed and packed into blob.bundle and buffers.bundle. Packing/Unpacking also compresses and bundles cooked XBM texture files (they are simply "placeholder files" that tell blob.bundle packs which textures were cooked into texture.cache file and are created during cooking process). DDS files are exception and they don't get related Cooked XBM files when packed correctly.

Please note that Uncooked meshes may get WCC errors regarding CRC Header and Corruption. These error do not show up for UnPACKED meshes, which Mod Merger UnPACKS if no texture.cache file is present. Having CRC Errors during UnCOOKING does not mean those meshes are broken or non-functional, but they cannot be Cooked and can only be Packed.

Uncooking also unpacks certain files that can only be packed, such as many FX files, corrupt mesh files, corrupt mesh file buffers, some other file types. That does not mean those files should be Cooked and often they won't cook at all due to WCC errors, which is why you should only pack them. The same way Cooking also packs certain files, but you need to keep them separate.

When searching and deleting specific file types, don't do it the tedious way of going folder-by-folder. Use soft like Everything - https://www.voidtools.com/ to search for files and file types, like TGA, within a specific directory, BUT do note that those files are in different sub-directories and if you plan to just copy/paste all listed in Everything into one directory, then don't expect things to work! Each file has its own specific directory that all mods use!

DJ Kovrik and others - PLEASE READ and PM me with corrections because I don't know all the technical stuff, only functional, and there may be some mistakes!

Hell, here's the short version of the "Let's Merge That Non-Mergeable Stuff" guide, which is not only good for mod fans, but for courteous modders who value their fans and understand the importance of making their mod Mod-Merger-friendly, but does include "cleaning-up" COMPILATION and/or Ultra High Definition Pack info (for now):
0. Get ModKit 1.3 + patched wcc_lite.exe, QuickBMS, W3Oven, and Mod Merger
1. With W3Oven, fully Uncook the game (all content0-12 directories and DLC directories) to whichever directories you wish (I'd keep DLC and main game separate) to know how game files are structured
2. With QuickBMS, fully Unpack the all blob.bundles and buffer bundles into same exact directories, where you Uncooked the game, BUT when ask to overwrite files - select "No for all" option (S button, I think) to know ow game files are structured
3. Create 2 directories - Textures (for Textures-only portion of the mod) and Other (for meshes, FX files, template files, XML files, etc.) and in each one create 5 subdirectories - Cooked-Raw (or Uncooked-Backup, just different from Cooked), Cooked, Modded, Uncooked-Raw (or Uncooked-Backup, just different from Uncooked), Uncooked
4. UnCOOK mod into Uncooked-Raw directory (or whichever other name, just don't use Modded directory or Uncooked directory) - this is going to be your backup folder and I suggest not messing with it until you know all cooked/merged/worked as it should, copy-all log entries and SAVE log file
5. Go through the log file, search for key-word "fail" and take note of all failures, except for the ones related to cookdb.dll file
6. Copy-paste all files from Uncooked-Raw into Uncooked directory
7. Delete all TGA files, and all non-XBM files from Uncooked-directory, including mesh files (unless you plan to mod them, in which case modded once stay in Uncooked directory, but this isn't part of this Merging Guide)
8. Delete ALL files that the log reported with "failed" error (failed to find cached TGA texture, failed MipMap Level0-11 texture, corrupted mesh, FX files, etc) EXCEPT for Proxy XBM files, which do not get TGA files and I have no idea how to modify them (yet!)
9. If you plan to modify textures or create new ones - place the TGA texture files you want to modify in Modded directory (in appropriate subdirectory of course, the one you can find out from fully uncooked game directory), UNLESS you want to modify DDS-only vegetation files, in which case modified DDS textures go directly into Uncooked folder and SRT files for those vegetation DDS files found in uncooked vanilla game (or modded ones) must be placed in appropriate Cooked directory, same on used in Uncooked directory
10, Use QuickBMS to unPACK blob.bundle files and buffer.bundle files into Cooked-Raw/Cooked-Backup, copy all contents into Cooked directory
11. Delete all of those XBM placeholder files, EXCEPT the ones that get UnPACKED TGA files, means those textures should-have-been, but weren't Cooked, and were only Packed, which is also why they are usually larger-in-size than Cooked XBM "placeholder" files
12. Place UnPACKED TGA texture files into appropriate Modded subdirectory and place same-file-name UnPACKED textures into Uncooked directory to have those textures cooked properly and of course any UnPACKED DDS files must also be moved into Uncooked directory
13. Now make sure that both large Textures and Other directories with those 5 sub-directories have identical files
13X. This is the stage at which you should remove mesh, mesh buffers, TGA and XBM files for items you do not like and do not want
13XY. This is also the stage at which you should prioritize wanted texture files and remove de-prioritized overlapping conflicting texture files to prevent "Mip Level failed to cache" error as I know no other way to resolve it...
14. For Textures directory / portion of the Mod, delete ALL files from Cooked directory and use W3Oven to cook and pack your Textures-only-portion of the mod, which will mostly Cook textures, and only Pack texture "placeholder" files
15. Save log, review log for errors, clean Cooked folder completely again and recook again if any errors found without files that caused those errors (with exception of Proxy XBM files that do not get cached)
16. Uncook what you just cooked and if any errors found, clean Cooked folder yet again, recook Textures-only portion of the mod until it cooks and uncooks clean without errors, except for Proxy XBM texture files
17. For your Other portion of the mod, delete ALL "placeholder" XBM files that you deleted in Textures portion of the mod, except for Proxy XBM files, then delete ALL files from Uncooked directory
18. Use W3Oven to cook and pack Other portion of the mod, but if all the above is done correctly - W3Oven will ONLY pack/compress files, not cook them and any possibly resulting 0KB texture.cache file must be deleted
19. Do this for all mods that are not merge-friendly and/or show errors during in Mod Merger log, which should result in ZERO "failed" entries, except for cookeddb fle and/or Proxy XBM files and all mods (files within them) should be fully functional

Extra notes/steps:
20. Just to save yourself time and space during merging process, you can separate large no-error mods with meshes + textures and buffer files the same way and of course any 0KB texture.cache file is best deleted for the same reasons
21. You can do the same with DLC's
22. Some mods with HEALTHY meshes do not come with buffer files, which should always be included in mods with mesh files and for those healthy meshes buffer files can be created, but they must be UnCOOKED and ReCOOKED, then, after buffer files were generated, these mods can be packed/unpacked
23. AFAIK, to actually work with meshes, UnCOOKED versions must be used, but I have no idea whether "CRC Corupted" meshes should be used in unpacked form or uncooked form or whether they are one and the same...

P.S. I am repeating myself here, but explaining a bit further. Mods that use DDS files for vegetation, like "Probably best not providing exact mod names" can also be merged, as long as, they are packed correctly. The secret to accurately cooking and packing DDS files into merge-friendly is by using ONLY full quality DDS files and placing them in Uncooked directory ALONG WITH vanilla .SRT files that exist in vanilla directories for those DDS-only textures. That's it - you get a perfectly functional and merge-friendly pack from there. You can do it with such mods if they packed full quality DDS files + cooked them, but for those who did not pack them and only cooked, you need original full quality DDS files, which some modders did not release to public. AFAIK, all DDS vegetation mods on Nexus FULLY FUNCTIONAL and GREATLY APPRECIATED, but none are cooked correctly and none are merge-able... How do I know this? Vanilla game UnCOOKS DDS files, does not UnPACK those files, does not use any TGA or XBM for those files, and it obviously was all merged together! That and I've personally tested the described method of cooking over and over and over again, stand-alone and merged, and it always worked, on several PC's.

To add some complexity: Within texture.cache, XBM/TGA files all get converted to DDS files because that is the file type used for textures in games, but that does not negate anything I stated earlier and no, I don't know why the whole TGA/XBM-to-DDS must happen for some texture files, while not others.
 
Last edited by a moderator:
Hi, don't know where to ask this so know I try here:

When I used mod merger some content failed:
Failed to load contents from file 'C:\Witcher 3 mod merger\Uncooked\fx\textures\cloud\cloud_v6_soft.xbm'!

Build: 3.0.BUILD_VERSION_FULL P4CL: CL_INTERNAL Stream: STREAM_NAME P4_SHELF [ Compiled Oct 16 2015 ]

User: Jeppe

Crash reason: EXCEPTION_ACCESS_VIOLATION (3221225477), Error reading location 0x00000054

Crashed Thread:

Thread ID: 3120

when it was done, the merger said that mod4ksoftclouds is merged. so how can I find out if it is merged or not?

and why did it come with that fail message?
 
Top Bottom