This tool is on my top 5 must have for SSE/FO4. I'm on the 4th modding journey since 2012 and I am very happy to come here after 4 years and see that you still care about the projects. Thank you so much for such a great contribution and support.
Thank you for this tool, I look forward to using it. Does the source merge script only work with textures or does it handle other files as well? Like meshes and sound etc
The path it requires is the fallout 4 data folder, not MO2 mod folder. That's the destination path.
The source path where it looks for the mods is the mods folder in the mod package. It does not source mods from any other place as you have to build the load order by naming the mod archives / folders themselves.
It is not meant to merge your load order in your mod manager as that may cause issues.
Please read the description and the articles for better understanding.
It has its own mods folder. As essentially it makes a merge from a load order that you specify so you are very off the mark. When you run it, the script has an option to open its mods folder as well.
Please read the description and the articles before trying this very technical tool. Well complicated in terms of the concept, not the operation, haha.
I use Esp explorer. the mods I merged using the plugin from the created merge did not have anything in it and appeared grayed out in Esp explorer and can't be accessed. so where can I find all my weapons within the Esp explorer?
The tool does not merge plugins. Please read the description page well. As well read the articles too. It is impossible to accomplish such without intervention because current tools have not reached such sophistication. They might not ever as whatever Bethesda makes is already a miracle that it runs.
Any plugins in the mods get replicated in final compressed zip if you are using the merge script. The plugin the tool creates is just a dummy to load the merged BA2. It is best that you either choose that to be an ESL or manually position it in the load order before those plugins and after the requirements.
I forgot but you can also choose to not have that dummy plugin and name the mod same as any of the existing plugins. This way the assets get loaded with that plugin.
Does this merge plugins themselves? Example I have many weapon mods, and I currently use z-edit (only one that does my bidding), but it can't do world spaces. If this can, how do I do that?
An error has occurred! Screenshot the following enclosed white text to file as bug: --Error--
Invoke-Expression: D:\Merge Script\dist\BaseScript.ps1:111 Line | 111 | Invoke-Expression ("7z a -mx9 -r -t7z -bso0 `"$ArchivePath`" `"$T … | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | The term '7z' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the | spelling of the name, or if a path was included, verify that the path is correct and try again.
CAO does not allow integration. I have talked with the authors, according to them, it is very easy to make the API but for now its not planned.
Also optimization is not something that is catered by CAO, only BA2 extraction it can do. This step's main purpose is to convert all mods to the same structure pattern; having the asset folders in the top level in a 7z archive. It removes extra directory levels to the assets, removes dummy plugins and compresses to the highest level of 7z.
7z extraction is many times faster than anything available in windows API for copying - 1000s of files vs 128 simultaneously. Not to mention space savings. Also it is extremely optimized with multi-core processors.
The BSA library is absolutely abysmal even with my system having 12 physical cores. That's why I do not use the multithreaded optimizations in BSArch and instead opt to have multiple archives generated/extracted in parallel. So essentially on my system, up to 11 BA2s can be extracted or archived at the same time by the script.
Great tool and an interesting concept, but unfortunately every time I try to do the Source Merge, I get this error.
An error has occurred! Screenshot the following enclosed white text to file as bug: --Error-- InvalidOperation: C:\Users\lukec\Downloads\Fo4\Source Merge Script\dist\BaseMerge.ps1:116 Line | 116 | Get-ChildItem $ModsOptimizePath -Directory | ForEach-Object -Thro … | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: You do not have sufficient access rights to perform this operation or the item is hidden, system, or read | only. --Error-- Press enter to exit...
I have turned off my antivirus and am running the script with Admin privileges, I'm not certain what the issue is.
You don't need to run the script with admin privileges.
From the error, I can't determine what could have gone wrong. It seems its a system configuration issue like older OS or powershell version mismatch as the operation is determined to be invalid on a basic command.
So am going to start with some basic questions:
1. Are you running PowerShell v7.3+? Search powershell and open the app named powershell 7; the version appears on the first line.
2. Have you upgraded the package from a previous version? If so, then run the setup script again.
3. Confirm that the mods-optimize folder exists in package folder If it does not, then run setup script again.
4. If you have the package in the error state like just after the error occurs then share screenshot of what's inside the mods optimize folder.
Unless the script requires Windows 11, I don't think the OS is a problem, given my Windows 10 is up to date. I've reinstalled Powershell just in case and restarted my PC, and will be trying a Source Merge with only 2 mods to test it. The mods are already optimized and placed within the mods folder, as the script only fails at the creation of the merge, so I believe the mods-optimize folder was empty during the process.
I managed to make a successful merge after reinstallation of Powershell, I believe it was either a Powershell issue or an issue with the amount of mods I was merging. Thank you for the assistance.
Though I do have a peculiar, slightly, annoying problem.
If I want to reset the template, I will constantly get told ''DLCCoast - Main.ba2 does not exist'' in Merge Script/Sourge Merge Script/sources , even though it is clearly there in the folder when I look.
So whenever I want to reset, I have to do it manually.
135 comments
NG Support is respect to BSArch version. Get the new version from latest xEdit release: xEdit GitHub Releases Page
Updated: 05/06/24
I'm on the 4th modding journey since 2012 and I am very happy to come here after 4 years and see that you still care about the projects.
Thank you so much for such a great contribution and support.
Thank you for your answer and many thanks for your tool, it's a staple in my modding journey and I use it to this day.
The source path where it looks for the mods is the mods folder in the mod package. It does not source mods from any other place as you have to build the load order by naming the mod archives / folders themselves.
It is not meant to merge your load order in your mod manager as that may cause issues.
Please read the description and the articles for better understanding.
Please read the description and the articles before trying this very technical tool. Well complicated in terms of the concept, not the operation, haha.
Any plugins in the mods get replicated in final compressed zip if you are using the merge script. The plugin the tool creates is just a dummy to load the merged BA2. It is best that you either choose that to be an ESL or manually position it in the load order before those plugins and after the requirements.
An error has occurred! Screenshot the following enclosed white text to file as bug:
--Error--
Invoke-Expression: D:\Merge Script\dist\BaseScript.ps1:111
Line |
111 | Invoke-Expression ("7z a -mx9 -r -t7z -bso0 `"$ArchivePath`" `"$T …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| The term '7z' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the
| spelling of the name, or if a path was included, verify that the path is correct and try again.
Considering how technical this tool is, aside from the description page, its best that you browse the articles section as well.
kill two birds with one stone sort of idea, optimizations and merging in one go
Also optimization is not something that is catered by CAO, only BA2 extraction it can do. This step's main purpose is to convert all mods to the same structure pattern; having the asset folders in the top level in a 7z archive. It removes extra directory levels to the assets, removes dummy plugins and compresses to the highest level of 7z.
7z extraction is many times faster than anything available in windows API for copying - 1000s of files vs 128 simultaneously. Not to mention space savings. Also it is extremely optimized with multi-core processors.
The BSA library is absolutely abysmal even with my system having 12 physical cores. That's why I do not use the multithreaded optimizations in BSArch and instead opt to have multiple archives generated/extracted in parallel. So essentially on my system, up to 11 BA2s can be extracted or archived at the same time by the script.
An error has occurred! Screenshot the following enclosed white text to file as bug:
--Error--
InvalidOperation: C:\Users\lukec\Downloads\Fo4\Source Merge Script\dist\BaseMerge.ps1:116
Line |
116 | Get-ChildItem $ModsOptimizePath -Directory | ForEach-Object -Thro …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: You do not have sufficient access rights to perform this operation or the item is hidden, system, or read
| only.
--Error--
Press enter to exit...
I have turned off my antivirus and am running the script with Admin privileges, I'm not certain what the issue is.
From the error, I can't determine what could have gone wrong. It seems its a system configuration issue like older OS or powershell version mismatch as the operation is determined to be invalid on a basic command.
So am going to start with some basic questions:
1. Are you running PowerShell v7.3+?
Search powershell and open the app named powershell 7; the version appears on the first line.
2. Have you upgraded the package from a previous version?
If so, then run the setup script again.
3. Confirm that the mods-optimize folder exists in package folder
If it does not, then run setup script again.
4. If you have the package in the error state like just after the error occurs then share screenshot of what's inside the mods optimize folder.
The mods-optimize folder is used in this step to create the extra assets mod.
If you have discord then hit me on it and we can perhaps do this support session directly.
Though I do have a peculiar, slightly, annoying problem.
If I want to reset the template, I will constantly get told ''DLCCoast - Main.ba2 does not exist'' in Merge Script/Sourge Merge Script/sources , even though it is clearly there in the folder when I look.
So whenever I want to reset, I have to do it manually.
This is what happens when I try to reset.
Error