Try to translate HM:MFoMT

Discussion in 'GBA - Game Development, ROM Hacks and Translations' started by Fantasia1993, Feb 11, 2011.

Feb 11, 2011
  1. Fantasia1993
    OP

    Newcomer Fantasia1993 Newbie

    Joined:
    Feb 11, 2011
    Messages:
    6
    Country:
    Saudi Arabia
    Hi

    I am trying to translate "Harvest Moon - More Friends of Mineral Town" at gba to my languge

    and finally I understand how to use Hex Workshop with Searchrx to make table and find the text

    now I think I need to change the letters graphics to my language so I can start the Hard Work of translation

    I try using (Tile Layer Pro) and I got this result:

    some letters and numberss where easy to change and they are for calender I try it before and it looks fine

    [​IMG]

    but other can't be change and they look like this:

    [​IMG]
    [​IMG]
    [​IMG]

    what program should use to change the letters shape?

    thank you
     
  2. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,716
    Country:
    United Kingdom
    Assuming that is the in game font (these games have a nasty habit of having multiple fonts) you are already using an editor. If you liked you could dump it to a more common format and then tile layer pro should have an export option (I do not use the program myself so I am afraid specifics are something I can not help you with). Once you have it in same a bitmap image you can edit it- do remember to save it in bitmap or something lossless once you are done editing though.

    I sense your main problem unless you want to make some interesting changes is that the extra symbols the Arabic glyphs have mean the total number of characters you need will likely be more than the total amount of characters in the Roman alphabet that the games uses now- your best bet then if you do not want to do a script analysis and lose the unused characters is to take the sections that are used for the days of the week and replace them with something else.

    Unless of course you mean you tried to change them and it did not like it. In that case I would look to setting the tiles up so they are fully in view- if you have them like that with the characters and spaces it can mean you edit the "space" which causes issues in the game. For instance the "noise" above the green zero in the second picture is probably not noise at all and if you edit that you might well have ended up changing something that game needs to function.


    I also assume you reset the rom and loaded again- if you load a savestate chances are the old font is already loaded in the ram.
     
  3. PeregrinFig

    Member PeregrinFig A miserable little pile of secrets

    Joined:
    Jun 18, 2010
    Messages:
    667
    Location:
    Michigan
    Country:
    United States
    Did you try using a program called Tile Molester? Back when I did Pokemon ROM hacking, it was great for editing uncompressed images. If you know the offsets it might do the trick for your problem.
     
  4. Normmatt

    Member Normmatt Former AKAIO Programmer

    Joined:
    Dec 14, 2004
    Messages:
    2,135
    Country:
    New Zealand
    Try pressing the +/- keys on your numpad until the gfx align properly. Possibly in Tile Layer Pro you need to hold Ctrl aswell as press those keys, I can't remember. Either way you should be using Tile Molester its the successor to Tile Layer Pro and is better is most ways.
     
  5. Fantasia1993
    OP

    Newcomer Fantasia1993 Newbie

    Joined:
    Feb 11, 2011
    Messages:
    6
    Country:
    Saudi Arabia
    I just try it it confused me trying to figure out when it'll be align properly
     
  6. Fantasia1993
    OP

    Newcomer Fantasia1993 Newbie

    Joined:
    Feb 11, 2011
    Messages:
    6
    Country:
    Saudi Arabia
    Hi
    I work for a while with Tile Layer Pro and for the scattered numbers and letters I found that I can use Tile Arranger window at the program to arrange it and change it

    and for the groups of numbers and letters I just make a copy of the rom and color parts of the nubmers with black to know where is it in the game
    so I found there are for Calender and for the clock
    but can't find the one using for talking

    any Idea what to do now?


    ::::
    I also use VBA to see the tile of the letters I use to write my name and take the address of the tile
    when I use (Go to) Command at th program it take me to the green area at the End
    ::::
     
  7. Fantasia1993
    OP

    Newcomer Fantasia1993 Newbie

    Joined:
    Feb 11, 2011
    Messages:
    6
    Country:
    Saudi Arabia
    I found the font of the English letters

    all I have to do is to view th tile at 1BPP Format

    Now for the hard work

    btw

    with the letters I found some symbols I don't think it's used in the game
    some looks japanese
    if I want to use it how can I find it's Hexadecimal value?
    since HexWorkshop and Searchrx don't support japanese letters.
     
  8. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,716
    Country:
    United Kingdom
    Ah I should have mentioned 1bpp- technically it is a type of compression (certainly the game will "decompress" it between the rom and where it finds itself in the ram) but that is neither here nor there really.

    Hex workshop should support a 16 bit/2 byte search and unicode for that matter (I agree custom searches of 16 bit characters is not a strong point of hex workshop). You might have to account for endianess though.

    Anyhow back on topic the game might have some Japanese characters left over but if the game proper uses 8 bit that is more than likely just something left in by the localisation team- I would be surprised if the game even supported a 16 bit table as it were these days. It is quite for a hacker to redo a text display routine to use 8 bits where the original used 16 but for someone with the source code it is considerably easier.

    There are some things you could do but I would avoid going there unless you have to.

    As for "not using all the glyphs in the Arabic alphabet", better you than me for that one.
     
  9. Normmatt

    Member Normmatt Former AKAIO Programmer

    Joined:
    Dec 14, 2004
    Messages:
    2,135
    Country:
    New Zealand
    1bpp isn't a type of compression, well i guess it does allow you to store a font that takes up very little space but its still not a compression format like lz77, huffman, etc.

    In some games its fairly easy to make it use 8bit instead of 16bit, its only really hard if the game has control codes instead of events being hard coded into the game.
     
  10. Fantasia1993
    OP

    Newcomer Fantasia1993 Newbie

    Joined:
    Feb 11, 2011
    Messages:
    6
    Country:
    Saudi Arabia
    I wish there is a dictionary for Hacking stuff

    for Arabic I use all Capital and small letters in English. some letters can be write to be alone or connected to other letters so I only have to write it once
    the problem is I have to make my translation has the same number of letters at the english words

    and I wonder if there is a way to make the alignment to be to the right instead of left

    OK
    there are some symbols I don't think I need it in here

    [​IMG]

    I look for it and find it's Hexadecimal value at HexWorkshop
    back to the tile I find some tile looks like it but when I change it nothing happen

    I look over the block of letters, keep arranging but can't find it
    is it possible for it to be some where else?
    Can the rom Have more than one font inside it?
    can I find the tile if I know the Hexadecimal value of it ?

    here is the symbol I found

    [​IMG]
     
  11. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,716
    Country:
    United Kingdom
    @Normmatt I will spare us the compression vs packing debate. I agree it is nothing like conventional LZ,, RLE or huffman though.

    As much as I dislike having to suggest this it might be an idea to take the Japanese rom, the US/EU script and translate it before inserting that into the Japanese rom. That way you gain 16 bit characters to use and allow a few other nice things.

    First up right hand side alignment.... if you want characters aligned in tiles and next to each other for a variable width font it could be tough and could be easy but either way you will be hacking it at ASM level.
    Unless of course you mean right to left reading which could still involve ASM but there is the crude halfway house of treating it like a Japanese script- Japanese has little in the way of text ordering compared to the paragraphs that latin based and Arabic type languages have so the developers, much to the dismay of localisation teams be they hackers or official ones, will slice up the text and put spaces/new lines as and when they feel like it. All you get to do is put spaces at the "end" of the sentence to make it appear at the right hand side of the screen.

    "I have to make my translation has the same number of letters at the english words"

    You do not, the nice thing about the GBA is that all the rom is all in one and you have a lot of space to work with. In your case aside from Harvest Moon - More Friends of Mineral Town/Bokujou Monogatari - Mineral Town no Nakamatachi for Girl the GBA harvest moon games are 64MBit giving you a at least a whole 64Mbit or indeed 192Mbits to play with (I would try to keep the rom under 128Mbit as it helps for those with 3 in 1 cards- if you do have 8 megabytes of text you have gone wrong somewhere). All you need to do is add a bunch of 00's to the end of the rom and you get to use that space (when you also do what I detail in the next couple of paragraphs). Edit- sorry I must pay more attention. I see you are working on more friends of mineral town. You can still use the extra space but you will need to put a 09 instead of 08 (see below) as you will be over the 16 megabytes line and you can also use the space that you would "trim" from a normal rom.

    Solution- somewhere in the rom there will probably be a whole bunch of numbers with 08 (it might be 0a or 0c) repeated every 8 or so bytes and this pattern will repeat many times. These are the pointers and while some might be to something else entirely some at least should be to each section of text and they are usually what controls when a new line starts or indeed a section ends.

    It will probably look like "5634 1208" in the hex which decodes as 0812 3456 or indeed location 0012 3456 in the rom (the 08 part is one of the locations the GBA can find the cartridge at- the whole GBA rom is effectively in memory on the GBA).
    You now get to change every pointer to match where the new text is in the rom (the reason I mentioned the space bit earlier is you have a whole 8 megabytes of free space at least to put text into- this is what most GBA hackers do as it saves a lot of hassle) trying to overwrite text and the like.

    As for not being able to find it I hope it is not the case here but the rom might use a method of character creation by wedging to other tiles together that are not normally used.

    At a quick glance the "gender symbols" (male is ? and female is ?)- they probably get used in character biographies if they are anywhere) appear to be 3 rows down and part of tiles 4,5,6 and 7 (I am not counting the incomplete tile)

    The stars I can not see, I would have said row 5 and the first three but they look more like diamonds which are at the right hand side of your decoded section.

    "Possible for the game to have more than one font"

    Absolutely, indeed you already discovered that this rom does (the first couple of pictures you showed us- that would be an example of a different font). Likewise the game can have more than one text encoding method (one part might use 56 hex for the character A where another part (typically a menu, a cutscene or something that is not what you were originally dealing with) uses 7A

    "can I find the tile if I know the Hexadecimal value of it "

    I am not sure I follow- if you mean you know say the character % decodes as 5E in the part of the game you have the table for you can try counting up from something else you know and that often works- characters in a font will often follow the same order as characters in an encoding at least in parts of it).

    If you mean you snatched the font out of the ram then it gets tricky- if it was a normal 4 bit or 8 bit tile then you could just search the rom and you might get lucky (some games change things between the rom and the game)- I mainly use that trick to try and find a palette for a game/section though. This is where the 1bpp stuff comes in though- the GBA does not understand 1bpp like it does 4bpp so the game will have to unpack it between the rom and it being used to make text. http://www.coranac.com/tonc/text/text.htm has a section on bit packing.
     
  12. Fantasia1993
    OP

    Newcomer Fantasia1993 Newbie

    Joined:
    Feb 11, 2011
    Messages:
    6
    Country:
    Saudi Arabia
    hi

    it's been a while

    when I was about to give up I start write letters at hexworkshop in arabic
    for my surprise when I play the game there where japanese letters
    and they are the same one at the font I found

    so by know the hexadecimal of it now I have more letters than I need for my translation [​IMG]

    but since writing translation in hexadecimal is confusing somehow
    know I go back to my vb.net to make simple program
    just to help me write the right hexadecimal of each letter

    hope I can do it right
     

Share This Page