Romhacking.net

Romhacking => Newcomer's Board => Topic started by: RamaR on February 24, 2014, 07:23:58 am

Title: Hacking games
Post by: RamaR on February 24, 2014, 07:23:58 am
Hello,

i have no experience at all whit hacking of videogames and just registered here.
I would like to know how to hack gamecube games.
Title: Re: Translating a NGC Game
Post by: KingMike on February 25, 2014, 01:47:24 am
GameCube hacking is pretty uncharted territory, so you shouldn't be surprised if you don't get an answer quickly.

The only other translation I'm immediately aware of is a Super Robot Wars game. And that is through hacking texture packs, which is a debatable practice in itself. (while it does translate the game, it wouldn't be archived on this site unless the original game data is patched)
Title: Re: Translating a NGC Game
Post by: Dashman on February 25, 2014, 07:18:31 am
Hey RamaR, it's just as KingMike says. There's very few people who have taken the time to look into NGC games, so it's gonna be a bit difficult to get some help on it. Your best bet is trying to contact the author of the patch you downloaded and asking him for tips or his notes on the translation to continue his work where he left it.

If by any chance you're playing the game on an emulator, there's a chance you could do as we're doing in the Super Robot Wars GC game and replace the Japanese textures with your own edited ones. It's a very easy task and requires zero hacking skill.
Title: Re: Translating a NGC Game
Post by: FAST6191 on February 25, 2014, 08:38:56 am
There has been some work gone into GC games, not so much in translation though.

http://hitmen.c02.at/files/yagcd/yagcd/frames.html is the main hardware documentation for this, however it is a bit old so you might also want to poke around the dev notes/wiki/source code to Dolphin, https://github.com/dolphin-emu/dolphin for the source and https://dolphin-emu.org/ for the rest.

The formats are broadly similar to a lot of what was seen on the Wii (the Wii was basically an overclocked gamecube so that is a common theme) and to a slightly lesser extent the DS (the DS is a bit more limited so some of the common things seen on the GC would serve no purpose on the DS, anybody that looks at the GC ARC format and the DS NARC/CARC format can attest to that). YAGCD above covers a few of the common formats as well (chapters 14 and 15) but not in any great depth.
Being optical media based* you do have a filesystem to play with, the tools are not quite as nice as some of the stuff seen on the Wii as far as remapping and general niceties but pulling files out, injecting them back in and otherwise building isos is quite possible. GCtool is probably the more common one here,
The GC did seem to pioneer or at least make common a type of compression called yaz0 ( http://www.amnoid.de/gc/yaz0.txt ), it became very popular on the Wii so you are better off looking there for tools, not sure what the current one is there as I tended to just use the example builds of various libraries floating around. Tools wise there is enough that someone that knows hacking well enough could get by (GCtool does iso stuff, yaz0 is sorted, IDA has reasonably modern plugins (http://blog.delroth.net/2012/03/gcwii-dol-plugin-built-for-ida-6-1/) for the DOL format that binaries come in, you can do worse than dolphin for an emulator with debugging though it is certainly no FCEUX....), you have nothing really as far as some of the far nicer/more extensible stuff those playing in NES and SNES world have though.

I would really not suggest the GC if you "have no experience at all whit the translation of videogames". It sounds like you have a fairly basic game on your hands but if it throws a curveball at you, hands up everybody that has had the majority of their projects be basic formats without any quirks at all, then you are going to be learning a lot to get past it and there are not going to be so many people able to help you; if it did not say mario kart or smash brothers on the title screen then it probably was not hacked very much, GC homebrew was never really a thing and we are still seeing massive improvements to the quality of GC emulation.

*do be aware that a lot of work went on in the Wii side of things and GCOS before it, to this end if you are downloading games then they might not come in standard ISO formats -- with the failure of the GC and success of the Wii many people went back and looked at what the GC had to offer, for reasons unknown they then rebundled said isos in other formats. There should be tools to extract/convert things out of these formats (Gamecube ISO tool and maybe GCMutility being two popular ones).
Title: Re: Translating a NGC Game
Post by: Zoinkity on February 25, 2014, 01:09:05 pm
And that is through hacking texture packs...while it does translate the game, it wouldn't be archived on this site unless the original game data is patched
Not true.  Vanit's Sin and Punishment patch is a texture mod. (http://www.romhacking.net/translations/920/)  Incidentally, at my third attempt to upload a hardpatch translation (http://share.cx.com/BnjRB7) it was denied as plagiarism of Vanit's patch because the english subtitles for the english VO were too similar.  Rather amusing, because if anything it's closer to the official Wii release which is, incidentally, done via texture replacement ;*)

I'm not against resource replacements at all, especially if they run on the target system.  Wii games can use a replacement scheme via some homebrew, though I don't think GC games on the Wii can.  Would be worth looking into.  PC games have done this for years as well.

[edit: sorry, must have pressed enter a few too many times ;*)]
Title: Re: Translating a NGC Game
Post by: RadioTails on February 25, 2014, 02:33:55 pm
I bet the file formats are the same for the GameCube and PS2 are the same.  If this is the case, you could just replace the translated PS2 file with the ones used in the GameCube.

If I get bored, I might look into extracting files from PS2 games.
Title: Re: Translating a NGC Game
Post by: RamaR on February 25, 2014, 06:05:03 pm
Thank you for the answers.

Its prolly true that there are not many Gamecube Hacks like there are for other systems, allthough i didnt intesively looked for those.
Frankly im only interested in one game at the moment.
Title: Re: Translating a NGC Game
Post by: Dashman on February 25, 2014, 06:45:57 pm
The weird symbols in Unicode are probably because you've selected UTF-16. Go to View -> Character set -> Code page... and select UTF-8 (should be almost at the end). There's some other formats for Japanese characters, but you should be fine using that one.
Title: Re: Translating a NGC Game
Post by: RamaR on February 28, 2014, 10:11:10 pm
Hi,

it seems no one has an idea here?

Title: Re: Translating a NGC Game
Post by: RadioTails on March 01, 2014, 11:52:47 am
I had a look at the files yesterday, and it is not using Unicode.  Unicode would consist of using two bytes for every character.

A lot of Japanese games use Shift-Jis, and this is no exception.  Whether they include the 1 byte characters, depends on the game.  Luckily, this game already has the ASCII 1 byte font, with a variable width font too.

It looks like all the text is stored in the files inside the ".rel" folder.  Use crystaltile2ft to open them and select "Shift-Jis".  You should easily be able to find the text.

What we do have to figure out is how the "pointers" work.  That way, we are not stuck with space limits.  Most likely they are in the ".rel" files.  Since you have found the translated files, that will help out a lot.  As for the graphics, not looked into it let.
Title: Re: Translating a NGC Game
Post by: RamaR on March 02, 2014, 04:07:41 am
Hi!

Thanks for your help and advice. I downloaded CrystalTile2 and opened a few files, but i couldnt find Shift-Jis
anywhere.


Title: Re: Translating a NGC Game
Post by: RadioTails on March 02, 2014, 03:25:28 pm
This is what you should be seeing.
(http://i80.photobucket.com/albums/j161/RadioSonic/Shift-Jis.png)

This is the version I use: http://www.megafileupload.com/en/file/504116/crystaltile2ft-zip.html

If you are having the same problems, what operating system are you using? It most likely could be your computer is missing the required ".dll" in the "system32" folder.  You basically need to install the "Eastern Asian Languages" files onto your computer, but each operating system requires different methods.

Post a screen-shot of what you see.
Title: Re: Translating a NGC Game
Post by: RamaR on March 03, 2014, 02:32:53 am
Hi,

ive tried your version, and it works now  :)


Title: Re: Translating a NGC Game
Post by: Dashman on March 03, 2014, 06:19:27 am
You're searching for "Caffense" (the first character is wrong). Try searching for this: オフェンス
Title: Re: Translating a NGC Game
Post by: RamaR on March 03, 2014, 06:45:06 am
Ok, got it now.
Title: Re: Translating a NGC Game
Post by: RamaR on March 10, 2014, 10:16:27 am
Hey,


ive learned a bit now. But still way to go.


Title: Re: Translating a NGC Game
Post by: RamaR on September 26, 2014, 01:45:45 am
Hello,

its a while ago, but i still work on it from time to time.

Unfortunately i still couldnt work out how to find, or to be more exactly, how to decompress certain graphics.

Is there anybody who knows much about compression methods?
I just have to find those damn overlays which contain crucial gameplay texts.
Title: Re: Translating a NGC Game
Post by: Dashman on September 26, 2014, 07:49:38 am
I haven't checked the game, but are you absolutely sure you're looking at the proper files? I spent months believing I couldn't hack anything in a game until somebody pointed out the right stuff was somewhere else, completely uncompressed (well, at least most of it).

You can try Dolphin's FIFO Player to figure out which are the files used at some point:

https://dolphin-emu.org/docs/guides/fifo-player-documentation-testers-and-developers/?nocr=true

Once you've identified the files, take a look at those with one of the tile editors you can find around here. If you're lucky, graphics won't be really compressed. If they are, you can try uploading a couple of examples here. Maybe it happens to be a known compression type (like yaz0) and someone can help you with it.
Title: Re: Translating a NGC Game
Post by: RamaR on October 03, 2014, 04:21:28 pm
Yes that are the proper files for sure, 100%.
Title: Re: Translating a NGC Game
Post by: Dashman on October 03, 2014, 08:27:53 pm
I couldn't help but notice the first two instances of the program are showing texture 12 (at 256x512 pixels and 4bpp) and the third one is showing texture 2 (at 256x256 pixels and 8bpp). I'll assume you've already checked texture 12 for the GC with the same settings.

You might want to give a shot to a tile viewer program that lets you play around with tile sizes and bpp instead of using a tool specifically tailored for another game. You've already seen there's differences in format that your current tools cannot handle, so you might want to give a try to something more general.

I personally use Crystal Tile 2 for these things, but others might recommend you something different / better.
Title: Re: Translating a NGC Game
Post by: RamaR on October 03, 2014, 08:36:43 pm
I gave up by now, just to complicated.

Title: Re: Hacking games
Post by: Metal64 on December 19, 2015, 04:57:12 pm
If I remember correctly there is a level editor of Super Mario Sunshine!