Skip to main content

Installation

Install Python 3.6+, then run pip install botw-duplicator-tools.

Documentation

actorinfo_tool

Use -b for big-endian (Wii U) files.

Get entry data

actorinfo_tool [-b] ACTORINFO_FILE get ENTRY_NAME

(e.g. actorinfo_tool -b ActorInfo.product.sbyml get Armor_001_Head)

Delete entry

actorinfo_tool [-b] ACTORINFO_FILE del ENTRY_NAME

Duplicate entry

For making new actors.

actorinfo_tool [-b] ACTORINFO_FILE duplicate ENTRY_TO_DUPLICATE NEW_ENTRY_NAME

Edit variable in entry

actorinfo_tool [-b] ACTORINFO_FILE edit ENTRY_NAME VARIABLE_NAME NEW_VALUE

actorpack_tool

Use -b for big-endian (Wii U) files.

Copy instSize

For putting armor models over other armors

actorinfo_tool [-b] ACTORINFO_FILE copy_instsize FROM_ENTRY_NAME TO_ENTRY_NAME

actorpack_tool

Use -b for big-endian (Wii U) files.

Rename file inside pack

actorpack_tool [-b] ACTORPACK rename_file FILE_EXTENSION NEW_NAME

(e.g. actorpack_tool -b Enemy_Bokoblin_Junior.sbactorpack rename_file baiprog Enemy_Haha_Lol.baiprog )

Copy model and physics from one actor to another

For putting an armor over a different existing armor. Use -b for big-endian (Wii U) files.

actorpack_tool [-b] ACTORPACK copy_model FROM_ACTORPACK

bfres_duplicator

For correctly duplicating bfres files (also works on bitemico files). The name of the new bfres must be same length as the name of the original bfres.

(Simply copy-pasting the bfres/bitemico file won't make the required internal changes to the file).

bfres_duplicator OLD_FILE_PATH NEW_FILE_PATH

Guides

To put a duplicate of an armor's model (and physics) over a different one:

This example will put Armor_001_Head over Armor_050_Head, and Armor_002_Lower over Armor_050_Lower.

    • bfres_duplicator [-b] path/to/Armor_001.sbfres path/to/Arm050Hed.sbfres
    • bfres_duplicator [-b] path/to/Armor_002.sbfres path/to/Arm050Lwr.sbfres Do this for their Tex1 and Tex2 as well. This will make new files for you to put your new models and icons into. Only the head part of Arm050Hed will be loaded, and the same for the lower part of Arm050Lwr.
    • actorpack_tool [-b] path/to/Armor_050_Head.sbactorpack copy_model path/to/Armor_001_Head.sbactorpack
    • actorpack_tool [-b] path/to/Armor_050_Lower.sbactorpack copy_model path/to/Armor_002_Lower.sbactorpack This will move the armors' paramater files for their models and physics over to a different actorpack. Don't follow the instructions about rstbtool.
    • actorpack_tool [-b] path/to/Armor_050_Head.sbactorpack rename_file bmodellist Arm050Hed
    • actorpack_tool [-b] path/to/Armor_050_Lower.sbactorpack rename_file bmodellist Arm050Lwr This will rename the .bmodellist files in the actorpacks so that you can safely edit them. Again, don't follow the instructions about rstbtool.
  1. Inside Armor_050_Head.sbactorpack, open the ModelUser/Arm050Hed.bmodellist, and change all occurrences of Armor_001 to Arm050Hed. This changes the bfres file that the actor will load.

  2. Inside Armor_050_Lower.sbactorpack, open the ModelUser/Arm050Lwr.bmodellist, and change all occurrences of Armor_002 to Arm050Lwr.

  3. Use leoetlino's rstbtool on these files:

    • Actor/Pack/Armor_050_Head.bactorpack
    • Actor/Pack/Armor_050_Lower.bactorpack
    • Actor/ActorLink/Armor_050_Head.bxml
    • Actor/ActorLink/Armor_050_Lower.bxml

To make a whole new armor by duplicating an existing one:

This example will make a new Armor_999_Head out of Armor_001_Head.

  1. actorinfo_tool [-b] path/to/ActorInfo.product.sbyml duplicate Armor_001_Head Armor_999_Head This creates an entry in ActorInfo.product.sbyml for your new actor, registering it with the game.

  2. bfres_duplicator [-b] path/to/Armor_001.sbfres path/to/Armor_999.sbfres Do this for all 3 armor parts, including their Tex1 and Tex2, and also for all the associated .sbitemico files. This will make new files for you to put your new models and icons into.

  3. Copy and paste Armor_001_Head.sbactorpack to make a new Armor_999_Head.sbactorpack.

  4. actorpack_tool [-b] path/to/Armor_001_Head.sbactorpack rename_file bmodellist Armor_999_Head This will rename the .bmodellist file in the actorpack so that you can safely edit it. Don't follow the instructions about rstbtool.

  5. Inside Armor_999_Head.sbactorpack, rename ActorLink/Armor_001_Head.bxml to Armor_999_Head.bxml.

  6. Still inside Armor_999_Head.sbactorpack, open ModelList/Armor_001_Head.bmodellist, and change all occurrences of Armor_001 to Armor_999. This changes the bfres file that the actor will load.

  7. If you want to edit any other files in the actorpack, make sure to rename them to something new, and change the reference to the renamed file in the ActorLink .bxml to match the new name. This is because in BotW, files with the same name cannot have different content, even if they are in different .sbactorpacks. You can do this easily using the rename_file function of actorpack_tool.

Metadata

Release files for botw-duplicator-tools 1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for botw-duplicator-tools 1.7
File Size Uploaded Provenance Actions
botw_duplicator_tools-1.7.tar.gz 7.5 kB Without provenance Details for botw_duplicator_tools-1.7.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for botw-duplicator-tools 1.7
File Interpreter ABI Platform Actions
botw_duplicator_tools-1.7-py3-none-any.whl Python 3 none any Details for botw_duplicator_tools-1.7-py3-none-any.whl

Total release size: 16.1 kB

Release files / botw_duplicator_tools-1.7.tar.gz

Download URL botw_duplicator_tools-1.7.tar.gz
Size 7.5 kB
Tags Source
SHA-256 checksum
How to use checksums
d5a4456f88f9e66c6514b28827dde1efb6f5a03e4e9a35b9ff823638cdc28324
BLAKE2b-256 checksum
How to use checksums
1925559137f430fc93196ad0bf467b81f3c6ba4e37d61cf6db0a03081b8d6eaf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Release files / botw_duplicator_tools-1.7-py3-none-any.whl

Download URL botw_duplicator_tools-1.7-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bc0f0fe37ac818e9f246e9dda67804a6b919f31da76d2718299675bd5680727a
BLAKE2b-256 checksum
How to use checksums
3004922d8f9dcbd587d93dc15e52d7d7af02dd6ae380532a1282bd747f5d3063
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Security for botw-duplicator-tools 1.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page