Convert ST - lemocha7/Mod-The-Coaster GitHub Wiki

Convert Charts to ST

Requirements

Creating a modded copy of the game

NOTE: this step is optional, but recommended. I do not advocate for submitting illegitimate leaderboard scores.

We are going to copy the game and remove all ties to Steam. This will disable requiring to connect to Steam every 7 days and allow you to "obtain" DLC charts, but will also disable leaderboards and achievements. Saves will not be copied over.

Requirements:

  1. Copy all game files to a different folder. This will be the modded game.
  2. Run Steamless and input App/gcst.exe. It should output gcst.exe.unpacked.exe.
  3. Replace App/steam_api.dll with the one provided in Goldberg.
  4. Create these files and leave them empty:
    • App/Release/steam_settings/DLC.txt. This will disable all DLC. Unless you have an AAR file for the DLC, the game will crash when previewing that song.
    • App/Release/steam_settings/disable_networking.txt. Leaderboards are already disabled without this file, but this is to make extra sure we're not submitting scores.

You can now freely launch App/gcst.exe.unpacked.exe without Steam. You can also customize your in-game name in C:/Users/###/AppData/Roaming/Goldberg SteamEmu Saves/settings/account_name.txt. Else, it will default to Noob.

NOTE: We need Steamless because the game requires Steam to be open while booting. We need Goldberg or else the game will throw a Steam Initialize Failed error.

Porting Charts

Charts are stored in Data/Stage00###.dat, where ### is song ID.

Converting Audio (.wav.ogg)

We need a audio conversion program that will convert to .ogg. For this example, we'll be using Audacity.

  1. Load the .wav in Audacity (can be done with File/Open).
  2. Click File/Export/Export as OGG and select any quality you desire. Done!

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

for /r %%d in (.) do (
	pushd %%d
	for %%f in (*.wav) do "C:\Program Files (x86)\FFmpeg for Audacity\ffmpeg.exe" -i "%%f" -c:a libvorbis "%%~nf.ogg"
)

Packing Charts

Non-DLC Charts:

  1. In Mod The Coaster, open AAR Zip, then input the Song ID of the song you're replacing.
    • E.g. if you're replacing Thrash Beat [21] with STAGER ALL CLEAR [487], set ID to 21.
  2. Enter all .dat chart files and .ogg / .asn audio files into the input box.
  3. Leave downloaded file name as is and replace the existing chart file in Data/. Done!

DLC Charts:

NOTE: adding DLC charts requires a modded copy as described at the start. In theory, DLC charts should work while replacing standard charts, but I have yet to test this.

If the chart is already in the game as DLC, we can simply provide the chart files and ask Goldberg to load the DLC. The game internally stores all but the chart and music files for every DLC song.

  1. Open App/Release/steam_settings/DLC.txt and add a new line containing the DLC ID followed by an equals sign (e.g. 954601 = Death by Glamour).
  1. In Mod The Coaster, open AAR Zip, then input the Song ID of the DLC song.
  2. Enter all .dat chart files and .ogg / .asn audio files into the input box.
  3. Leave downloaded file name as is and save it in Data/. Done!

Editing Difficulties

NOTE: this step is optional, only affecting displayed difficulties. While we cannot directly edit song / artist name (that is stored in the song jacket as an image), we can edit TableTune's hex to change displayed chart difficulties.

Decrypt TableTune

We have to remove the ALLZ compression present in TableTune.aar.

  1. Drag Aqualead_LZSS.exe into command prompt.
  2. Drag TableTune.aar into command prompt.
    • Your command should look like "C:\###\Aqualead_LZSS.exe" "C:\Program Files (x86)\Steam\steamapps\common\Groove Coaster for Steam\Data\TableTune.aar"
  3. Run the command. out_TableTune.aar should be exported in the same directory as Aqualead_LZSS.exe. I'd recommend making a copy of this file.

Editing TableTune

With Mod The Coaster:

  1. Enter your unpacked TableTune.aar into the input box.
  2. Enter a song ID and click find. Then, change the values and click replace.
  3. Download the modified TableTune.aar once done.

Make sure not to change file length!

Manual Way:

For this example, we will be changing the song data for No Way Out to 21124.

  1. Get the Song ID and convert it to HEX, then add 6 zeroes after it. If song ID is 256 or greater, add a zero infront and move the first number to the right.
  • No Way Out's ID of 93 would be 5D in HEX, so you would search for 5D 00 00 00.
  • BUCHiGiRE Berserker's ID of 705 would be 02 C1 in HEX, so you would search for C1 02 00 00.
  1. 28 bytes after the zero, there should be a set of 4 difficulties, each separated by 3 zero bytes (see image below). Each difficulty can range from 0 - 15 in hex, where 0 is disabled.
  2. Done! Reboot ST and the changes should take effect.
Base Edited
Base Edited

Mod The Coaster ♡ lemocha 2024