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.
 
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 ---------------------------


He used audicity, but not for loop the song!
thats not what I meet how did he get the themes on his device
 
I'm trying to use basic themes because the free Sonic Boom theme refuses to download. I can't get a BgmCache.bin from a basic theme because the home menu extdata tool thing skips it as it's file size is 0 or something. What do I do now?
 
I'm trying to use basic themes because the free Sonic Boom theme refuses to download. I can't get a BgmCache.bin from a basic theme because the home menu extdata tool thing skips it as it's file size is 0 or something. What do I do now?
That ISO Site has a full collection of themes in the right format to edit, you just have to go into the right section.
 
Someone can help me?
How create or install custom theme on GW emunand, because i try some cthemes and they give error (wrong signature, well not official)
What prog to use for creation and changing themes?
 
I downloaded a premade theme, but the bgmcache wouldn't install because it was too big. I made my own and now the sound effects like touching an icon are much louder than the music in the background. What do?
 
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 do you get custom theme packs to work?
 
hi guys..i got a legit theme on a non hacked 3DS, how could i install that to my other 3DS which has cfw without doing system transfer? (that other 3DS-soon-to-be-hacked is still coming but am planning ahead LOL), it's Pokemon Yellow theme by the way, one you only get thru codes that came from purchasing the limited edition Pikachu 2DS..
 
I installed my theme and my 3DS wont boot, the theme isn't installed correctly. You can see the top screen of the theme, but its very faded and occasionally blinks. Did I brick? Please god tell me I didnt.
 
When you're putting the music into a theme can you make it play an intro then start looping after the intro or does it have to just have one looped song?
 

Site & Scene News

Popular threads in this forum