Groove Coaster

Groove Coaster

View Stats:
Brolijah Aug 17, 2019 @ 1:53pm
Can we talk about the game files?
This is something I go back to every few months when I'm bored. I like to poke around games and dig out resources or reverse file formats. A few months ago I finished a program that can decompress this game's resources. Most the resources are archived in ALAR files or compressed in ALLZ files or a multi-layered combination of both. The ALAR format has been documented for years and there's a quickbms script to extract them. ALLZ wasn't documented so that was a fun endeavor converting x86 ASM to C code. At some point I'll look into compressing them again.
I'll link the relevant tools and scripts at the end of the post.

Anyway, the game hasn't seen a lot of love from the developers recently, so I wonder if making this thread will get their attention in some (good or bad) way. Not that I have much to say, but there is something they should probably do.

One thing that stands out to me when digging around the files is the massive list of stuff that's been left over from Groove Coaster Arcade. Skins, Avatars, Menu items, etc. It looks to me like every Avatar and Skin are in files, but they're just not accessible to us in-game. I believe the songs have preset Skins to use and it's just not in our control. But there's around 100+ Avatars in the files we can't use.

https://www.dropbox.com/s/7l9hwhjd0fl1kej/Screenshot%202019-08-17%2012.46.33.png
https://www.dropbox.com/s/ks3fn1u6p042fxn/gcpc_2d_avatars.png

That's not the only thing that stood out to me though. There's actually something that kinda irks me why they let it ship with the public version of the game. So, in the data directory of the game, there is a configuration file called GameReg.xml. You can't normally read it because it's compressed. However, once you decompress it, you'll be able to see it, modify, whatever, and then use that in-game. The Aqualead framework used by Taito for this game has no qualms about opening a file that isn't compressed.

There are a lot of values in this XML, some of it for debugging, some online multiplayer stuff that has no purpose in this game, but there are stuff that might interest players (or cheaters). You can make Ad-Libs visible. You can adjust various raw timing and offset values. You can also adjust the timing window for Greats in the game. I'm sorry, what?? Why was that shipped with the game? This is the kinda stuff people will find eventually so why leave it there? By default this value is 32 which I presume means "within 32-milliseconds" of the target. However, this window can be made smaller or wider. Multiply it by 10 and the window is 320 milliseconds.

I'm aware some of this feels heavily out of place, but at the rate which this game is getting updates and feedback from the developers, I fear the game will be left in the hands of the community to make improvements or add content. The data now lies exposed, it just takes somebody willing to document the files and the doors for modding will be flung open. And for a game like this, I don't think you want that kinda rep after only a year of its release date.

Links to stuff I used:
For decompressing ALLZ files[github.com]
Link to quickbms[aluigi.altervista.org]
Link to ALAR quickbms script[aluigi.altervista.org]
Below is an alternative build of QuickBMS w/ my ALLZ code. Not in the public version compiled by aluigi, but will be in his next update, whenever that is.
Alt version of quickbms w/ ALLZ[cdn.discordapp.com]
Link to ALLZ quickbms script[www.dropbox.com]

Message to TAITO: Please continue developing this game. Don't leave us to own devices just yet.
Last edited by Brolijah; Aug 18, 2019 @ 6:27am
< >
Showing 1-11 of 11 comments
Trew Domko Aug 20, 2019 @ 12:30am 
seeing the cirno avatar not being used makes me so sad. wish the devs didnt abandon the pc port
Brolijah Aug 20, 2019 @ 10:38am 
tbh they probably just left everything there so that it would already be in the game when they actually make it available (if ever at all). Whenever there's new songs added to the game, they really only just add these "Stage" files and update the song list. The Stage files holds the music and chart scripts. Nothing else gets updated.
Last edited by Brolijah; Aug 20, 2019 @ 10:45am
You should put it all on http://tcrf.net/
Yo bro, this is interesting that you made this, I really appreciate this information

Speaking of which and changing topics, can you help me to also decompress another game? I'm trying way too hard but can't do anything!

Nonetheless, thank you for taking your time to decompress the game, it really seems this PC port is abandoned after this...
TBS-Frain_Breeze May 17, 2020 @ 7:05am 
So, I've been looking around the game files as well, in an attempt to "rescue" the game by figuring out the chart file layout. However, while I can get the files from .aar to an extracted directory, I'm having trouble packing the files back into .aar. I was hoping you could help me out with that, I would really appreciate it. Also, after rummaging around in the switch game files, it turns out they use the same file structure, but the files aren't identical. This could be a slight tweak made to the chart of course, so I'm hopeful the charts are (nearly) interchangeable.
TBS-Frain_Breeze May 17, 2020 @ 8:49am 
Actually, after browsing around a little more, I found out how the structure of the aar files used works, so I can write a "packer" for that myself. However, I'd still appreciate it if you have any leads you'd like to share with me which could make my life easier.
WorldWidePeepo May 18, 2020 @ 9:49pm 
Shows how much potential this game HAD, yet devs decided to throw the game into the gutter :GDInsane:
RockMan Rock .j2 Jun 9, 2020 @ 12:25pm 
how did you decode the xml file?
Sinful Sorcerer Jun 22, 2021 @ 10:44pm 
It's been almost two years, and not a word from the devs. :/ It's sorely disappointing seeing all this unused content.

I guess our only hope now is brave souls such as yourself unlocking the way to modding the game. Although from the look of things most players have long since abandoned the game as well, not that I blame them.
A little bit late, but it appears that the chart of PC version shares significant similarities to the mobile version. At least more similarities than the switch version. All 3 versions uses tumo as the in-game model format (that are actually interchangable). Textures, however, is in ALTX (BGRA), op seems to be able to directly open it in gimp, but it is also able to be parsed (width x height x4 + header, BGRA color value pileup). asn audios are just oggs, simply remove the first 32 bytes until the oggs magic (mobile uses ogg too, switch uses opus). Chart files are interchangable between the mobile and PC. I believe that the main issue of porting to PC would be recompressing (packing) LZSS files, and main issue of porting exclusive track to Android (what I'm doing) is pak and stage_param edit.
Last edited by hemoridhero; Jan 22 @ 2:14pm
Originally posted by hemoridhero:
I believe that the main issue of porting to PC would be recompressing (packing) LZSS files,
You don't need to recompress them, the game uses the files without LZSS just fine.
< >
Showing 1-11 of 11 comments
Per page: 1530 50