ROM Hack English Magi Nation GBA Translation - Rom Patch!

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
(June 14, 2020)
~~New patch, 1.01 Tony swap. Instances of "Dan" in the script have been replaced with "Tony", and Dan's character portrait while talking has been replaced with Tony's. Script change done by me, in menus and battle messages it will appear as "Tny" due to being still limited to 3 characters. Portrait change done by EvilJagaGenius and I make no claims as to its completeness. Overworld sprite is still Dan for now, sorry! IPS patch is based off of the original unmodded japanese rom, so you should be able to apply it over any iteration of the original or translation.

(Jan 17, 2020)
~~New patch, 1.01. Four minor text fixes. It should be able to be applied directly over the previous patched version, or the original unpatched file. Can be found at the bottom of this post.

(Nov 1, 2019)
~~Normmatt has shown up with a pointer-based translation of the script, which is now combined with my manual translation of menus and non-script things. It should be, of course, perfectly accurate to the original script, as it was included in the game file (meaning with some typos, error characters, and potentially untranslated messages). I'll be including that file up here as well as "Magi Nation (English Translation)", with overall translation completion rate I'd estimate to be at about 97% finished to perfection, and I'll be halting all progress on my manual, abridged translation efforts to instead polish up that joint production.

Major changes that had to be made to the english script were: "Yes Hai" for all yes/no options being reduced to just "Yes", about 16 instances of "Tony" being changed over to " Dan", and dream creature names no longer being in all caps. All instances of "..." were coded as one single character in japanese with no analogue in english, so resulted in a glitchy oversized semicolon looking error character, which I replaced with just a hypen "-". Of the limited punctuation options included in the english font, that best matches the sentiment of a "...", though it does have a bit more sense of urgency/interruption to it. There were also two instances of when you had to pick a response that the english text went beyond its line and into the next one, causing issues, so those were fixed.

~~Update on manual translation (note this patch file is no longer current): All game mechanic relevant things outside of actual script (and a few odd messages here or there) have been translated! I have finished translating the entire main storyline script up through entering the Shadow Geyser in Cald (3rd zone), and the useful NPCs in those first 3 towns. The Lunar IPS file "Magi Nation (English Translation v0.3)" is my old, manual translating of the script before Normatt stepped in. I'll be moving the records of my older, manual, abridged translation efforts to a lower post so that it can be kept for posterity's sake, but not to be confused with the proper, pointer-based translation file that most accurately represents the original game.

Updates of the translation progress will be at the top here as anything new comes out!
_________________________________________

Hello world!

Magi Nation is a game that tried to build on the pokemon/digimon/yugioh/fight using monsters hype of the 2000's. They had a collectible card game, gameboy color game, and even a tv show (crrriiinnnngggeee) all released here in the west. I don't know much about the CCG and could barely make it through an episode of the tv show, but I still have my original gbc cartridge. The video game used the same world of the Moonlands, with 5 main explorable zones and 6 creature "types". Each zone is themed after an element, containing Dream Creatures of that element, and each had a shadow geyser that was causing chaos (plant, ground, fire, water, air, and then shadow for the geyser creatures' element). As a stranger who got sucked into this new world, and being immediately declared as the "Great Magus Kyros" (well, by the same guy that last year said it was the innkeeper who was the great magus kyros), your objective is naturally to find each of the shadow geysers and shut them down, thus saving the world! There's maze-like dungeons both for connecting the zones and within them, and the shadow geysers are set up as puzzle-dungeons that have to be solved to get to their core. Within all of those dungeons are the dream creatures, and as you make your way through the storyline and fight them, you can collect their essence and use that to craft rings that lets you summon your own version of that creature, which make up your "party" and you can fight with them so they level up and become stronger. Although the depth of gameplay is generally more simple and linear than even the original gbc pokemon games, there are some unique battle mechanics and a strong storyline with fun humor that really help it stand out as the cult classic that I've found to be worth playing over and over.

But wait, Aplier, if you say this game is so great, and that it was released for the west, then why do you need to make a thread about translating it into English?
Well, the gameboy COLOR game was released in the west in english, but it was rushed out towards the end, and was re-released as a gameboy ADVANCE game only in Japan. The GBA version is far more polished, with better graphics of the upgraded system, battles that make it look like one creature is fighting another instead of an emulated card game, better menu systems, a second save slot, and more. Oh yeah, and not missing out on HALF A ZONE'S worth of dream creatures, that are uncraftable due to them or their components being left out of the game, including 4 of the strongest legendaries (each element has two "Hyrens" that are dragonish-humanoid legendary creatures, found in a secret area for each zone, and are crafted with a starting level of 50). There are some things that were left out of the GBA version, Senpuu has a guide for the GBA game over on gamefaqs that starts by detailing almost all of the differences between the versions, but the GBA version is overall the better gameplay experience by far. Except for, you know... being in Japanese.

_________________________________________

Which is where I come in! And also where a wild Normmatt appears (I think I found a shiny one, no less) and provides a massive leap forward to this project I was picking back up by integrating his old work of a pointer-based translation into the game. It made obsolete so much of the work on storyline and dream creature/item names I'd done up to that point, but it brought the project from being at like a 30% completed mediocre abridged translation to being a like 95%
completed exactly true to the original translation. So however saddened I may have been to have much of my own work gone to waste, I'm far happier knowing that this game should be completely playable in its current state, with just some polishing and cleaning up to do.
 

Attachments

  • Magi Nation (English Translation 1.01).zip
    33.4 KB · Views: 771
  • Magi Nation (English Translation 1.01 Tony Swap).zip
    38.2 KB · Views: 613
Last edited by Aplier,

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Edit: Teaser image dump from when I was first starting out the project. Much of it is now obsolete with improved translations via pointers thanks to Normmatt, but it's a great record of the progress I made through on my own, and of how proud I was as a newbie.

Reserved. Going to use this space as a teaser image dump for now, then I'll get back to work on the translating (or maybe just some playing, have to remind myself that this is for fun once in a while =P.)

And can I mention how nice it is to be able to type things with unlimited space again, perhaps I was too wordy up above just enjoying this short freedom before I dive back into the world of restrictive hex byte editing.

In the very beginning
~My very first rom hack/translation/hex edit ever!.........................~They renamed him to Dan and made him look all anime
72737778_609826606213827_8338347249025155072_n.png
......................................
73027176_411391862866496_4359851478609821696_n.png


~Poor guy, named Leaf but can only attack with a Lef....................~Darkbreed Hyren was added to the game!
74692548_2467963389924024_2107245263339913216_n.png
.............................................
73515578_389170015305900_106263130195099648_n.png


~The numbers, Aplier, what do they mean?
73163054_540773486680834_8910367773943660544_n.png

The first battle completely in English
~Oh look, a wild battle appeared!
72740489_422751805047577_7188133759953141760_n.png
73164058_527478804716925_376383446030745600_n.png
72985138_1087556901635211_3529184557087588352_n.png

73120764_754042675056511_7166562059075715072_n.png
72615580_342748646524230_8321897064719974400_n.png
73096551_2398130970469950_2760120304247242752_n.png

Shopkeeper menus and such.
~Fine, I didn't want to sell my Eldritch Awl anyways......................~Excuse me miss, I heard you make rings
72471187_2865126843521864_5911312353051279360_n.png
............................................
74428420_831551310575122_6811141240315183104_n.png

Manually translating my way through the storyline
~Oh he is the elder, now, is he?......................................................~Korg Leader, Korg Smash
74229558_2485096561815284_7768553192203223040_n.png
....................................
74231791_2721643604564815_350563395432349696_n.png


~So both money animite AND infused animite come from DCs? It's not wabbit season, it's Dream Creature season.
74226651_1322931931164535_9056303212109234176_n.png
...
74667334_2331778060470703_3690568399911387136_n.png
...
74580965_381424366073429_4621704751199813632_n.png


~The last message we have to read before ...........................~I have made it from starting a new game to here,
....we can leave for the Underneath............................................without any Japanese getting in the way.
73495330_770719620053291_8502865597636280320_n.png
.................................
72957898_3017767524965103_2022981174678257664_n.png

~This is what my normal workspace environment looks like for this project (laptop screen on left, mid size TV monitor on right). The gbc file is my old newgame+ loaded up with hyrens and other high level creatures, just to easily keep up with the translated one and make sure everything is hunky-dory, because the script only has smallish chunks of text that are in order, but those chunks all seem pretty randomly placed within the file.
74692559_2368203836731334_7579724370919030784_n.png
 
Last edited by Aplier,

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
I'm starting to be able to read some of the two digit hex bytes.
As Japanese kana on sight.
Is this good?
Is this bad?
What does it all mean.

I dream in hexadecimal now.
My cat reminds me when it's food time.
For the both of us.
Alt tab, F1. Read, alt F4.
Alt tab, ctrl F. Type, ctrl S.

Our internal thoughts molded.
By the languages that we know.
Which language is mine?
Do I get to keep it or will it bluster away.
Does the wind ever even blow in here?

ii ne?
ganbarimashou!
41 41 20 57 3F 0A 6E 6D 7D 67 5E 4B 8F 42 21
Is it okay?
Lets do our best!

"Poetry?Untitleable"
 
Last edited by Aplier,
  • Like
Reactions: BelmontSlayer

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Here lies all of my progress through working within the code and getting ever more complete understanding of how the coding works and progress through the game. Though now mostly obsolete, I think it still deserved a place to stay that was away from the first post.

Initial Intro, "Don't let that get your hopes down!"
As of writing this (Oct 19, 2019), the thread title is still a few days premature. But don't let that get your hopes down, I will have a patch that translates all of the name variables and mechanics related info to put up hopefully within a week. For those of you who wandered here via google, after searching for something like "why is there no magi nation translation", I absolutely do not intend to let this thread become another "well I started the project, but then difficulty, and then... [silence]". Right now, I have a playable version with still japanese storyline script, but almost all non-characters-talking-to-you words translated (creature/item/ability names, shop/ringsmith/start menu things, most common battle messages, historian's in-game item descriptions [except the Underneath historian who is high on shrooms and spouts random messages], and some more odds and ends).

At the very minimum if I have to drop this project or something worse happens, rest assured that I'll make certain my most recent iteration gets released to the public domain. However I'd like to finish off all non-script pieces of info and at least a few key script items where a player not closely following a guide for the script might mess up (such as knowing that you're paying the ferry you encounter after the fire zone Cald to always stick around after giving you a ride). I know that many people, myself included, have been waiting well over a decade (nearly as long as boards like this one have been around) to see this game finally get a translation. My work may not necessarily be "good", but I am absolutely going to do my best to make sure that it isn't outright "bad". I think that after all of that anticipation being built up, the only thing worse than there still being no translation would be if there was an unplayabley bad one. And I would HATE to be the person responsible for creating an awful experience of a game I've come to love so much. So while I feel kind of bad making this announcement prematurely, just know that you aren't getting your hopes up one last time in vain.

I will be finishing everything outside of the script hopefully this weekend, and then will take some of the tricks I've learned along the way and go back to fix some earlier messy translations (like names of things I had to shorten down to 2 or 3 letters). Then I will enjoy a straightforward playthrough of the game and try to add in some translated messages at key points, hopefully without letting myself get caught up in wanting to translate the whole script at once. Once that is done, hopefully in one week's time, I'll have a patch file to share with the world!
_________________________________________

My background for making this translation, "Which is none!"
With that intro out of the way, now on to the background for this translation!
I am an absolute newbie to rom hacking in general, downloading my first hex editor only 3 days ago and learning how to do things by poking around from there. I have to give credit to all the people who have attempted this project before me, the very few posts with tidbits of information between here and romhacking were actually a very good help towards getting started. And with a few hours and a couple hexadecimal/rom hacking tutorials I was totally caught up on any progress publicly made on this game. I do have a background of basic Japanese, so being very comfortable reading the hiragana/katakana, and knowing sentence grammar and basic words is a huge help. This game lacks any kanji (those really complicated characters that represent one whole word), and there is an english script that exists unformatted within the file, which are both massive benefits to easing the process.

So the act of translation is largely a matter of finding a japanese word or message within the large block of script/names/system messages, and finding the equivalent line if it is in the english script, or translating on the spot. Then replacing the japanese one with a word or message of english characters that fit within the allocated space for the japanese characters. This means that much of the game's text is going to end up abridged, which is unfortunate, but is the best I can do. Some like-minded people over at romhacking were working on figuring out how the pointer system works.... 8 years ago. And while I can roughly follow what they're talking about, and can understand and manipulate the relative pointer tables that are adjacent to small sections (like a block of names) to pick up a little more space for some words, doing any work with script pointers or even finding them is beyond the scope of my abilities. And again, even though the english script exists, it is entirely unformatted (no language marker, no line breaks, etc.) and has different lengths of messages compared to the japanese one, so there is no simple switch that could be flipped to set everything to english in one go, so if it were figured out how those work it would still have to be set up done manually. So instead I am stuck with the task of reducing everything in the script down to fit within their equivalent japanese space, but will do my best to keep any names and messages as intuitive as possible (though sometimes having only 2 or 3 characters to work with makes that very difficult), and try to keep the script as true to the original as possible.

Ramblings of my progress from beginning at square zero, up through being able to start manually translating the storyline script.
_________________________________________

Since starting a few days ago, I have progressed through several iterations.
-The very first hacked .gba rom file I just named "Magi Nation (Hex Edit Furok)", and it was my first time ever opening a hex editor. I poked around and tried to make sense of what I was seeing, until I figured out how to make an encoding table. Yup, those are things that exist apparently. So figuring out the encoding table,(the game uses the fairly standard 40-7F ish for english characters, but also 41-8F for japanese hiragana, and A0-EF for japanese kataka, and a language marker at the start of each item of 10 or 11 to tell the game which language to convert the following string of hex characters to. With that I could set up my main hex editor to understand the english (using wxMEdit here), and a secondary hex editor that accepts custom encoding tables for the japanese version (WindHex here but i'm not too happy with it since I'm stuck with romaji due it not wanting to display japanese kana for some reason). Now that I was in business, I could find the word Furok in japanese in the one editor, figure out the hexadecimal digits for each of the characters, then search for that string of hex digits in the english editor, and edit the text at that location to instead be "FUROK" plus changing the language switch from 11 (japanese) to 10 (english). So everywhere that the japanese version (FU -- RO tsu KU) appeared in the game it would now read as the english letters of "FUROK". I also took the opportunity to test changing a line of script at an NPC I had a save file next to, which will probably stay that way as an easter egg until my final release. After testing these in game and finding it actually works I was overjoyed, and at that point I knew that I could absolutely do this. It would be messy, difficult, and ugly in many places, but it was something I could get done.
-The next iteration was "Magi Nation (HE) DC names". In case you're wondering, yes that DC stands for Dream Creatures, so the names of monsters in this game. As you might expect, my goal for that iteration was to translate all of the dream creature names into english, progressing past just Furok. Through some effort I was able to get through this, and grew my familiarity with both the english and japanese hex representations of their characters. I was also able to pick up more insights about the file, such as 00 at the end of every string representing the end of that string, 0A being used for line breaks, and that there seem to be pointer tables associated with each block of names. However, due to many japanese names using fewer characters due to generally being one syllable per character, most of the names had to be shortened to fit the space allocated to japanese characters. All in all this took a bit more time, my last edit to the "DC names" file was about 8 hours after the last edit to "Furok", and I think I may have slept for half of that? Can't really remember.
-The next task, and thus next file iteration, was "Magi Nation (HE) DC Items Names". In this one I set out to translate all of the usable item and relic names. That process was much the same as the dream creatures, find the location of the table for item names in japanese on hex editor 2, find the item names in english on hex editor 1, squish the english word to fit within the space of the japanese and overwrite the text with that abridged word. Then select that whole block and use find/replace to change all of the translation digits from 11 to 10 at once (yay learning more efficient things). This wasn't so bad, just took going between my new english words and translating the original japanese words every so often to compare that they were starting actually at the same location (pointers at some unknown location in the rest of the code point to the "11" language variable at the start of each string) and that my translation was for the correct name. After finishing all of those names I moved on to attack names, spell names, and words in the start menu (like Item, List, creature stats, etc.). At some point I felt like I had named enough names that I now needed to name it a new file name.
_________________________________________
-And thus the "Magi Nation (HE) Playable1" iteration was started. With names for all of the things that the game would want to grab a name to auto-fill into some section or message, the context for that name was next to be translated, since just a name surrounded by japanese or error characters is only marginally useful. That means things like battle messages (Furok hit Weebo with Scratch), taking items from treasure chests (Picked up Baloo Leaf), shop and ringsmith menus, and so on. The game script had a section at the top that looked like it contained a number of responses to people's questions and some menu things (such as yes, no, accept, pay, done, etc.), so I started there. Once I got through that, I was more familiar with how many characters I could use before needing to start a new line with the 0A hex byte, and that the game continued reading a string of text until it came to a 00 hex byte (even if that ran into whatever the next string was, with the pointer for that 2nd string still starting at the same place it normally does). And gained the piece of information that the unknown pointers elsewhere in the code pointing to the language variable of 10/11 at the start of each string, doesn't necessarily mean the string needs to with a language variable. The language variable only flips a switch between japanese or english, but if there is no variable then the game just displays using whatever the previous setting was. Notably this means that if I want to use it, and make sure that whatever is displayed before that name or message used the english setting for the language variable, I have access to one more character worth of space for names of things. Which is very important for short item, creature, or attack names, like the "Fang" attack that was down to two characters and thus "Fg", but would at least be somewhat recognizable as "Fng". But ignoring that newfound power for now, since it would require the great responsibility of make sure every use of those names without a language variable was preceded by a message starting out in english, just making a note to put that tool in my back pocket and come back to it when "polishing" things for the first public release. I also want to be very, very conservative about using this approach, using it only for extreme cases where I only have 2-4 letters and word is basically unrecognizable with what it has normally, like with "Fg", because it throws off the natural formatting of nearly everything that is "(11) string of words (00)"
Next up within this iteration was battle messages, where I started with the most basic. In the text string for displaying a message, the game uses "08 01" pair of hex bytes to indicate that it is calling for a piece of info from somewhere else in the code. No matter where the 0801 is in the message, it always calls for the same word (and uses its language variable switch for the rest of that message), and if there's multiple 0801s like in the "(0801) hit (0801) with (0801)" example above, no matter where I move the 0801s to it will always fill them in using the same order (so "hit(0801)with (0801) (0801)" for that string would become "hitFurokwith Weebo Scratch"). There's probably pointers or some other code elsewhere that tells it what piece of info it's grabbing, and what order to display each of them in, but diving into that would be far more complicated than the scope of a rom hacking newbie's translation efforts. So after quite a while of going through generated messages, which had to be translated using context, a japanese-english dictionary, and personal experience (no freebies from the english script here). I decided that I had done enough to cover most basic battle and mechanics-related generated messages that the player would encounter. And thus the "Playable1" iteration was complete.

_________________________________________

-Which brings us to the current work-in-progress iteration, "Magi Nation (HE) Playable 2". The goals for it are as described above:
Finish translating all non-storyline-script items.
Then a playthrough to know where to replace key sections of the script with basic directions telling the player what to do next in case they aren't playing with a guide to hold their hand through the japanese. **This part will be ugly and rough, probably going to be borderlining on that "bad" translation aspect I want to avoid, seeing as it will most likely feel like just direct messages to the player due to the lack of other context that the script uses to build the narrative you're experiencing. But I feel as though having some sort of English directions to guide you through the game is more important than simply leaving the entire script as nice-looking japanese that is otherwise nonsensical to the common english speaker.**
Then another "final" pass over everything that has been translated, using my newfound tools and insights to "polish" areas that I find lacking (such as expanding the 2-3 letter names, maybe phrase some messages better).


There will still be many things that are abridged at that point, and probably some error characters or unfinished messages, and of course the whole main script untranslated. I'd like for it to be completely playable without a guide, and for most of the names that had to be abridged due to space limitations should at least still be recognizable for what they stand for. Though some names of things may have had to be shortened so much that they wouldn't be recognizable without knowing what they are supposed to be already, that is just a limitation I can not work around at this time, but as a player you can work around it by having an item/creature/relic/attack name list easily searchable on google for when you encounter something you can't figure out.
This won't ever be a perfect translation until a full understanding of the game's relative pointer and script pointer systems are gained, and then someone (possibly me, possibly not) takes the time to manually change every single one, while introducing whole new chunks of english text that have enough space for each name, message, and formatting. But if for the first time in almost the two decades since this game's release, a functional, playable, understandable english translation is brought into existence, and the fans both old and new of the game aren't up in arms over how horrible it is, I'll take that as a win.
 
Last edited by Aplier,
  • Like
Reactions: BelmontSlayer

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,187
Country
New Zealand
I did some work on this game a few years ago and took a look at it again because of this thread.

I managed to get the two main pointer tables repointed to the english versions, this does require a breaking change (breaks menu etc as those strings are separate), but when applied to your patch it should work fine.

Those two pointer tables are for the main story dialogue and monster names I think... probably other pointer tables too but I didn't bother looking.

The pointers are relative to the start of the text so aren't the easiest to find without a disassembler/debugger.
 

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
I did some work on this game a few years ago and took a look at it again because of this thread.

I managed to get the two main pointer tables repointed to the english versions, this does require a breaking change (breaks menu etc as those strings are separate), but when applied to your patch it should work fine.

Those two pointer tables are for the main story dialogue and monster names I think... probably other pointer tables too but I didn't bother looking.

The pointers are relative to the start of the text so aren't the easiest to find without a disassembler/debugger.

=O
If they're repointing just to the english string strings I'm not sure that'll be enough, because as mentioned each of the strings in the japanese script starts with a language variable of 11, and none of the english strings in the dump had that. There were also areas that extra lines were added in chunks that are separate from the the rest of the main script block. But if you still have any of your old work though, feel free to apply it to the patch I'm about to upload and see what happens, or PM it to me/continue the discussion here and I can try to put the two together.

I was planning to just power through the storyline making manual edits to the japanese script as I have been for now, and then come december when things slow down for me take the time to learn the pointer tables. Storyline pointer tables and actual game mechanics aside, I've come to grow very, very familiar with the workings of the two different scripts.

Edit: Just doing the polishing up now (i.e. changing the main character's name from Aplier back to Dan in the menu and any generated messages).
Testing patch application now...
 
Last edited by Aplier,

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,187
Country
New Zealand
I modified the code to use the english font by default (even for 0x11 strings), which of course breaks all japanese strings.

Will let you know how it goes applied to your patch.
 
  • Like
Reactions: Gil_Unx

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
I have encountered a problem: how/where can I upload a .ips file?

76765576_2416974855211700_3199089390945042432_n.png


--------------------- MERGED ---------------------------

Okay, putting it in a zipped folder seemed to work, let me know if you can use this!
 

Attachments

  • Magi Nation (English Translation v0.3).zip
    22.5 KB · Views: 196
Last edited by Aplier,

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,187
Country
New Zealand
Seems like it works ok (but only when applied after I patch the pointers, I assume because you've messed with the pointers somewhat?)

patched-0.png
patched-1.png
patched-2.png
patched-3.png


I don't have a save far enough into the game to check if everything is working...
 

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Seems like it works ok (but only when applied after I patch the pointers, I assume because you've messed with the pointers somewhat?)

View attachment 184270 View attachment 184271 View attachment 184272 View attachment 184273

I don't have a save far enough into the game to check if everything is working...

Sweet! I think I only adjusted two or three pointers, most notably the one for Dan's name at position 7,795,280/8,388,608 (line 0076f250), to give his name 3 character spaces to use instead of just 2. Some strings I also started them where their language variable was to buy an extra character there too, since it just defaults to the previous language variable encountered anyways, but that was all the japanese strings which if they aren't being used should no longer change anything.

I'm impressed and saddened to see so much of my work put into translating the script by hand now become moot. But I'm just glad if people get to experience the game in all of its glory!

If you have a file to share for that, I'd love to check it against the multitude of save files I have to make sure it all looks good. I dont think I got quite all of the battle or other system messages, but having this would basically jump the translation effort up to a version 0.95 or so, and I'd be happy to go back and polish anything left out manually. Or with your better understanding of the pointers we could try to work together to get everything translated with as much space as it properly deserves.
 
Last edited by Aplier,

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,187
Country
New Zealand
Heres an IPS with your stuff applied on top of the story stuff.

If you feel like posting any save files, I can probably help fix any remaining issues.
I don't feel like playing the game right now just to find them.
 

Attachments

  • Magi Nation (English Translation v0.3)_story.zip
    29.3 KB · Views: 157

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Seems like there's a little fixing up to do. Any "..." had the single hex byte 91 that was read under japanese language variable of 11, but shows as an error character when translated to english, and it seems a couple more punctuation are now showing up as error characters. And "Yes Hai" is now being used for yes/no prompts.

But yeah, being able to add your storyline script to my menus and names means this game is far is more complete!

I'll try to pull together a spread of save files up through Cald for you to check out as well, give me like 10-15 minutes to go through and check what was where.

Oh, and menu, monster, and item names and such are all using the original pointers and my abridged versions for them. Were you planning to change those via pointers back to the originals, or ?
 
Last edited by Aplier,

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
For any old saves, because all of the english script dump strings no longer had a language variable, i had to enter a battle so that the message there would set the variable to 10, otherwise it just displayed all townsfolk's message strings with japanese characters. New saves shouldn't have this problem unless a japanese language variable is encountered in an unfinished battle message or something, but the same fix should apply.

Save 1 is at Naroom's shadow geyser, just before picking up the core stone.
Save 2 is just before entering Underneath's town for the first time.
Save 3 is after you finish fighting off the shadow magis attacking Cald when you first enter it.
Save 4 is right before taking the ferry off to Orothe's island to get the boots.
Save 5 is just before entering Cald's shadow geyser.


Also just a massive thanks for providing this! Assuming all of the script pointers are actually now pointing at the massive english script block, all that needs to be done now is go to through that and clean up things like the error characters, adding line/message breaks for formatting, the Dans that were left as Tonys, and straight up typos that were made in it, such as:
74344997_2791432624224532_7121788463828959232_n.png


Which i'd be happy to go through those micro things myself once you're done cleaning up any macro-level translation efforts that need to be done with it via pointers.
 

Attachments

  • Magi Nation (English Translation v0.3)_story saves.zip
    383 KB · Views: 174
Last edited by Aplier,
  • Like
Reactions: Xuio

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,187
Country
New Zealand
Did some more work on this, probably not going to do any more, this should be most if not all the pointers with english text in the rom.
 

Attachments

  • Magi Nation (English Translation v0.3 with English Pointers).zip
    30.3 KB · Views: 180
  • Like
Reactions: zfreeman

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Did some more work on this, probably not going to do any more, this should be most if not all the pointers with english text in the rom.

Great! Thank you once again. With everything pointed to english it should just be a matter of cleaning up typos and such (Leae Cut spell, lol). It looks like the battle menu is now showing up in japanese characters, but everything is named as it should be, so I'll bring it up in the hex editor and see if I can't tease a couple of 10's into that menu, which should fix it there.

Edit: Yep, found the right "Summon" which is at the start of the battle menu, had a couple extra 00 characters of space to toss a 10 in there no problem, and now battle menus showing up in English as they should be.
 
Last edited by Aplier,

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Interesting, may have been something to do with loading up an older save, since with everything pointed to the english script dump there's probably very few actual 10's for the game to encounter to be reminded what language to use. Either way, there was space for it, and adding in a few more 10's for places where there's the potential for things to break doesn't hurt at all. And that's something I can do when going through my manual polishing
 
Last edited by Aplier,

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,187
Country
New Zealand
You shouldn't need the 10's at all as all 3 fonts 10/11/12 are pointed to the english font now.
So it should only display stuff with the english font.
 

Aplier

Member
OP
Newcomer
Joined
Oct 16, 2019
Messages
24
Trophies
0
Age
31
XP
142
Country
United States
Oooh, ~fancy~
Having no clue beyond the bare basics of how pointers work, let alone the ones for this game, I have no sense of how much time/effort it took you to get that all swapped over. But I can't thank you enough for doing so.

It does seem that every major section aside from the ones I'd done for menus is now pointed to it's English equivalent, and that's already far more than I could have hoped for. So now it's just a matter of playing through the game fixing typos as I go, or scouring through the ~140,000 character block that is the english script and proofreading it that way. I think I'll be picking the more fun option.

It almost saddens me that this game I love so much, which nearly 10 years ago was so close to reaching such a complete level as it is now, was never able to be given that final push to having an actual patch made and released. And now I feel like so much more of the credit is yours, Normmatt, with your mastery of the pointer system and being able to make such sweeping changes.

The only thing I think I have left to ask is if you know if there is a way to make a 91 properly show up as a "..." when being displayed in the English font, like it does in the Japanese font. Or does font work like that go beyond the scope of what's capable for roms like this?
 

fluffsorcerer

New Member
Newbie
Joined
Nov 24, 2019
Messages
1
Trophies
0
Age
34
XP
35
Country
United States
I have been waiting YEARS to see this version of the game translated.Normmatt, Aplier, a thousand blessing upon you and your households for this! I was wondering, do the character models and portraits for Tony exist in the game's data? If so, are you planning to implement them? I just despise Dan SO MUCH! Complete and utter loathing for his character design! No offense to the Japanese localization team, but they really picked the blandest, shonen-adventure-hero-Goku-lookalike possible, for their protagonist!
 
Last edited by fluffsorcerer,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Xdqwerty @ Xdqwerty: