Ads keep us online. Without them, we wouldn't exist. We don't have paywalls or sell mods - we never will. But every month we have large bills and running ads is our only way to cover them. Please consider unblocking us. Thank you from GameBanana <3

BCML: BOTW Cross-Platform Mod Loader - A Modding Tool for The Legend of Zelda: Breath of the Wild (WiiU)

Updates

v3.6.2 12d
  • BugFix Fix recursive dict merge
v3.6.1 23d BugFix v3.6.0 24d Feature Improvement3 BugFix v3.5.0 2mo BugFix2 Addition2 Improvement4 v3.4.9 6mo BugFix2 Improvement

A mod merger and manager for BOTW

1. A Mod Loader?

Why a mod loader for BOTW? Installing a mod is usually easy enough once you have a homebrewed console or a emulator. Is there a need for a special tool?

Yes. As soon as you start trying to install multiple mods, you will find complications. The BOTW game ROM is fundamentally structured for performance and storage use on a family console, without any support for modification. As such, files like the resource size table or TitleBG.pack will almost inevtiably begin to clash once you have more than a mod or two. Symptoms can include mods simply taking no effect, odd bugs, actors that don't load, hanging on the load screen, or complete crashing. BCML exists to resolve this problem. It identifies, isolates, and merges the changes made by each mod into a single modpack that just works.

2. Prerequisites

  • Windows 10 (7-8 might work but are not supported) or basically any modern Linux distribution
  • A legal, unpacked game dump of The Legend of Zelda: Breath of the Wild for Wii U (version 1.5.0)
  • The latest x64 Visual C++ redistributable

3. Setup

There are two primary options for installing BCML. 

The best way is to install BCML from PyPI. For help with this, consult the video tutorial at the top of this page.

  1. Make sure you already have the latest x64 Visual C++ installed.
  2. Install Python 3.7 or 3.8 (64 bit), making sure to checl Add Python to PATH.
  3. Install BCML using pip in a Command Prompt: pip install bcml
  4. Run BCML using the command bcml or by making a shortcut to bcml.exe, which is located in Python's Scripts folder.
You can also install from source.

On first use, you will have to point BCML to the directories containing your unpacked base game and DLC files. The first run wizard will try to guide you.

4. Usage and Troubleshooting

For information on how to use BCML, watch the intro video above, see the Help dialog in-app, or read the documentation on the repo. For issues and troubleshooting, please check the in-app help and the official Troubleshooting page before commenting.

1-10 of 357
1
Pages
Go to page:
  • OrionKaelin avatar
    OrionKaelin Joined 2y ago
    Offline
    61 points Ranked 74,926th
    5d 5d
         Does naming a new profile the exact same as an existing profile properly overwrite it? Or may there be residual or conflicting saving?

    URL to post:
  • Abots avatar
    Abots Joined 10d ago
    Offline
    10d
    Ty for making this.

    Images for mods won't load correctly. Usually happens when I switch category of mods I'm looking at.

    Anyone got a fix?
    Bananite
    URL to post:
  • I seem to be running into an error when switching profiles. I always get the error when I try to switch, then my mods list goes empty, and the profile will load when I try again.

    Traceback (most recent call last):
    File "C:\Users\kcufh\Desktop\Everything\Cemu\BCML\Lib\site-packages\bcml\install.py", line 316, in do_and_refresh
    res = func(*args, **kwargs)
    File "C:\Users\kcufh\Desktop\Everything\Cemu\BCML\Lib\site-packages\bcml\_api.py", line 328, in set_profile
    rmtree(mod_dir)
    File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\shutil.py", line 516, in rmtree
    File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\shutil.py", line 404, in _rmtree_unsafe
    File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\shutil.py", line 402, in _rmtree_unsafe
    OSError: [WinError 145] The directory is not empty: 'C:\\Users\\kcufh\\AppData\\Local\\bcml\\mods'

    • Agree x 1
    Zelda Fanboy
    URL to post:
  • OrionKaelin avatar
    OrionKaelin Joined 2y ago
    Offline
    61 points Ranked 74,926th
    24d
    Thanks for your great work on this that makes most of BotW modding possible!
    URL to post:
  • Ludex_ avatar
    Ludex_ Joined 1mo ago
    Offline
    1mo
    Need help with this error:

    Oops! AAMP file Actor/ShopData/TwnObj_AncientOven_A_01.bshop could be merged.

    multiprocessing.pool.RemoteTraceback: 

    """

    Traceback (most recent call last):

      File "D:\BCML\pkgs\bcml\mergers\shop.py", line 213, in nested_patch

        stuff.lists["Removals"],

      File "D:\BCML\pkgs\bcml\mergers\shop.py", line 158, in shop_merge

        fix_itemsorts(base_sorted)

      File "D:\BCML\pkgs\bcml\mergers\shop.py", line 53, in fix_itemsorts

        current_sort = item_obj.params["ItemSort"].v

    KeyError: ''

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):

      File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\pool.py", line 121, in worker

      File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\pool.py", line 44, in mapstar

      File "D:\BCML\pkgs\bcml\mergers\shop.py", line 251, in threaded_merge

        new_sarc, sub_failures = nested_patch(oead.Sarc(file_bytes), stuff)

      File "D:\BCML\pkgs\bcml\mergers\shop.py", line 217, in nested_patch

        raise RuntimeError(f"AAMP file {file} could be merged.")

    RuntimeError: AAMP file Actor/ShopData/TwnObj_AncientOven_A_01.bshop could be merged.

    """

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last):

      File "D:\BCML\pkgs\bcml\_api.py", line 398, in remerge

        install.refresh_merges()

      File "D:\BCML\pkgs\bcml\install.py", line 599, in refresh_merges

        merger.perform_merge()

      File "D:\BCML\pkgs\bcml\mergers\shop.py", line 402, in perform_merge

        pool.map(partial(threaded_merge), diffs.items())

      File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\pool.py", line 268, in map

      File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\pool.py", line 657, in get

    RuntimeError: AAMP file Actor/ShopData/TwnObj_AncientOven_A_01.bshop could be merged.

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):

      File "D:\BCML\pkgs\bcml\_api.py", line 43, in status_run

        func(*args, **kwargs)

      File "D:\BCML\pkgs\bcml\install.py", line 262, in do_and_refresh

        res = func(*args, **kwargs)

      File "D:\BCML\pkgs\bcml\_api.py", line 407, in remerge

        f"There was an error merging your mods. {str(err)}\n"

    Exception: There was an error merging your mods. AAMP file Actor/ShopData/TwnObj_AncientOven_A_01.bshop could be merged.

    Note that this could leave your game in an unplayable state.

    Happens whenever I turn the mod on/off or when I remerge shop merger, I'm kinda clueless
    Bananite
    URL to post:
  • getting this error: 


    Exception: There was an error merging your mods. There was a problem creating the master BCML graphic pack. It may be a one time fluke, so try remerging and/or restarting BCML. This can also happen if BCML and/or Cemu are installed into Program Files or any folder which requires administrator (or root) permissions. You can try running BCML as administrator or root, but bear in mind this is not officially supported. If the problem persists, good luck, because it's something wonky about your PC, I guess.


    Note that this could leave your game in an unplayable state.

    and i cant really uninstall it as i cant find the 'uninstall.exe'
    tried redirecting the folders to something else, tried to uninstall bcml via cmd, nothing really works

    Bananite
    URL to post:
  • omar8002 avatar
    omar8002 Joined 1mo ago
    Offline
    1mo
    when trying to install it says
     ERROR: Command errored out with exit status 1:

         command: 'C:\Users\myusername\AppData\Local\Microsoft\WindowsApps\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\myusername\\AppData\\Local\\Temp\\pip-install-pf_jr6rj\\xxhash_63baa0bd281848ddaa712aa32d728484\\setup.py'"'"'; __file__='"'"'C:\\Users\\myusername\\AppData\\Local\\Temp\\pip-install-pf_jr6rj\\xxhash_63baa0bd281848ddaa712aa32d728484\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\myusername\AppData\Local\Temp\pip-record-5owb_43s\install-record.txt' --single-version-externally-managed --user --prefix= --compile --install-headers 'C:\Users\myusername\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\Include\xxhash'

             cwd: C:\Users\myusername\AppData\Local\Temp\pip-install-pf_jr6rj\xxhash_63baa0bd281848ddaa712aa32d728484\

        Complete output (10 lines):

        running install

        running build

        running build_py

        creating build

        creating build\lib.win-amd64-3.9

        creating build\lib.win-amd64-3.9\xxhash

        copying xxhash\__init__.py -> build\lib.win-amd64-3.9\xxhash

        running build_ext

        building '_xxhash' extension

        error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

        ----------------------------------------

    ERROR: Command errored out with exit status 1: 'C:\Users\myusername\AppData\Local\Microsoft\WindowsApps\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\myusername\\AppData\\Local\\Temp\\pip-install-pf_jr6rj\\xxhash_63baa0bd281848ddaa712aa32d728484\\setup.py'"'"'; __file__='"'"'C:\\Users\\myusername\\AppData\\Local\\Temp\\pip-install-pf_jr6rj\\xxhash_63baa0bd281848ddaa712aa32d728484\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\awall\AppData\Local\Temp\pip-record-5owb_43s\install-record.txt' --single-version-externally-managed --user --prefix= --compile --install-headers 'C:\Users\myusername\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\Include\xxhash' Check the logs for full command output.

    WARNING: You are using pip version 21.2.3; however, version 21.2.4 is available.

    You should consider upgrading via the 'C:\Users\myusername\AppData\Local\Microsoft\WindowsApps\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\python.exe -m pip install --upgrade pip' command.
    Bananite
    URL to post:
  • bro help every time I try to download something from the 1 click BCML I get this error:

    "An error occurred when installing your mod. No files were extracted. This may be because of an invalid or corrupted download. If using the GameBanana tab, you may need to try again later, as the problem could be caused by server errors.
    Your mod is being removed, and no changes have been made."
    Bananite
    URL to post:
  • TheDerpyDolphin avatar
    TheDerpyDolphin Joined 1y ago
    Offline
    107 points Ranked 85,713rd
    2mo 2mo
    I updated BCML through the program, and during the download in the cmd window a few error messages came up (didn't get a chance to see what they said). Now BCML won't start for me. Any possible fixes? I just looked through the comments and see that other people are having similar problems...
    EDIT - fixed by reinstalling using "pip install bcml" in cmd
    URL to post:
  • Locami avatar
    Locami Joined 2mo ago
    Offline
    2mo
    I dont see the link to download BCML.exe
    Im the only one?
    Bananite
    URL to post: