Custom Models and Textures for BOTW

A Tutorial for Zelda: Breath of the Wild (Wii U & Cemu)

Hello world. We are one of the oldest mod sites on the Interwebs. Sign up and maximize your browsing experience.

  • Subscribe: Get notified of new submissions like this.
  • Say Thanks: Show your appreciation by sending KillzXGaming points.
  • Post: Give KillzXGaming your thoughts on this Tutorial.
  • Vote: Help KillzXGaming win the Monthly Awards.
  • Rate: Give this Tutorial a rating out of 10.
  • Flag: Alert moderators and warn members of a problem with this Tutorial.
  • Watch: Get notified when this Tutorial is updated.
Mascot

Sound fun?

Sign up

Already a Bananite? Login

Updates

Some Fixes
  • The tool updated and should fix any corrupted textures. You may want to redo this again with original bfres if you have one with broken textures.
KillzXGaming avatar
Member Joined 2y
4,545 points Ranked 1020th
21 medals 2 legendary 4 rare
  • Reached 100 subscribers Medal icon
  • 30 submissions featured Medal icon
  • Returned 1000 times Medal icon
  • Reached 50 subscribers Medal icon
  • 10 submissions featured Medal icon
  • Received thanks 50 times Medal icon
KillzXGaming
3mo
Modding Breath of the Wild is relatively similar to other games like Mario Kart 8 however there is quite a few things that need to be gone over as there are some differences.

1. Texture Editing

First I suggest anyone that wants to do any texture editing, use this tool. (Must be 4.0 or higher!) Once you download this, simply extract it to a folder. 



Then launch bfres_tool.exe.

Now for your texture file. These are all located in the Models folder of BOTW. The way these are labeled are like this:

  • Armor_001.sbfres - Contains just the model data (has no tex in name)
  • Armor_001.Tex1.sbfres - Store all main textures
  • Armor_001.Tex2.sbfres - Store mip map data (not editable atm)

These files are sbfres files which are simply Yaz0 compressed. To decompress them to get a .bfres file, drag the file to yaz0dec which can be found here

It will output a rarc file. Rename this to .bfres. 



Now we got our bfres. Now with bfres_tool, open the bfres. 



If you get a left over .gtx file with a "2" at the end, you may be using an outdated build! Make sure you're on 4.0!


Click on the DDS file you want to edit. Make sure the format as shown in the tool is the right one!

Some may not open due to no mip maps. To fix this, open hex, and change this  at 0x1C value to 01. 

Paint dot net will display incorrectly. To fix this download noesis 
Then open the program. Goto where you have the textures



Export as a png. Any format can work but for now lets do png. 

Then open the file with paint dot net! Should be in the same folder just a a .png file. 

Now we can open it and edit away! 
Clip of edited. 

Make sure the file name is the same as original. Noesis may add "out" to the name, so remove that. 

Also the format and resolution must be the same. So DXT1 as noted on the tool, so i saved it as that. 

For settings, i suggest to not generate mip maps by unchecking this



2. Mip Maps

Now this is a bit advanced but isn't too bad. 
First get 010 editor. 

Now get the bfres template. 

Once installed. Open 010 editor. 
Goto templates - view installed templates. 
Click the "Add" button and select all .bt files from that bfres template link. 

Now you will importantly need to open the bfres that contains the model. These are the ones without tex1 or tex2. 

Now that it is open, you should see a screen like this. 



Click on model(Dict) at the bottom. If this isn't named the exact same, it's fine.



Then the the model itself. Armors can have upper, lower, and head pieces. 



Click on Dict(materials) at bottom



Click on the model you wanna remove the mip maps. If you can't tell from the name, then you can do each one. 



Then click the SamplerDict. 



click _a0 in that.



What each means
  • _a0 = main texture/diffuse
  • _n0 = normal map
  • _s0 = spec map
  • _ao0 = Ambient Occlusion/Shading
  • _gn0 = Damage Map
  • _gn1= Some sorta red damage thing

And then click on GX2SamplerRegs (3) and click on it again inside



It will highlight 4 bytes. The ones circled is mip maps. Set these from (02) to 00. This will disable them. 

So we got all that done. Texture editing should be complete!

3. Model Editing

For those who want to model edit, use this tutorial. The process is the same thing. You still need to stay within the poly limit for now due to current tools that would bypass this do not support botw bfres files. 

For rigging things. Make sure the bone limit in the advanced settings is set to 4! If not you will get stretched objects like this



4. Finalizing everything. Compress back to sbfres!

Drag each bfres into yaz0fast which you can get here

Then remove the .yaz0 extension and rename your file back to sbfres. 



5. Copying texture data from other bfres files.  (Advanced, should not be needed as of 4.0)

So some particular bfres files will fail to inject or extract textures. So I will explain how you can manage to transfer over a successfully injected texture over to another bfres that does not work. 

First open the bad bfres with 010 editor. 

Goto textureDict and scroll down till you get texture(number). 



Click on the texture



Take note of the image size and resolution. You will need to copy over the data from another bfres that has the proper injection. 

For this example armor_001 works great. The bad bfres is the switch shirt which has the Armor_170_Upper_Alb file broken. 

So i inject a texture that has the same format and resolution as this.

Then i open the bfres with the successful injection. Goto that texture.

Highlight over ImageData


Hover your mouse over to the highlighted hex in blue,  right click and copy. 

Then goto the bad bfres file, goto imagedata of the texture and over the selected bytes in blue, right click and paste. 

Now that is done, this should work in game!

Posts

  • 19d
    saltso avatar
    saltso Offline
    Member Joined 9y
    213 points Ranked 17318th
    7 medals 1 rare
    • 6 years a member Medal icon
    • One month a member Medal icon
    • 6 months a member Medal icon
    • 1 year a member Medal icon
    • 2 years a member Medal icon
    • 4 years a member Medal icon
    I renamed manually the sbfres to bfres because the Yaz0dec does nothing when i drag the Armor_225.Tex1.sbfres on it, then i used the bfres_tool_x86_v4.1 in order to extract all of the files of Armor_225.Tex1.bfres, i retextured the Armor_225_Head_Alb and Armor_225_Upper_Alb, clicked the "Replace" buttons of those files, closed the tool, renamed the Armor_225.Tex1.bfres to Armor_225.Tex1.sbfres and replaced the original file, but it does not work in game.
    Do i have to do also step 2 before step 4?
    Bananite
  • 3mo
    jjscat avatar
    jjscat Offline
    Member Joined 6mo
    Where do you get the sbfres files? Do you need to rip your game like you do with Smash?
    Bananite
  • 3mo
    Would you be able to do a tutorial of the steps on importing and exporting a modified Bfres file for BOTW, specifically for link and his default armor, i have followed the other tutorial well but end up with graphic glitches even when not making any changes to the models at all. I have been working on the zelda mod and made progress but i cant get it to export out of 3ds/blender and work properly when added back into the pack file.
    Bananite
  • 3mo
    Vexzel avatar
    Vexzel Offline
    Member Joined 2y
    127 points Ranked 24558th
    i've been trying all night to understand what it is that i am doing wrong? i'm stuck at 2. Mip maps. 

    I've done textures before (never uploaded any but lots of smash brothers Wii U)

    Could anyone do a video version of this? it'd be better visually if someone went step-by-step into the process cause alone its unclear really how to manage around this if its your first time.
    Bananite
  • 3mo
    LuzyScythe avatar
    LuzyScythe Offline
    Member Joined 3mo
    Hey dude! Love the work you are doing. im terrible at stuff like this, would it be possible to request a playeble Zelda mod?
    Bananite
  • 3mo
    Naxshe avatar
    Naxshe Offline
    Member Joined 3mo
    i cant get the decoder to work i drag it oveer it but it dosnt output anything
    Bananite
  • 4mo
    Hefty avatar
    Hefty Offline
    Member Joined 1y
    6,233 points Ranked 738th
    22 medals 1 legendary 5 rare
    • 30 submissions featured Medal icon
    • Reached 50 subscribers Medal icon
    • Received thanks 50 times Medal icon
    • 10 submissions featured Medal icon
    • Achieved Game Manager clearance Medal icon
    • Became a Game Pioneer Medal icon
    once a python script that automatically does this kind of thing, i might attempt some textures! :)
    ???
  • 4mo
    Supershyguy avatar
    Supershyguy avatar Online
    Homepage
    Member Joined 1y
    4,079 points Ranked 1135th
    14 medals 1 legendary 2 rare
    • Returned 5000 times Medal icon
    • 10 submissions featured Medal icon
    • Returned 1000 times Medal icon
    • One month a member Medal icon
    • Returned 100 times Medal icon
    • Submission featured Medal icon
    Nice tutorial as always. I won't be able to do this since I have the switch version, but it's nice to see.  I wonder if any of this could be beneficial to 3D World modding. I still hope that the modding community can find a way to fix the issues that it has right now.  
    Bananite

Embed

Share banner
Image URL:
HTML embed code:
BB embed code:
Markdown embed code:

Credits

Key Authors
KillzXGaming
Made tutorial
Special Thanks
smb123w64gb
Member Joined 2y
6,084 points Ranked 751st
18 medals 3 rare
  • Reached 50 subscribers Medal icon
  • 10 submissions featured Medal icon
  • Achieved Game Manager clearance Medal icon
  • One month a member Medal icon
  • Reached 1,000 Points Medal icon
  • Returned 100 times Medal icon
Model Import script
aboood40091
Texture editor

Submitter

KillzXGaming avatar
Member Joined 2y
4,545 points Ranked 1020th
21 medals 2 legendary 4 rare
  • Reached 100 subscribers Medal icon
  • 30 submissions featured Medal icon
  • Returned 1000 times Medal icon
  • Reached 50 subscribers Medal icon
  • 10 submissions featured Medal icon
  • Received thanks 50 times Medal icon

KillzXGaming
Creator
Sign up to access this!
Sign up to access this!
Sign up to access this!
  • Paypal Donate
Sign up to access this!

Category

Details

Difficulty Level
Intermediate Difficulty

Attributes

Stats

Posts
14
Views
8,269
Date Added
4mo
Date Modified
3mo
Date Updated
3mo

Scores

80 bScore
9 Rating

1 voter

Sign up to access this!

Share

  • Share on Reddit
  • Share on Twitter
  • Share on Facebook
  • Share on Google+
bcp.crwdcntrl.net tracking pixel