GBC ROM Translation

Discussion in 'Other Handhelds' started by Zhongtiao1, Oct 1, 2016.

  1. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    I'm trying to create an English translation of the game Shuihu Shenshou by Vast Fame. What application would be the easiest to use to start the translation from Chinese to English?

    Sent from my Q5 using Tapatalk 2
     


  2. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    The GBC is like most older consoles and has everything contained in one. To that end no tools like ndstool or things to unpack it into smaller files will exist really. I am not sure what went for GB/GBC homebrew but there could be something there.
    Anyway so usual ROM hacking tools. If you need a guide to the hardware and memory layout then http://problemkaputt.de/pandocs.htm and if you need a debugger then http://bgb.bircd.org/

    From a computing perspective Chinese text is much like Japanese so most things people use there will apply here.I don't know if you will see some of the really odd stuff we see for some older consoles for Japanese (encoding swap commands for one) but it is not impossible.
     
  3. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    Okay, thanks

    Do you know of any gb/gbc rom hacking tools that may work on windows 7? All I've found is DOS and windows 9x applications that don't work.

    Sent from my Q5 using Tapatalk 2
     
  4. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    DOS stuff should work (most will not be dos as much as command line), worst case scenario you install dosbox or virtualbox and a copy of freedos or something. If by windows 95 you mean visual basic (does it complain about missing ocx files? Telltale sign if so) then it can be annoying but it is/was still supported up into windows 7. Vista had/has some problems with backwards compatibility with both of those things but windows 7 largely sorted it.

    Beyond that there are not really any specialist tools needed beyond debugging emulators (bgb debugger should be fine as it has been kept updated) -- tile editors, hex editors, text bothering tools and the like are all pretty generic things used across multiple systems. I am not sure what there is for the GB/GBC processor right now as far as assemblers and disassemblers but as it is basically a z80 you should not be too hard pressed to find something.
     
  5. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    Okay, I found a text editor, but I cannot find a .tbl file anywhere for the ROM. How do I generate or where can I get one?

    Sent from my Q5 using Tapatalk 2
     
  6. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    Found some footage, looks like it will have text rather than images with text in them (common in puzzle games and other low text affairs, especially on older systems).

    For others reading


    Anyway .tbl files are custom for each game, though some may share aspects. You will tend not to find them premade for anything other than pokemon and things with existing text editors for the game as most would consider it if not easy then a fundamental part of making a hack and a .tbl might just save someone that can make use of it a few minutes in making it.

    The link in my signature ( http://gbatemp.net/threads/gbatemp-rom-hacking-documentation-project-new-2016-edition-out.73394/ ) covers a variety of methods of finding out text encodings, a handful are specific to the GBA or DS and some are not that suited to Japanese or Chinese but most apply to any system you are looking at.

    If you are just learning about this sort of thing I should say that jumping right into a bit GBC RPG is quite ambitious.
     
  7. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    I've tried working with GBA games before and thought i'd try this one.

    I think it may use a different encoding as it is traditional Chinese. When I use crystaltile2, Most of the characters shown are not correct no matter which code page I select.

    Sent from my Q5 using Tapatalk 2
     
  8. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    Most games prior to the DS, in which is still features heavily, will use a custom encoding. I have not tangled with traditional Chinese (or simplified for that matter) in homebrew/"bootleg" games, and don't know enough offhand to say compared to Japanese which can see some odd things for the kana and versions of those, but I would not be surprised at all to see a straight up 16 bit encoding.
    There may be a pattern or there may not in the resulting table but ones to look for are versions of existing encodings (you occasionally see Japanese games use the same order as shiftJIS or eucjp even if it is not the same encoding), most common character first has been seen many times, order it comes in in the script (be careful as it might be an earlier version of the script which was used) is another, in Japanese if there is another order from a common book or learning sheet then that is an option, I don't know if traditional Chinese organises the hanzi characters using a similar system to the Japanese moji system but that is an option we have seen and you also have font order (maybe font was defined by the table but either way it is related) where characters will appear in the table in the same order they appear in the pictorial font. Beyond that these things then tend to involve a lot of manual work, do remember that if you have the script in the game then you can edit it so if the characters start at 0000 you can put 0000 0001 0002 and so on in the script rather than hunting and decoding.
     
  9. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    I believe that the encoding is either Big5 or Big5+ I can't find out how to integrate those code pages into crystaltile2.
     
  10. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    You are going to need to make a table with that encoding in then. My little windows machine is not here so I can't look up exactly the steps to load tbl files into CT2, though they have certainly been covered in the past, but it went something like in the hex view select the table on the left hand side somewhere (in English it was tbl file or something) and then in one of the dropdown menus there was another option called use tbl. If you speak Chinese then the original program comes in one flavour or another (most likely simplified or whatever goes in Hong Kong) and in that case I have no idea what it might be.

    Basic table files are easy enough, in text form they run something like hexvalue=utf8 character. If you make one with something like tabular and crystaltile2 crashes then add an extra line at the end (open in a text editor and press enter at the end before saving it again).
     
  11. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    It seems like the encoding may be two chunks for instance the character: 麼 every time you see it, it is 4E followed by BF and preceded by a DF and FC. Could it just be a coincidence? Or is there a connection?
     
  12. VinsCool

    VinsCool Delusional

    Member
    GBAtemp Patron
    VinsCool is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    11,724
    27,819
    Jan 7, 2014
    Canada
    Another World
    This game looks like a Pokémon rippof, but it's surprisingly looking good, and has nice music too.
     
  13. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    I very much doubt you have a 32 bit encoding so one or the other is more likely a control character of some form. It might change the font, the colour, the direction, make the game animate the character.... In some games it can also change the encoding (remember the bit about Japanese punctuation and variation characters, this would be a method by which we have seen this done).

    Simple test though. What happens if you put another character you know in either of those 16 bit positions? Do remember ROM hacking does not have to be a passive/static analysis as you have the whole game and a means to run it and poke it right there, assuming you are not burning CDs every time then making a new file to test things on is cheap.
     
  14. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    It doesn't like it. It adds other parts to it and removes others. It keeps the DF and FC before, but removes the 4E and replaces it with a 47 ( I used the word 股). Also, B9 and C9 just randomly appear before the 47 once I replace the 麼.

    — Posts automatically merged - Please don't double post! —

    It's actually really fun, I love the game. It's a completely original pokemon clone. No borrowed sprites, no borrowed music (to my knowledge). There's even a famicom version, but I prefer the GBC version.
     
  15. Sliter

    Sliter GBAtemp Psycho!

    Member
    3,027
    789
    Dec 7, 2013
    Brazil
    ᕕ( ᐛ )ᕗ
    maaaan I really wanted to see a translation of this!! if you need help with graphic edition, call me XD
    I think the only fail of this game (nt playing it btw) is the monsters being soo rip-off :/(and no multplayer... well XD)

    — Posts automatically merged - Please don't double post! —

    oh wait I confused with Space-Time Star Beast :v but well, I keep my word XD
     
  16. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    Sorry, should have clarified there.
    Don't type anything, especially not in an IME, at this point as you are still figuring out the text, alter the hexadecimal manually instead.

    You say it is 4EBFDFFC for the character in question, great change one to 4EBFDFFD and run it, then go back to the original ROM and instead change it to 4EBEDFFC and see what happens. Both might crash or display nonsense but you will have learned something.

    After this look either side of the character you know as I imagine it is not a single character in the game by its lonesome. Copy one of those known working values in points in that and see what goes.
     
  17. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    Nothing I seem to do seems to crash it. I've replaced the hexadecimal values for a lot of parts and nothing I've done has crashed it.
     
  18. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    Okay, something weird today, I tried replacing some hexadecimal values right before the 4e and the 4e just changed to 5f. Same character different value. This happened after I reran the rom. Is it self-correcting?

    Sent from my Q5 using Tapatalk 2
     
  19. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,364
    9,167
    Nov 21, 2005
    Changed in memory? The ROM itself should not edit itself (I could see it happening for DS homebrew but not GBC unless someone got quite crazy) but if you dumped the script from memory then it is possible, alternatively if you used a savestate and then dumped the memory it might already have been in memory and thus your changes would not have been reflected.
     
  20. Zhongtiao1
    OP

    Zhongtiao1 GBAtemp Fan

    Member
    415
    90
    Feb 24, 2015
    United States
    I didn't use a savestate. I save, close crystaltile2, open the ROM in bgb, run it for a few minutes, then close it. I reopen crystaltile2, open the ROM, and the hexadecimal change themselves from what I originally edited.

    Sent from my Q5 using Tapatalk 2