Sonic and Sega Retro Message Board: Samba de Amigo 2000 hacking - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
  • 2 Pages +
  • 1
  • 2
    Locked
    Locked Forum

Samba de Amigo 2000 hacking

#1 User is offline Miles Prower 

Posted 01 October 2018 - 12:45 PM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
I've had a peek at Samba de Amigo 2000 on Dreamcast, which I consider the definitive home version of the game. It includes all the songs from the original game, adds a lot more (including fake DLC), and has more game modes. The only downside is that a few mini-games are missing (replaced by volleyball), but eh.

I've had a peek at how the game works. The gist of it is, audio tracks are your good old regular ADX files, and beatmaps are a relatively simplistic format (not quite just a .txt file as in Stepmania, but hex editing the files show difficulty levels in plain text and patterns). Fun thing is that the Wii version seems to be using the same beatmap format, only the endianness is reversed for some reason. There's also quite a bit of padding it seems, with a (broken) ~600mb "ADX" file on the disc.

So there are a few things that could potentially be done, I believe:

  • Inject the Wii tracks (and Wii DLC) into Samba 2K
  • Translate the game into at least English, even by re-using the textures from Samba 1


and maybe, going further than this

  • Unlock on-disc "DLC" stages by default, saving previous space on your VMU
  • Convert and import tracks from Shakka to Tambourine, Shakka to Tambourine 2001, and MiniMoni Shakka to Tambourine Dapyon
  • Create custom tracks!


Now there are a few things that can help a lot: there's no encryption, no significant compression, and pretty much all file formats are supported by relatively modern tools (apparently even ffmpeg added DC ADX support, including encoding, back in 2016).

The current roadblocks are:

  • I've got no idea how to repack a .GDI for a gdemu (or a milCD .cdi). So far all tests failed, both on an emulator and the real hardware
  • ADX encoding seems to produce poor audio quality with the settings I tried so far
  • I've got no idea how to further analyze the beatmap files, and potentially produce my own
  • The way the song list work is a mystery. Haven't looked into it. There's a chance it's hard-coded.


If anyone want to send some pointers my way, or just help in general, I'd highly appreciate it. Thanks!
This post has been edited by Miles Prower: 02 October 2018 - 10:36 AM

#2 User is offline Overlord 

Posted 01 October 2018 - 02:23 PM

  • Substitute Meerkovo IT Chief
  • Posts: 17028
  • Joined: 12-January 03
  • Gender:Male
  • Location:Berkshire, England
  • Project:VGDB
  • Wiki edits:3,204
For ADX encoding I've been using adxencd.exe for years, seems to make good quality files. http://overlord.digi....ca/adxencd.exe

Instructions:

Quote

When ready to encode, open up a DOS Prompt, go to the directory both the encoder and a WAV are in (it's easiest to do it that way) and type:

adxencd [wavefilenamehere] -lps[loopstartnumber] -lpe[loopendnumber]

(Note: no space between the -lps/-lpe and the number, do not include the [] characters. The numbers are the sample number point, you can see what this is in something like Audacity)

Once it starts, it shows some info about the file it's reading and creating, and when it's done, you'll have an ADX with the same name as your wav file sitting in the directory.


Example ADX files I have made:

http://overlord.digi...st_got_real.adx
http://overlord.digi...t%20(anime).adx
http://overlord.digi...1.10%20BIOS.adx

#3 User is offline Miles Prower 

Posted 02 October 2018 - 07:01 AM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
While not perfect, the audio conversion sounds MUCH better with this indeed. Thanks!
This post has been edited by Miles Prower: 02 October 2018 - 07:01 AM

#4 User is offline Miles Prower 

Posted 02 October 2018 - 07:20 AM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
Update: converted the endianess of a Wii-exclusive beatemap, and used it to replace a Samba 2K song. It mostly works as-is! The cameras are broken, the hustle mode crashes when it calls the first pose, but the regular mode works perfectly until the end of the song.

#5 User is offline Miles Prower 

Posted 02 October 2018 - 06:56 PM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
Posted Image

Surprisingly enough, the game engine can handle tree-handed players just fine.

#6 User is offline nineko 

Posted 02 October 2018 - 07:56 PM

  • I am the Holy Cat
  • Posts: 5648
  • Joined: 17-August 06
  • Gender:Male
  • Location:italy
  • Project:I... don't even know anymore :U
  • Wiki edits:5,251
I'd offer my help, but I never played this game and I didn't even know what it was about until 5 minutes ago when I looked for it on Youtube. From what I can see, it look like a DDR clone with maracas instead of arrows, correct me if I'm wrong.

That said, writing programs which parse weird formats to make them editable is actually one of my favourite tasks, so I might be able to create an editor for those beatmap files if you manage to understand their format (and you provide me the beatmap files themselves; as I said, I don't have this game).

#7 User is offline Miles Prower 

Posted 02 October 2018 - 08:51 PM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
Yes! This is a Naomi/Dreamcast rhythm game. You shake the maracas once when there is a single blue ball (eh), continuously when it comes to red balls, and hold a pose when prompted. Samba 2000 added a "hustle mode" as well, which are basically non-static poses.

You can get a good idea of the game using the Wii version. Only, the wiimote gameplay sucks.


Here's some gameplay of "Let's go away" (Daytona) played in NullDC:

https://www.youtube....h?v=Pp4vXpv3_1I

This is a DLC song, exclusive to Samba 2000, and injected here in Samba de Amigo without any specific modifications. Hence the broken camera angles.

AMG beatmap as-is: https://drive.google...MFAUxsyU9y/view

The broken gameplay screenshot above was a simple experiment, copying and pasting the first few lines of a song in Easy mode, to repeat the associated pattern and try to get some hints. It does work somewhat, so I'm thinking there is no particular compression used in that file - it's a raw beat map. I guess it's missing some sort of "close" tag for a stream of red balls, they go on until the end of the song.
This post has been edited by Miles Prower: 02 October 2018 - 08:52 PM

#8 User is offline sonicblur 

Posted 02 October 2018 - 10:20 PM

  • Posts: 1216
  • Joined: 18-February 08
  • Gender:Male
  • Wiki edits:6

View PostMiles Prower, on 01 October 2018 - 12:45 PM, said:

  • I've got no idea how to repack a .GDI for a gdemu (or a milCD .cdi). So far all tests failed, both on an emulator and the real hardware

A simple google search would have pointed you to the tool I wrote specifically for doing this:
http://projects.sapp...gdibuilder.html

I wrote it after I got a GDEmu board several years ago. Just make sure you're starting from an extracted GDI so that you have unmodified IP.BIN and 1ST_READ.BIN files for the game. (Although I believe someone over at assembler created a custom IP.BIN that auto-detects whether it's running on a CD-ROM versus GD-ROM and automatically does the right thing allowing you to use the same files for both types of media)

#9 User is offline Miles Prower 

Posted 03 October 2018 - 07:13 AM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
Ah, yes. This tool was part of the failed tests, unfortunately. I used an untouched extracted GDI (well, tried with multiple ones, even) and tried to repack it that way, it could never boot.

#10 User is offline grap3fruitman 

Posted 03 October 2018 - 12:51 PM

  • Posts: 3098
  • Joined: 19-February 08
  • Gender:Male
  • Wiki edits:5

View PostMiles Prower, on 01 October 2018 - 12:45 PM, said:

The only downside is that a few mini-games are missing (replaced by volleyball), but eh.

Are you able to look at the arcade version at all? I wonder if the code for those modes is portable or even still in the console version just disabled. I wouldn't know where to start with such an endeavor either as much as I'd like to poke around inside DOA2 on Naomi. Honestly, how would one go about doing a proper disassembly of an arcade ROM? Samba, DOA, whatever. If Samba has any beta leftovers, they'd be in the arcade version.

View PostMiles Prower, on 03 October 2018 - 01:16 PM, said:

I'm not sure how that would work either. What are the gameplay differences with the home release?

Uh, shouldn't you know? You're the expert here and said the console port was the definitive version. I've never played the game, I just have a general interest in Naomi rom hacking.

To get the disassembled code you can use mame's default disassembler. I just used it on DOA2 using these parameters and it worked okay. Obviously, nothing's notated and I don't know SH4 assembly so this does squat for me right now. Though, the prospect of completely modifying this game is fascinating. I don't know where to go from here.
mame200-64>unidasm doa2verm.ic22 -arch sh4 > doa2verm.txt

Uh for the Rev B version of Samba you'd use this I think. Apparently there's a ver2000 arcade version also? That has a different mainrom and there's also a Samba prototype in the wild, who knew?
mame200-64>unidasm epr-22966b.ic22 -arch sh4 > epr-22966bic22.txt
This post has been edited by grap3fruitman: 03 October 2018 - 05:45 PM

#11 User is offline Miles Prower 

Posted 03 October 2018 - 01:16 PM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
I'm not sure how that would work either. What are the gameplay differences with the home release?
This post has been edited by Miles Prower: 03 October 2018 - 01:16 PM

#12 User is offline sonicblur 

Posted 03 October 2018 - 06:07 PM

  • Posts: 1216
  • Joined: 18-February 08
  • Gender:Male
  • Wiki edits:6

View PostMiles Prower, on 03 October 2018 - 07:13 AM, said:

Ah, yes. This tool was part of the failed tests, unfortunately. I used an untouched extracted GDI (well, tried with multiple ones, even) and tried to repack it that way, it could never boot.

You must have done something wrong then. I've never encountered a game that didn't work, and even have used it to rebuild bad dumps that wouldn't boot so that they would boot.

Does the original GDI Boot? If so, you use something like GD-ROM Explorer to extract Track03.bin to a data folder. Extract IP.BIN with it as well, somewhere outside the game data folder so you're not accidentally adding it to the game disc. Modify files in your data folder.
Make a copy of the GDI and supporting files in another folder. Delete track03.bin. Select your data folder that you extracted disc files to in GDIBuilder along with the IP.BIN you extracted. (I'm assuming since the game used ADX audio that there is no CDDA) You may also want to use the Advanced window to set the disc name and other properties to exactly what they were on the original disc. (GD-ROM explorer can show you those) Let GDIBuilder build you a brand new track03.bin. This is used in place of track03.bin from the original GDI folder that you copied and deleted. Note that you can't just randomly rename whatever files you want. A GDI works just like .CUE sheet in bin/cue dumps, the file names of the tracks are specified in the .gdi. If you rename something you break the whole thing. This is why I keep GDI's in their own folders. The tool is also expecting your GDI file to be called disc.gdi, because that is what all of the dumping tools call it. It will automatically update a file called disc.gdi if necessary. If there is no disc.gdi, that doesn't get updated for you. In most cases the .gdi file itself does not actually need to be updated, that only changes if you're modifying a game with CDDA and your data is larger or smaller than the original such that the tracks need to move. On a game with only data, the track03 will always be the same size because GD-ROMs always end on the same sector.

Just to re-iterate, GDIBuilder just builds track 3 and above, which is where all of the game data is. It doesn't rebuild track01 and track02, which are the PC readable tracks, just the data in the high density area (track03 and above). You leave those unmodified and let GDIBuilder create a replacement for the data track.

#13 User is offline Miles Prower 

Posted 04 October 2018 - 09:24 AM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
@grap3fruitman For all I know, from a user-facing perspective at least, I'm not aware of significant differences between the arcade and home release when it comes to the music tracks. The list seems identical (both for Samba and Samba 2K), the beatmaps seem to be as well. The hardware is different but I4m not sure how the magnetic sensors of the arcade machine work (they don't use a sonar like on DC). But I've only seen the machine once or twice in the wild, so there might be stuff I'm unaware of. In any case yes, Samba 2K pretty much is the definitive home release of the game, considering the Wii controls are so poor and just plain not fun.

@sonicblur SiZiOUS has been helping me out repacking the game, but I'll give your tool another try. Thanks for the details.

Edit: tedious stuff here. The whole game seems to fit inside the 2mb 1stread.bin (and calls external textures, sounds, and music).


I believe this is related to the VMU saves:
Posted Image

This could be the song list:
Posted Image

Interestingly, a few songs do not appear in the final game. "Mas Que Nada" still has its .amg file right there under our noses in the GD file system though, so it might be possible to restore its beatmap. No idea which version of the song was meant to be used with it though, and I haven't tried swapping the beatmap around yet just to check if it's still valid. Same goes for another song, called "One week", the .AMG beatmap is still on the disc. There's nothing on the disc for "Honoo No Fighter".
EDIT: "Mas Que Nada" was actually published fully in JP Samba 1, and exclusive to the region. "El Mambo" was as well.
EDIT: "Honoo no Fighter" is probably just "theme of Inoki".


There's also "Sonic A GoGo" (but no beatmap, no music). Isn't that the theme song from Sonic X, which aired years later?
Edit: the ADX file is still in the JP disc. It's actually the Sonic World music, from Sonic Jam: https://www.youtube....h?v=VQiSqjjr3Ig


The Dreamcast games also includes text direct from the Arcade version, such as "Insert Coin" (never shown anywhere in the home release afaik). There is also a "debug menu" string in there.
Full album of some mildly interesting things in this file: https://imgur.com/a/w4dSDAu (PAL GDI)
This post has been edited by Miles Prower: 04 October 2018 - 02:48 PM

#14 User is offline Miles Prower 

Posted 08 October 2018 - 05:29 PM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
Quick post: here is a "naive" mod in action played by a friend. "Mexican Flyer" has been taken from the Wii version and injected into Samba 2000 without any further changes:

https://www.youtube....h?v=MtnWXoESzt4

Interestingly, we also tried swapping replacing "Mambo Beat" with "Mas Que Nada" from the Wii version (the song used to be in Samba 1, but was one of the very few removed from 2000). The Wii file triggers the Bingo & Bongo scene/stage on the Dreamcast with a perfectly working camera.

Thread on AssemblerGames: https://assemblergam...igo-2000.69941/
This post has been edited by Miles Prower: 08 October 2018 - 05:30 PM

#15 User is offline Miles Prower 

Posted 12 October 2018 - 03:32 PM

  • Renard
  • Posts: 696
  • Joined: 25-January 03
  • Gender:Male
  • Wiki edits:1
FunKing (AssemblerGames) found a long list of unused menu entries within Samba de Amigo 2000:

Quote

I've been through most of the DC files already, and I've found a couple of interesting things I'd like to share.

First, does anyone know if the number 38 has a special meaning in Samba de Amigo, or for Sonic Team in general? It appears in several places, but I have no idea why. Perhaps there were 38 songs in at least one version of the game?

I also found these music menu entries that doesn't seem to be used in Samba de Amigo ver. 2000 (perhaps some were old files and others work-in-progress that didn't make to the final cut):

  • Are You Gonna Go My Way
  • Bailamos
  • Cafe
  • Can't Take My Eyes Off Of You
  • E Uma Partida De Futebol
  • El Mambo (available on DC & Wii)
  • Gonna Fly Now (same as "The Theme of Rocky"?)
  • Here Comes The Hotstepper
  • I Got A Girl
  • Lupin The 3rd
  • Mambo Mambo (Wii DLC)
  • Mas Que Nada (on arcade, DC & Wii)
  • Ob-la-di,ob-la-da
  • One Week
  • September
  • Shake Hip
  • Sonic A Go Go!!
  • Suavemente
  • Synchronized Love
  • The Theme Of Hige


Coincidentally, I always thought that "É Uma Partida de Futebol" would be a perfect song for the game! Unfortunately, there are no ADX (audio) nor AMG (beatmap) files for those songs (except for "Gonna Fly Now"). I wonder if those songs were dropped for gameplay or licensing issues (if they were even worked on at all)...


https://assemblergam...41/#post-978982

  • 2 Pages +
  • 1
  • 2
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users