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.