Tutorial  Updated

Guide - Animal Crossing New Horizons Custom Music

Mod custom music into Animal Crossing: New Horizons

Things you'll need:
* BWAV encoder (https://github.com/ic-scm/openrevolution, or https://github.com/Gota7/Citric-Composer) or a BWAV file from https://smashcustommusic.net/
* Automatic BARS patcher on your Switch (https://gbatemp.net/threads/automatic-bars-patcher.579473/)
* A dump of the game's files or at least the /Sound directory, you can dump the game with nxdumptool.
* (Optional) An audio player with the vgmstream plugin to preview your BWAV files. Not necessary if you compiled openrevolution and have the brstm_rt program. https://github.com/vgmstream/vgmstream

Optional step 0: Dump the game's sound files
You don't need to do this if you already have the dumped files from the correct version of your game.

Open nxdumptool on your Switch, choose gamecard or SD depending on which version of ACNH you have, and go into RomFS options in Animal Crossing: New Horizons.
Make sure that "Save data to CFW directory" is set to no, and "Use update/DLC" is set to the newest game update. It's very important that you dump the updated version of the game. Then press "Browse RomFS section", navigate to the "Sound" and then "Resource" directory in the file browser, then press the Y button to dump the sound files. This can take some time, depending on your SD card and environment.



Step 1: Find a song
Find the song that you want to mod into your game.
If the song you want is from another game, you can search for it on smashcustommusic.net, download a BWAV directly from the website and skip steps 2-3.



Step 2: Prepare the song
The openrevolution file converter requires a WAV at it's input so if your song is a different format like mp3, ogg, flac or other you'll have to convert it to WAV first.

The easiest way to do that is to open the file in a program like Audacity and to export it as WAV. You can also use ffmpeg directly or any other program capable of that. While you're in Audacity you can also pick out the loop points, see the next step.

If you want to replace a K.K. song, you will have to mix the song into a 1 channel mono file.

You can also use Citric Composer instead of openrevolution to encode your BWAV files, but I am unable to provide any help or assistance with that software.



Step 2.1: Loop points
The usual loop point stuff: open your file in Audacity or similar program, set the time counter to display the sample number, find a good loop point and copy the sample number.
If you need more details about this look on other Nintendo game custom music guides.
You can also skip this step if you don't care about having a proper loop and just set the loop point to 0 later.



Step 3: Encode the BWAV file (openrevolution brstm_converter)

Run this command:
./brstm_converter yourfile.wav -o youroutputfile.bwav -l [Put your loop sample number here]
If using Windows, replace "./brstm_converter" with "brstm_converter.exe".
If the conversion was successful, you should now have a BWAV file at your output file path.

You can also use Citric Composer for this step instead, but I am unable to provide any help or assistance with that software.



Step 4: Put the files in the game
Name your files correctly and put them in the game's files using whatever methods for modding switch games there are.

When replacing the album versions of K.K. music, you also have to copy your custom file for all 4 versions of the K.K. song (Hifi, Phono, Retro, Cheap).

If you're using Atmosphere, you can just put your files in /atmosphere/contents/01006F8002326000/romfs/.
(For example: /atmosphere/contents/01006F8002326000/romfs/Sound/Resource/Stream/BGM_Title.bwav)



Step 5: Patching the BARS file
You'll need to patch the BARS file in the game for the songs to play correctly.

Make sure you have the original dumped sound files from the game somewhere on your Switch, and open the Automatic BARS patcher tool.
Select Animal Crossing: New Horizons.

The tool will now show you 4 different file paths.
Original BARS file should be the original unmodified Bgm_Base.bars file from the game.
Original BWAV folder should be the original unmodified /Sound/Resource/Stream/ folder.
Modded BWAV folder should be the location of your modded BWAV files.
Patched BARS output should be the location for the Bgm_Base.bars file in the mod. (For example: /atmosphere/contents/01006F8002326000/romfs/Sound/Resource/Bgm_Base.bars)

If these file paths are correct, press A to continue. If not, you can press B to make the necessary changes.
The tool should now show how many tracks it patched, and say "Success!".

Press + to exit the tool, and open Animal Crossing: New Horizons. You should now have your custom music correctly playing in the game.

All of the songs in /Sound/Resource/Stream should be in /Sound/Resource/Bgm_Base.bars
Copy the BARS file and the BWAV file you want to replace into some local work directory. If you're replacing K.K. music (aircheck versions) copy all 4 versions of the BWAV files (Hifi, Retro, Cheap, Phono).

Patching the file with the command line patcher:
Compile the patcher with a standard C++ compiler without any special flags
./bars-patcher -i Bgm_Base.bars -o Bgm_Base.bars.patch -og BWAV_file_from_the_game.bwav -patch Your_custom_BWAV.bwav

Online patcher:
https://smashcustommusic.net/onlinetools/bars-patcher/
Put the Bgm_Base.bars file in the BARS file field, the BWAV from the game in the Original BWAV field and your custom BWAV file in the Patch BWAV field.

If you can't use the solutions above and you really hate yourself you should also be able to manually do it in a hex editor:
Open the BARS file, original BWAV file and your custom BWAV file in the hex editor.
From the original file copy the 4 bytes at offset 0x08 (CRC32 checksum).
Switch to the BARS file and use a search function to find those 4 bytes.
Switch to the custom BWAV file and copy all the bytes from the beginning until a chunk of 00's (should be around 160/0x9F bytes in 2 channel files).
Switch to the BARS file, make sure you're in overwrite mode and paste the copied bytes in the correct place (so the BWAV word is in the same place as before).



K.K. music file name list:
Code:
Agent K.K.       - BGM_Live_068_Keiji
Aloha K.K.       - BGM_Live_019_Aloha
Animal City      - BGM_Live_092_Town
Bubblegum K.K.   - BGM_Live_088_Idol
Café K.K.        - BGM_Live_050_Paris
Comrade K.K.     - BGM_Live_044_Showakayo
DJ K.K.          - BGM_Live_039_Eurobeat
Drivin'          - BGM_Live_093_Drive
Farewell         - BGM_Live_094_Sayonara
Forest Life      - BGM_Live_057_Morinoseikatsu
Go K.K. Rider    - BGM_Live_046_Kekerider
Hidden Song 1    - BGM_Live_901_Hazure01
Hidden Song 2    - BGM_Live_902_Hazure02
Hidden Song 3    - BGM_Live_903_Hazure03
Hypno K.K.       - BGM_Live_076_Utatanenoyume
I Love You       - BGM_Live_054_Daisuki
Imperial K.K.    - BGM_Live_023_China
King K.K.        - BGM_Live_062_Daimyo
K.K. Adventure   - BGM_Live_080_Hollywood
K.K. Aria        - BGM_Live_009_Maria
K.K. Ballad      - BGM_Live_043_Ballad
K.K. Bazaar      - BGM_Live_082_Roma
K.K. Birthday    - BGM_Live_091_Birthdaysong
K.K. Blues       - BGM_Live_032_Blues
K.K. Bossa       - BGM_Live_011_Bossa
K.K. Calypso     - BGM_Live_012_Caripso
K.K. Casbah      - BGM_Live_024_Turkey
K.K. Chorale     - BGM_Live_001_Sanbika
K.K. Condor      - BGM_Live_021_Peru
K.K. Country     - BGM_Live_041_Country
K.K. Cruisin'    - BGM_Live_035_Urban
K.K. D&B         - BGM_Live_037_Drumnbass
K.K. Dirge       - BGM_Live_047_Kowaiuta
K.K. Disco       - BGM_Live_090_Disco
K.K. Dixie       - BGM_Live_060_Dixie
K.K. Étude       - BGM_Live_007_Etude
K.K. Faire       - BGM_Live_018_Haisai
K.K. Flamenco    - BGM_Live_086_Flamenco
K.K. Folk        - BGM_Live_026_Minyo
K.K. Fusion      - BGM_Live_006_Fusion
K.K. Groove      - BGM_Live_084_Raregroove
K.K. Gumbo       - BGM_Live_030_Neworleans
K.K. House       - BGM_Live_074_House
K.K. Island      - BGM_Live_078_Doubutsunoshima
K.K. Jazz        - BGM_Live_005_Jazz
K.K. Jongara     - BGM_Live_085_Jongara
K.K. Lament      - BGM_Live_045_Enka
K.K. Love Song   - BGM_Live_036_Lovesong
K.K. Lullaby     - BGM_Live_008_Lullaby
K.K. Mambo       - BGM_Live_014_Mambo
K.K. Marathon    - BGM_Live_061_Gamelan
K.K. March       - BGM_Live_002_March
K.K. Mariachi    - BGM_Live_052_Senor
K.K. Metal       - BGM_Live_070_Metal
K.K. Milonga     - BGM_Live_083_Milonga
K.K. Moody       - BGM_Live_087_Bolero
K.K. Oasis       - BGM_Live_081_Maharaja
K.K. Parade      - BGM_Live_051_Parade
K.K. Ragtime     - BGM_Live_029_Ragtime
K.K. Rally       - BGM_Live_069_Ondo
K.K. Reggae      - BGM_Live_015_Reggae
K.K. Rockabilly  - BGM_Live_067_Kekebily
K.K. Rock        - BGM_Live_027_Rock
K.K. Safari      - BGM_Live_025_Afro
K.K. Salsa       - BGM_Live_013_Salsa
K.K. Samba       - BGM_Live_010_Samba
K.K. Ska         - BGM_Live_016_Ska
K.K. Sonata      - BGM_Live_075_Sonata
K.K. Song        - BGM_Live_053_Kekesong
K.K. Soul        - BGM_Live_034_Soul
K.K. Steppe      - BGM_Live_022_Cossack
K.K. Stroll      - BGM_Live_077_Osanpo
K.K. Swing       - BGM_Live_004_Swing
K.K. Synth       - BGM_Live_089_Electronica
K.K. Tango       - BGM_Live_017_Tango
K.K. Technopop   - BGM_Live_038_Technobeat
K.K. Waltz       - BGM_Live_003_Waltz
K.K. Western     - BGM_Live_048_Western
Lucky K.K.       - BGM_Live_020_Irish
Marine Song 2001 - BGM_Live_064_Hunauta2001
Mountain Song    - BGM_Live_063_Alpine
Mr. K.K.         - BGM_Live_049_Sensei
My Place         - BGM_Live_056_Bokunobasho
Neapolitan       - BGM_Live_065_Napolitan
Only Me          - BGM_Live_040_Onlyme
Pondering        - BGM_Live_059_Kangaechu
Rockin' K.K.     - BGM_Live_028_Rocknroll
Soulful K.K.     - BGM_Live_033_Gospel
Space K.K.       - BGM_Live_079_Minimal
Spring Blossoms  - BGM_Live_072_Harunokomorebi
Stale Cupcakes   - BGM_Live_071_Blueonigiri
Steep Hill       - BGM_Live_066_Nidanzaka
Surfin' K.K.     - BGM_Live_042_Eleki
The K. Funk      - BGM_Live_031_Funk
To the Edge      - BGM_Live_058_Naminami
Two Days Ago     - BGM_Live_055_Ototoi
Wandering        - BGM_Live_073_Horo
Welcome Horizons - BGM_Live_095_Minnaatsumare
----- 2.0 update songs -----
K.K. Fugue       - BGM_Live_096_Fugue
K.K. Polka       - BGM_Live_097_Polka
K.K. Slack-Key   - BGM_Live_098_Slackkey
K.K. Chorinho    - BGM_Live_099_Choro
Chillwave        - BGM_Live_100_Chillwave
K.K. Dub         - BGM_Live_101_Dub
K.K. Lovers      - BGM_Live_102_Lovers
K.K. Bashment    - BGM_Live_103_Bashment
K.K. Hop         - BGM_Live_104_Hiphop
K.K. Break       - BGM_Live_105_Break
K.K. Khoomei     - BGM_Live_106_Khoomii
K.K. Robot Synth - BGM_Live_107_Android

Please let me know if you have any issues or feedback.
 
Last edited by IC_,

BootyGainzSpecialist

Active Member
Newcomer
Joined
Sep 19, 2020
Messages
27
Trophies
1
Location
Space
XP
147
Country
France
Title screen is "BGM_Title.bwav", town hall is "BGM_Indoor_Office_01.bwav". The nook store is "BGM_Indoor_Market_01.bwav" and "BGM_Indoor_Market_02.bwav", the second one being for the upgraded store.

Thank you :) Now, I just need to wait for the files to be dumped. It has been dumping for a day now lol..... wish there was a way to make it faster or choose what to dump
 
Last edited by BootyGainzSpecialist,
  • Like
Reactions: IC_

IC_

GBAtemp's ???
OP
Member
Joined
Aug 24, 2017
Messages
1,569
Trophies
1
Location
The Forest
XP
5,423
Country
Antarctica
Hourly music doesn't seem to replace for me, the title screen and everything else changed but not the hourly music even though it said that the files were patched in the bars patcher. Did I forget something?
Did you change all three versions of the hourly music? (Sunny, Rainy, Snowy)
i have the same error."report_0000000032df4367.bin"
Try rebooting the system and CFW, and try opening the game again. I'm really not sure what causes that as I don't think I have experienced it myself, but please make sure that you have the correct BARS file dumped from your version of the game, using a wrong Bgm_Base.bars file seems to be a common mistake.
 

BootyGainzSpecialist

Active Member
Newcomer
Joined
Sep 19, 2020
Messages
27
Trophies
1
Location
Space
XP
147
Country
France
Did you change all three versions of the hourly music? (Sunny, Rainy, Snowy)

Try rebooting the system and CFW, and try opening the game again. I'm really not sure what causes that as I don't think I have experienced it myself, but please make sure that you have the correct BARS file dumped from your version of the game, using a wrong Bgm_Base.bars file seems to be a common mistake.

Yeah, this is how my files look:
Code:
BGM_24Hour_00_Rainy.bwav
BGM_24Hour_00_Snowy.bwav
BGM_24Hour_00_Sunny.bwav

and I put them in

Code:
K:\atmosphere\contents\01006f8002326000\romFs\Sound\Resource\Stream
 

IC_

GBAtemp's ???
OP
Member
Joined
Aug 24, 2017
Messages
1,569
Trophies
1
Location
The Forest
XP
5,423
Country
Antarctica
Yeah, this is how my files look:
Code:
BGM_24Hour_00_Rainy.bwav
BGM_24Hour_00_Snowy.bwav
BGM_24Hour_00_Sunny.bwav

and I put them in

Code:
K:\atmosphere\contents\01006f8002326000\romFs\Sound\Resource\Stream
I'm not sure if the filesystem is case-sensitive, but I would change "01006f8002326000" to "01006F8002326000" and "romFs" to just "romfs". And also, this is probably a dumb question to ask, but are you actually at 12 AM in the game? Other than that I don't know what the issue could be without more details.
 

BootyGainzSpecialist

Active Member
Newcomer
Joined
Sep 19, 2020
Messages
27
Trophies
1
Location
Space
XP
147
Country
France
I'm not sure if the filesystem is case-sensitive, but I would change "01006f8002326000" to "01006F8002326000" and "romFs" to just "romfs". And also, this is probably a dumb question to ask, but are you actually at 12 AM in the game? Other than that I don't know what the issue could be without more details.

Tried renaming it and repatch the files again, no success.

Here's what I did:
- Downloaded City Folk/New Leaf music from smashcustommusic (I downloaded everything in the .bwav format)
- Renamed them to match the original game files
- Put it in `\atmosphere\contents\01006F8002326000\romfs\Sound\Resource\Stream`
- Patched the bars file. Everything went great, it even said it patched 76 files. (Would be cool to have an option to see what files has been patched)

The odd thing is that I changed the title and nook's cranny music too and it works, but not the hourly music.

Also, I am still at the beginning of the game. I don't know if it has to do with something though...

Update: Ok, I just unlocked the town hall and it worked. Weird
 
Last edited by BootyGainzSpecialist,

IC_

GBAtemp's ???
OP
Member
Joined
Aug 24, 2017
Messages
1,569
Trophies
1
Location
The Forest
XP
5,423
Country
Antarctica
Also, I am still at the beginning of the game. I don't know if it has to do with something though...

Update: Ok, I just unlocked the town hall and it worked. Weird
Oh, that explains everything, you don't have the hourly music until you unlock the town hall.
(Would be cool to have an option to see what files has been patched)
Thanks for the suggestion, I'll try to add that in a new version.
 

CherryDeerRose

New Member
Newbie
Joined
Feb 26, 2021
Messages
1
Trophies
0
Age
25
XP
42
Country
United States
Can I run it on a non-modded switch if I mod the game card of animal crossing? Also how would I start modding the game card as this would be my first time modding a system and game
 

BootyGainzSpecialist

Active Member
Newcomer
Joined
Sep 19, 2020
Messages
27
Trophies
1
Location
Space
XP
147
Country
France
Is there a way to lower the volume of already converted BWAV files? I downloaded a bunch of New Leaf/City Folk songs to put but they are just too loud compared to the rest of the game.

I also tried to manually edit the volume of some files using the Citric Composer but it doesn't work.
 

IC_

GBAtemp's ???
OP
Member
Joined
Aug 24, 2017
Messages
1,569
Trophies
1
Location
The Forest
XP
5,423
Country
Antarctica
Is there a way to lower the volume of already converted BWAV files? I downloaded a bunch of New Leaf/City Folk songs to put but they are just too loud compared to the rest of the game.

I also tried to manually edit the volume of some files using the Citric Composer but it doesn't work.
You'll have to convert the files again and change the volume. One way to do this is to open the downloaded files in a program like Audacity (it won't open all of the custom formats, so you should download in WAV), select all of the audio with Ctrl+A, go into Effect -> Amplify, and enter a negative amplification value. You can then open the exported WAV file from audacity in your BWAV creation program, and enter the loop points manually from the song page you downloaded the original file from (or just get the loop files from the original file if you're using your own files).

If you have openrevolution and ffmpeg, you can do it with this command:
Code:
brstm_converter original_file.bwav -o quieter_file.bwav --ffmpeg "-af volume=-5dB"
Using -5dB here as an example, you can change it to any other value. Same with the file names.
 

IC_

GBAtemp's ???
OP
Member
Joined
Aug 24, 2017
Messages
1,569
Trophies
1
Location
The Forest
XP
5,423
Country
Antarctica
The Github page for openrevolution now has Windows .exe files of the brstm_converter program, which should make the process a lot easier for Windows users.
 

Chubby_Bub

Member
Newcomer
Joined
Jun 18, 2020
Messages
12
Trophies
0
XP
53
Country
United States
Has it been figured out yet how villagers sing? I know we can find the relevant sound clips as bars, but do we know anything about the "sequences"? I’m curious if they could be ripped and/or modified.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    The Real Jdbye @ The Real Jdbye: it won't make it better or worse