How to make a Custom 3ds Theme

Hello everyone! This is my first tutorial writeup, so I may make errors. Also, this process is not well documented yet, so my knowledge still has heavy limitations and there are others out there who are far more successful at performing this task than I am. That said, none of them have written a tutorial yet, so I will go ahead and do so. Lets get Started!


I. Downloads
To make a theme, you will need:
- Theme Customization Tools by Roxas75
- ExtDataTool by Yellow8, uploaded by piratesephiroth
- a Method of loading ExtDataTool, either using Smea's Ninjhax or Installed CIA through devmenu
- a theme from the theme shop on your system.

For Audio, you will need:
- Every File Explorer by Gericom
- Audacity
- Format Factory

II. Getting Theme Files
1. Load the theme you want to modify so it is your current active theme. (Stock will not work)
2. Run ExtDataTool
3. Select the Third option. (Activate cache)
4. Select option to copy cache from extdata to SD
5. Power off 3ds, put SD card in PC

You will find two files on the root of your SD, Bodycache.bin and BgmCache.bin. Copy these to your PC in a convenient location.

III. Changing the Look of the Theme
1. Rename Bodycache.bin to body_LZ.bin
2. Run Theme Customization Tools (3DS_ThemeEditor.exe)
3. Arrow next to file -> Open -> body_LZ.bin, where you renamed it
4. This is where things get more Theme-specific. You generally want to replace the images found here with images of identical size. This is best achieved by exporting the image you want to edit, loading it into your favorite image-editing program, and modifying it to your heart's content. Once you are done, import it back into the editor.
5. Click "Simulator". This will help you to know if you have your images aligned properly. If you are modifying a theme with a panning top screen, this will not pan as the theme would.
6. Once you have the theme looking right, save the file as body_LZ.bin
7. Rename body_LZ.bin to BodyCache.bin

IV. (Optional) Changing the background music
I barely got this working. In it's current state, you cannot make the sound loop nor have the filesize exceed ~3.3Mb. With these issues, you can still change the music. I use audacity for this, it's a great sound editor worth getting.

1. Locate MP3 or WAV file with your music
2. Load it into Audacity
3. Export as WAV
4. Open Every File Exporer, file -> new from file -> Nintendo 3ds Plugin -> CTR Stream
5. Select your WAV, push play to see if it works.
6. File -> Save As untitled.bstrm
7. Rename untitled.bstrm to BgmCache.bin and place on SD card

Now, you may notice that your wav and bstrm file are exorbantly large! They may be more than 3 times the size limit! Unfortunately, wav is an uncompressed format and thus has a very large file size. You have a few options on shrinking the file size:

1. Load the sound file into audacity
2. Find the part of the song you don't want
3. Hit Delete
4. Export as wav
1. Load the sound file into audacity
2. Click Track -> Stereo to Mono
3. Export as wav
1. Run Format Factory
2. Under the audio drop down on the left side, click "-> WAV"
3. Click "Output Setting"
4. On the drop down, select "Low Quality"
5. In the Settings below, change Sample Rate to 11025
6. Click Ok
7. Click Add File and select your sound file
8. Hit OK, then Start.
9. Click Output Folder to get to your sound file
Unfortunately, we have not yet worked out song looping, we have! so whatever you play will only play once unless you go to the power off screen and back to home.

V. "Installing" the theme
Alright, technically you are loading the theme into the cache. It's more of a load and less of an install.

1. Boot 3ds, load the theme you want to override
2. Load ExtDataTool
3. Copy Cache from SD to extdata
4. Once it complete and goes back to the ExtDataTool Menu, hit power, then home.
5. Your Theme should have loaded!

If at this point you have no theme, or the music didn't change, here is what could have happened:

- You didn't name the files properly
- You weren't on a downloaded theme when you ran the tool
- Your theme file is invalid, make sure you saved/copied it properly and are using Theme Customization Tools for body_LZ.bin and not Every File Explorer.
- If sound isn't playing, make sure your bcstm is valid. I really don't know how to help you here.


VI. Other Stuff

I wrote this up pretty quickly, and this tutorial is based on my own experience. If anyone has any improvements for the guide, please post! I can edit the guide with any new information. Hopefully someone will figure out looping sound soon, as this is the one main thing that is missing from (public) custom themes at this point.
 

Philip3ds

Well-Known Member
Member
Joined
May 13, 2015
Messages
187
Trophies
0
Age
27
XP
149
Country
Whenever I try to copy the BodyCache.bin I get this error: Skipping BodyCache.bin because the field size is zero.
 
D

Deleted User

Guest
Whenever I try to copy the BodyCache.bin I get this error: Skipping BodyCache.bin because the field size is zero.
How are you trying to copy it? Are you trying to make the theme(assuming you are) or are you trying to apply it?

If you're trying to make one, I suggest getting a preexisting one and using it as a base in Yata+
 

Philip3ds

Well-Known Member
Member
Joined
May 13, 2015
Messages
187
Trophies
0
Age
27
XP
149
Country
How are you trying to copy it? Are you trying to make the theme(assuming you are) or are you trying to apply it?

If you're trying to make one, I suggest getting a preexisting one and using it as a base in Yata+
I'm copying it with ExtDataTool. I also tried using a preexisting one and when I copy ExtData from sd to sysnand I got another error.
But anyway I used CHMM to install the custom theme.
 

Kippy

Well-Known Member
Member
Joined
Mar 21, 2015
Messages
145
Trophies
0
Age
22
XP
111
Country
United States
I have some questions
1. What are stock themes?
2. I made a custom theme, but the bottom screen has lines on it
3. I was having errors installing other's themes, but now it seems to work. However, the theme does not appear on the theme list, and disappears if it's changed.
4. Is there any way to make a theme without replacing another? So I edit a theme into a new one but still have the old one?
5. I've also heard that themes you buy stay when you restart the system is this true? Can I make multiple edits of the same base theme?
 
Last edited by Kippy,

selcuk

Well-Known Member
Newcomer
Joined
Oct 3, 2015
Messages
83
Trophies
0
Age
33
XP
257
Country
there is a webpage called 3dsthemes how can I directly download a custom theme from there and run it?
 

NightsOwl

Pays For Avatar Art (For some reason)
Member
Joined
Jul 8, 2012
Messages
397
Trophies
0
Age
30
XP
391
Country
United States
Random, possibly dumb question. Is it possible to make panning top images into stationary, unmoving images? I can't find anything on this in the thread, but I may be blind.
 

Hagslayer5

Well-Known Member
Newcomer
Joined
Nov 9, 2015
Messages
72
Trophies
0
Website
www.gateway-3ds.com
XP
75
Country
United States
After smacking my head against the wall for a few hours i figured out how to make custom theme packs
I can only get it to work on cfw for now, but...
5lOQn9j.jpg
how did you do that on the 3ds theme homemenu did you use the homebrew stuff please tell me
 

Alex4U

i like pancakes
Member
Joined
Jan 6, 2016
Messages
1,209
Trophies
1
Age
22
Location
D.F
Website
www.google.com.mx
XP
1,453
Country
Mexico
I Have another idea for export the song:
Export you MP3 to WAV with audicity, loop the song with BrawlBox, and export the brstm to bcstm with BRSTM2BCSTM.
Rename the song with BgmCache.bin
Note: The maximum MB of the file must be 7.7MB.
And minium 3.3MB
I tried it, and works perfects in my new3ds.!!!!!!
(sorry for bad english!)

--------------------- MERGED ---------------------------

so that what he used
He used audicity, but not for loop the song!
 
Last edited by Alex4U,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Keep current Gen consoles stock mod last gen imo