Welcome, modders! This page contains useful information for anybody who wants to create mods. If you just want to use other people's mods, see Help:Using mods.
What can currently be modded?
- Textures (can't increase resolution)
- Models (can't increase poly count on Switch)
- Actor parameters, including enemies, weapons and armors
- Adding new actors
- Overworld and dungeon map files (but collision editing is mostly not doable yet)
- Text / dialogue
- Event flows, and as a direct consequence: cutscenes, NPC interactions, quests and minigames
Getting set up
The RSTB file
The file ResourceSizeTable.product.rsizetable (referred to as the RSTB file) contains a list of size limits for almost every file in the game (calculated from the non-Yaz0-compressed file sizes). If you edit a file to make its filesize bigger, you'll need to edit this file to prevent errors. For details, see Help:Updating the RSTB.
File names and caching
The game assumes that any 2 files with the exact same filename also have the exact same contents. If you don't follow this rule when editing files, the game might load the wrong version of the file, leading to errors. The same rule applies to texture names - all unique textures should have unique names, even if they're located in different files.
File extensions for compressed resources
In most cases, file extensions that start with ".s" are used for Yaz0-compressed files. Ensure that any file with such extensions is compressed. Some tools (for example BotW Unpacker, byml-v2 or sarc) will automatically compress files when needed.
Example: .bactorpack -> .sbactorpack (after compression)