A mod manager for The Legend of Zelda: Breath of the Wild
BCML: BOTW Cross-Platform Mod Loader
A mod merging and managing tool for The Legend of Zelda: Breath of the Wild
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.
- 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 Switch (version 1.6.0) or Wii U (version 1.5.0)
- The latest x64 Visual C++ redistributable
- Cemu (optional)
There are three ways to install BCML.
Install Python 3.7+ (64 bit version), making sure to add it to your PATH, and then run
pip install bcml. Note that, because of the
cefpython3 dependency, on Windows only Python 3.7 is
supported, but 3.8+ can be used on Linux.
Download the setup executable from the
latest GitHub release or from
GameBanana. Double click to run and install BCML. Note: You can
install wherever you like, but if you install to a location that required administrator permissions,
you may run into complications down the line. Simply
C:\BCML is often a good choice.
Building from Source
Building from source requires, in addition to the general prerequisites:
Python 3.7+ 64 bit
The following Python packages:
Steps to build from source:
Prepare the webpack bundle
- Open terminal to
npm testto watch while editing)
- Open terminal to
Build the docs
- Open terminal to repo root folder
mkdocs build -d bcml/assets/help
Install BCML with
python setup.py installor run without installing with
python -m bcml
Usage and Troubleshooting
BOTW is an immensely complex game, and there are a number of new mergers that could be written. If you find an aspect of the game that can be complicated by mod conflicts, but BCML doesn't yet handle it, feel free to try writing a merger for it and submitting a PR.
This software is licensed under the terms of the GNU General Public License, version 3 or later. The source is publicly available on GitHub.
This software includes the 7-Zip console application
7z.exe and the library
7z.dll, which are
licensed under the GNU Lesser General Public License. The source code for this application is
available for free at https://www.7-zip.org/download.html.
This software includes a lightly modified copy of the console application
msyt.exe by Kyle
Clemens, copyrighted 2018 under the MIT License. The source code for this application is available
for free at https://gitlab.com/jkcclemens/msyt. The only change is a replacement of
This software includes part of a modified copy of the
pywebview Python package, copyright 2020
Roman Sirokov under the BSD-3-Clause License. The source code for the original library is available
for free at https://github.com/r0x0r/pywebview.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size bcml-3.0.9-py3-none-any.whl (25.9 MB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size bcml-3.0.9.tar.gz (25.8 MB)||File type Source||Python version None||Upload date||Hashes View|