Extracting Charts - lemocha7/Mod-The-Coaster GitHub Wiki

TO DO:

  • ST: find jacket location

Extracting Charts

Before we start porting charts to other games, the first thing we need are chart files.

Version Size
AC 4MAX 67 GB
AC 2 20 GB
SW 1.5 GB
SW DLC ~45 MB per
APP 1.3 GB (partial)
ST 507 MB

Downloading from APP's servers [EASIEST]

NOTE: MOBILE IS GOING END-OF-SERVICE AT THE END OR MARCH

DOWNLOADER PROGRAM BUGGED, ONLY DOWNLOADS AUDIO FOR ~145 / 639 SONGS! Contains some early exclusives.

NOTE: You do not need the mobile game to do this. All data is freely available on Taito's servers.

For example: https://dl.sp-taitostation.com/ios/gc2/tuneFile202008051122.pak.

Requirements:

  1. Run start.bat included in gcm-downloader and wait for it to install dependancies.
    • if dependency install is throwing error, open requirements.txt and change lxml==4.5.2 to lxml.
  2. Once the app is running, type 1 (download all chart files) and wait for it to download in data/ios/gc2/.
  3. Done! All ZIP files have a password of eiprblFFv69R83J5.

[I have no idea what to do about d4dja.zip crashing the program, by the way.]


AC [RECOMMENDED]

Most expansive song list in the series.

Requirements:

  • Dump of AC

Data is unencrypted in data/stage. It's that simple.

data/
	boot/
		stage_param.dat
	stage/
		2d/
			[.dds jacket files]
		sound/
			[.wav audio files]

		[.dat chart files]

SW

Currently the only version being updated, including all the newest songs.

Requirements:

Dumping / Extracting Files

If you already have .nsp or .xci files, you can skip this step.

We'll be using nxdumptool to dump the files. Alternatively, you can use nstool on a dumped .nsp file, but I couldn't get that to work :/

  1. Open nxdt_rw_poc on the homebrew menu (applet mode works fine)
  2. Navigate to user titles menu > 0100EB500D92E00 - GROOVE COASTER WAI WAI PARTY!!!!
  3. Click on nca / nca fs dump options and select what you want to dump.
  4. Click on Program #0 > RomFS (Patch RomFS for update) and click start nca fs section dump
  5. Done! Extracted files will be stored on SD at sdmc:/nxdt_rw_poc/NCA FS/User/Extracted/***.
Content Size
Base game 1530 MB
Update (1.0.20) 637 MB
DLC ~40 MB

Unzipping Charts (.dat.gz.dat)

Just un-zip the file and you should be good. 7-Zip can extract multiple archives at once (at least on Windows). Not sure about other platforms, sorry.

Converting Audio (.wav.opus.wav)

We'll be using vgmstream for this.

The web player can convert songs 1-by-1. If you want to convert multiple at once, you have to use the command-line tool.

  1. Open the directory with your audio files in command prompt (cd ###)
  2. Enter for %f in (*.wav.opus) do vgmstream-cli -o %f.wav %f (replace "vgmstream-cli" with valid path to exe).
  3. Run the command. Files should be exported in your input directory.

Converting Jackets (.bntx.dds)

We'll be using Switch-Toolbox.

  1. Open toolbox.exe and click on Tools > Batch Export Textures
  2. Open all the .bntx files to extract, then select a folder to output to. Done!
boot/
	stage_param.dat
stage/
	2d/
		[.bntx jacket files]
	data_gz/
		[.dat.gz chart files]
	sound/
		[.wav.opus song files]

ST [NOT RECOMMENDED]

NOTE: extraction does not include song jackets!

Requirements:

Right now, the game folder in steamapps/common/Groove Coaster for Steam should contain a whole bunch of .aar files. We'll need to extract them with a quickbms plugin.

Data/
	[.aar archives]

Extracting from Archives (.aar)

We will be unpacking all the game's assets from the .aar archives.

  1. Open quickbms.exe and provide it alar.bms
  2. Open all Data/Stage00###.aar files
  3. Select output folder, and it will extract the files!

Each Stage00### folder should contain .dat and .asn files.

NOTE: you cannot use the extracted .dat files until proceeding with next step. They are ALLZ encrypted.

Decoding Data (.dat)

.dat chart files are encrypted with ALLZ compression (modified LZSS). Drag each .dat file into Aqualead_LZSS.exe and it will unpack it.

We can automate several folders in CMD. Here I made a batch script, aqualead-lzss.bat. The .bat script will go in each folder placed where the .bat is and convert all .wavs to .oggs.

mkdir "../Data-extract"
for /r %%d in (.) do (
	pushd %%d
	mkdir "../../Data-extract/%%~nd"
	for %%f in (*.*) do "../Aqualead_LZSS.exe" "%%f" "../../Data-extract/%%~nd/%%f"
)
  1. Move Aqualead_LZSS.exe and aqualead-lzss.bat into the directory that extracted the .aar files, then run the .bat. Chart .dat can now be used.

Converting Chart Audio (.asn.ogg)

.asn audio files are standard .ogg files with a 20 byte header. Remove the header, and it will work as a standard .ogg.

This process can be done in bulk using Mod The Coaster.

  1. In Mod The Coaster, go to ASN Trim.
  2. Drag .asn files in the input box, then save the output. Done!

Converting Jackets

[I DO NOT KNOW WHERE JACKETS ARE STORED] [ATX FILES ARE JUST DDS WITH MODIFIED HEADER]


Mod The Coaster ♡ lemocha 2024 - 2025