Mother 3

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 21

MOTHER 3 Fan Translation

English v1.2
Released July 9, 2014

This is an unofficial translation of MOTHER 3, a Japanese RPG released for


the Game Boy Advance in 2006. MOTHER 3 is the sequel to the 1995 Super NES
RPG, EarthBound.

Please support the MOTHER/EarthBound series by purchasing official


merchandise, including the official translation if one is ever released.

For more details about this translation and the project, please visit:

http://mother3.fobby.net

=========================================================================

WHAT'S NEW IN VERSION 1.2:

* A number of minor, rare bugs have been fixed


* A few rare typos and other text issues have been fixed
* Some bugs present in the original Japanese game have been fixed
* Script text encoding has been undone
* Duster's sound battle sounds play properly the original game had
some problems with this
* And probably some lesser stuff that's been forgotten over time

If you've played a previous version of the translation patch, this


version won't seem very different at all. Over the past few years
we had made a number of fixes. Rather than sit on them forever,
we decided to release this new version.

=========================================================================

HOW TO USE THE TRANSLATION PATCH:

1. Unzip the contents of this zip file to a folder/directory. You should


find the following files:

* mother3_windows.exe
* mother3_macosx.app
* mother3_linux
* mother3.ups
* mother3.txt (that's this file)

2. Second, you will need to obtain a ROM of the Japanese version of


MOTHER 3. This clearly steps into promoting piracy, so you will have
to find this on your own. Search engines are useful for this sort of
thing.

Once you have the ROM, make sure it is unzipped/uncompressed. The


file should be 32 MB in size. Put this file in the same folder as
the files from above.

3. If you're using Windows, run the mother3_windows.exe file.


If you're using a Mac, run the mother3_macosx.app file.

If you're using Linux, run the mother3_linux file.


(This was compiled under Ubuntu, if it doesn't work, try manually
applying the UPS patch with something like byuu's tsukuyomi UPS
utility. Also don't worry about the fact that the program still
says "version 1.0". We couldn't get anyone to recompile a 32-bit
version for this new patch version, but the program will still
patch the 1.2 patch despite what it says)

Note that the patching process may take a while on and old computer
or if you're running it off of a flash drive. For most people, it
should only take a matter of seconds to patch.

4. The patching utility is very simple. Simply tell it where your ROM
file is, and then hit "Apply patch!"

If your ROM is a bad dump or if something is wrong with the ROM file,
the patching utility will inform you of this. Make sure you have a
correct dump of the original Japanese ROM, and that it hasn't been
modified in any way.

5. Once the patch has been applied successfully, you're now ready to
play the game in English! You can use a GameBoy Advance emulator of
your choice, or, if you have the proper hardware, you can play it
on the handheld or console of your choice. For details on the latter,
please see the project page.

NOTE: If you're using a recent build of VBA-M, you can skip steps 3 and 4.
because the VBA-M team recently added soft-patching support for
UPS patches. If you don't understand what this means, just ignore
it and use the normal patch procedure listed above.

=========================================================================

TROUBLESHOOTING:

Q: I can't save my game! What's wrong? Help!


A: This happens primarily with Mac emulators. There are several possible
fixes to this:

- If you're using Mac VBA 1.7.4, perhaps try 1.7.2 instead.


- If that still doesn't work, try another emulator.
- Trying fiddling with emulator's preferences. Setting the flash save
size to 64K might get the game to save properly.
- Try downloading someone else's save file and putting it wherever
your save files normally go. This seems to fix the saving problem
for some people.
- If you're not on a Mac, try using the Save Fix option of the GBATA
utility. It shouldn't be too hard to find GBATA.
- If all else fails, try applying the save fix patch that's available
at the translation project site. Some flash carts also have saving
problems, and this save fix patch seems to work equally as well on
Mac emus and flash carts.
Q: The patching utility says my ROM is bad/corrupt, but it can't be!
A: There do exist bad dumps of the ROM out there, so if you wind up
with a bad copy, try getting the ROM from somewhere else.

Q: The patching utility says it can't find mother3.ups, but I see


mother3.ups right there!
A: You need to unzip the .zip file fully. Running the patcher program
directly from the .zip file won't work. Consult your .zip program
instructions if necessary.

Q: I tried using the patch on a ROM with the old menu patch/1.0/1.1
translation patch. But it won't work. What's up with that?
A: This translation patch can only be applied to the unmodified Japanese
ROM.

Q: I double-click on the .zip file but nothing happens!


A: If your computer doesn't have .zip file support (most computers in the
last 10+ years have support by default), look on Google for things
like 7-Zip or WinZip.

Q: The game gets stuck at the intro screen. Help!


A: You can skip this normally by pressing any button. If you're using an
emulator, keep in mind that you might need to set up what keyboard
keys act as what GBA buttons.

Q: I can't get the battle combo system to work right! Help!


A: To get combos in battle, you have to tap the A Button in time with the
beat of the music. Some songs are more difficult to combo to than
others. Also, because of the nature of emulation, the precise timing
needed may get out of synch. If you're having trouble getting combos
on an emulator, try these things:

- Try a different emulator, or a different version of your current


emulator.
- Try turning the emulator's frame-skip setting to 0.
- Close all other programs that you might have open. You might want to
restart your computer, too. This may help speed emulation up a bit.

Sometimes some songs are just made to be difficult to combo to. There
is an item in the game that will let you hear the beat more clearly,
and there's another item that will let you practice combos on any
enemy you've fought before. Take the time to gain some real-life
experience to make combos easier.

Note that combos are NOT needed to get through MOTHER 3. They're just
an added bonus for players who take the time to master them.

Q: The game crashes/freezes on my hardware!


A: This may be a hardware-specific problem. See if you can't find more
info about your hardware. Consult this forum thread if you have any
problems running the translation on actual hardware:

http://forum.starmen.net/forum/Games/Mother3FanTranslation/47933
The M3 brand of hardware seems to be the most problematic.

Q: The music seems to speed up in the main menu sometimes, but not
always.
A: This is an issue with VBA-M and other emulators based on VBA-M. The
problem doesn't occur on other emulators or actual hardware.

Q: I'm experiencing slowdown in the forest area at the beginning of the


game. How can I fix this?
A: This is actually entirely an emulator issue, and occurs with the
original game, too. Try tweaking your settings a bit. It may help a
bit, but probably won't fix it completely.

Q: I want to use save files from the Japanese version or the old menu
patch version, but the names get screwed up in the English version!
Help!
A: We made a save file convertor tool for Mac, Windows, and Linux. See
the online version of this readme at the project site for a link to
the convertor.

=========================================================================

REPORTING BUGS, TYPOS, AND THE LIKE:

With something as complex as this, it's almost a given that bugs and other
issues will turn up. We tried very hard to get rid of as many problems as
possible, but there will surely be some we missed. If you encounter
anything bug-like or find a typo or grammar problem in a rare line of text,
you can report it to us below. Also note that the original game had a few
bugs of its own - we did fix some of these, but not all.

Please note that there are some issues we are already aware of. These
problems may be fixed in a future version of the translation. Since we are
already aware of the following problems, please do not report them.

KNOWN ISSUES:

* Name Summary Slowdown: After you've named everything at the start of the
game and select "Yes", the screen will fade out. But the audio will sound
jittery for a few seconds. This is due to the sprite text welding we had
to do to allow more text per screen. We optimized this code a lot, but
the fadeout is still not as good as we'd like. Please overlook this tiny
problem for now. This is the only place where this issue occurs.

* Menu Text Glitch: If you scroll through main menus too quickly,
sometimes the game won't have time to catch up, and text won't be fully
erased. This is pretty rare, and happens mostly when there's a lot of
text on the screen but little on the screen you're switching to. In many
cases, you almost have to purposely try to make it happen. Fixes were
attempted, but for now, if this happens, you can easily fix it by
switching to another menu or scrolling text up. This glitch will happen
in most main menus, not just the item menu, so please don't report it.
We hope to fix this in a future patch, if possible.
* Temporary Main Text Slowdown: For reasons unknown, main dialogue text
might seem to slow down on rare occasion, but will revert to normal
speed a few letters later. The cause for this is unknown, and all
attempts to figure it out turned up absolutely nothing. This problem is
rare and it also fixes itself soon after. We hope to fix this in a
future patch, if possible. For now, please overlook this small issue.

* Extra/Missing "The": This issue probably doesn't happen anymore, but


there's always a possibility for it. Sometimes, during battle, a
player's name might have the word "the" in front of it, usually
involving a line of text about a status effect. Conversely, the word
"the" might not appear before an enemy's name during a status effect
line, when it should be there. The Japanese language doesn't use
things like "the", so the original programmers didn't design the game
for this, and as a result, enemies and players share many (but not all)
battle text lines about status effects. Fixing this will require a
ton of work to reverse engineer the whole battle system, but we hope
to have it 100% fixed in a future patch. For now, if you notice any of
this stuff, please overlook it.

* Gift Box Transformation: Very rarely, when walking around, open gift
boxes will turn into status ailment icons. It turns out this is
actually a bug in the original Japanese game.

* With the VBA-M emulator, sometimes the main menu music will seem to
speed up. This is an emulator issue. This doesn't happen on other
emulators or actual hardware.

NOTE: If you used the debug room at any point in your game, please don't
send us any bug reports. Even if it doesn't seem like the bug is related
to the debug room. The debug room is very crazy and does (and neglects
to do) many things in RAM that aren't immediately obvious.

If you've encountered a bug that isn't listed above, you can post about
it on the MOTHER 3 Bugs topic here:

http://forum.starmen.net/forum/Games/Mother3FanTranslation

It's important that your bug report be very detailed, so please include
the following, if possible/applicable:

- A detailed description of the bug


- A description of what you were doing in the game just before the bug
happened
- A picture of the bug in action, if possible
- If there was a typo or a grammar issue, first make sure *you're* not
mistaken, then provide the exact sentence that is wrong. Keep in mind
that some misspellings are intentional, and some characters speak
strangely on purpose.

IF YOU'RE PLAYING THE VERSION 1.0 OR VERSION 1.1 PATCH, PLEASE DO NOT
SUBMIT ANY BUG REPORTS!

=========================================================================

TRANSLATIONS INTO OTHER LANGUAGES:


With the release of English patch 1.2, we're also releasing a lot of
the tools and files we used, so that fans everywhere can translate the
game into their native languages. These tools will be available on
the MOTHER 3 site at http://mother3.fobby.net/ or possibly on the
blog section of the site at http://mother3.fobby.net/blog

Note that these tools are buggy, prone to crashes, and not perfect.
They'll be very helpful, but as they weren't made specifically for
other languages, you may run into various issues that you'll need
to solve on your own.

Also, due to the tools' limitations, only a certain set of font


characters is supported. Translators wishing to translate into languages
that use other font characters will need to be creative with our tools
or create some of their own translation tools.

=========================================================================

GAMEPLAY QUESTIONS:

If you have gameplay questions, there are several resources available:

- http://handbook.fangamer.com/
MOTHER 3 Handbook A fan-made guide that's kind of like the MOTHER 3
equivalent of the old EarthBound Player's Guide. Filled with tons of
awesome! The online version is free, but you can also order an actual
print version of it to have at all times!

- http://walkthrough.starmen.net/mother3/
Starmen.Net MOTHER 3 Walkthrough
A detailed step-by-step walkthrough with accompanying screenshots,
maps, enemy stats, item lists, skill info, and tons more stuff.

- http://forum.starmen.net
Starmen.Net Forum
The Starmen.Net forums are packed with EarthBound series fans, and
you're bound to have your questions answered quickly on the MOTHER 3
message boards.

- http://walkthrough.starmen.net/mother3/routesummary.php
This is a bare-bones walkthrough, telling you what to do if you're
stuck, but without revealing any story or spoiling anything in
advance.

=========================================================================

EXTRA GOODIES:

For the translation, we added a few extra features not found in the
Japanese game. These extras are unobtrusive and will only be found by
completionist-type players.

- In the game, there is an item called the Battle Memory. This keeps a
record of every enemy you've fought. If you manage to completely fill
this log up, a silver star will appear on the Battle Memory screen
as a badge of your greatness.

- Similary, if you find every enemy AND log all the possible
front-facing and back-facing/alternate sprites for all enemies, a
gold star will appear on the Battle Memory screen.

- There are a few other hidden features, but you'll have to discover
them on your own. They're sure to please, for those who try hard
enough.

Note that no new enemies were added in the translation. No unused bosses
were added. No unused music was made accessible. No new areas were made
accessible. Only the extras listed above were included.

If you'd like to mess around with unused content from the game, see
this topic about hidden/unused stuff:

http://forum.starmen.net/forum/Mother/3_GameHelp/47543/first

There will also be detailed discussion about the unused content later
on in the online translation notes/commentary. (See below for details)

=========================================================================

WHO WE ARE:

(This is outdated now that many years have passed. This info is from 2008.)

The translation project was mostly a two-man team consisting of Jeffman


and Tomato. Jeffman just entered college this year, and is majoring in
electrical engineering. Tomato is a professional Japanese to English
translator and co-founder of Starmen.Net. Both also helped create a
community around hacking the EarthBound ROM years ago.

Additional help was done by many generous people, most of whom are still
in school and aspiring to be programmers and translators once they
graduate. This project has given a lot of hands-on experience to everyone
involved.

=========================================================================

THE PROJECT:

Below is a list of the work that went into producing this translation.
Many things may be missing, and the trial-and-error process of most of it
is left out, as are all the fixes required due to single hacks breaking
others. About 95% of everything listed here was done by Jeffman and
Tomato. This was all done in spare time, while juggling things like
full-time jobs, school, life stuff, relationships, sleep schedules, etc.

Translation for this particular project really began around June 2007,
and major hacking began around October 2007.

TRANSLATING:
- Main script, ~800 pages
- Battle text, ~60 pages
- Character names, 300 lines
- Playable/assist character names, 16 lines
- Default names, 69 lines
- Item names, 256 lines
- Enemy (+misc) names, 329 lines
- PSI names, 100 lines
- Item descriptions, ~11 pages
- Enemy descriptions, ~25 pages
- PSI descriptions, ~5 pages
- Skill descriptions, ~1 page
- Map names, 1000 lines
- Menus 1, ~11 pages
- Menus 2, ~14 pages
- Menus 3, ~2 pages
- Sound player track list, 250 lines
- Misc sound player text, 6 lines
- Misc text, 50 lines
- Status text, 52 lines

EDITING/FORMATTING:
- Main script went through a second draft for text improvement,
translation fixes, etc. and was also all formatted and polished by
hand, just as Shigesato Itoi did with the Japanese version, which
left Japanese reviewers in awe. Draft 2 took approximately 6-7
weeks.
- After Draft 2, a full, very-detailed playthrough of the game to find
context issues, bugs, typos, etc. was done before moving on to the
last hacks and the final testing.
- All other text also went through revisions, and, in the case of things
like names and descriptions, were all tested over and over in-game to
make sure everything was formatted properly and sounding just right.
- Some more slight revisions and fixes were made to the text during the
final testing phase too.

MAIN SCRIPT HACKING:


- Figured out how the script is stored
* Figured out how individual blocks are stored/pointed to
* Found the many different control codes and figured out what they do
- Wrote a custom application to dump the script to a text file
- Wrote a custom text editor application that can load, save, and preview
the translated text as it would appear in the game
- Because some individual lines of text were so big (12 KB+) that they
broke the above app, some extra tricks were needed to make these lines
get processed properly.
- The English script was over two times larger than the Japanese script,
so an ASM hack was needed to squeeze the text back into the game.
Without this, major cuts to the script would have been necessary,
making the whole game sound like the old man in Zelda 1.
- Even with the above, we were going to be a couple dozen KB over the
limit, so we did some more trickery to save space. After all was said
and done, we wound up being under the max limit by about 100 KB in the
end. Awesome.
- New fonts, taken straight from EarthBound, were placed into the ROM.
- A hack was necessary to make the game load 16 lines of font data; the
original font was only 10 pixels high. This also required changing the
way the font was stored in-game, so extra hacks were needed to load from
the proper locations. For technical and layout reasons elsewhere, the
main font could only be 11 pixels tall.
- Because fonts were now 16x16, the text positioning on screen had to be
changed. This was kind of tricky, they used hardware VBlank tricks for
this.
- A new variable width font routine needed to be written for the main text.
- The game allocates only enough memory for 21 letters per line. When
exceeded, the game would crash horribly. To fix this, we had to change
how the game loads the text from the ROM and how it places it in RAM.
- Somewhat related to the above, the game would seem to ignore control
codes after the 21 letter limit was passed. This turned out to be due to
how the game handled each line of text in RAM. This was fixed.
- The game only allocated enough memory for 42 letters of main script text
to be on screen at once. Fixing this was hell, but eventually we tricked
the game into using only two "slots" and constantly swapping back and
forth.
- Even with the above fix, the game would still stop displaying text every
so often, and the cause for this had to be found and fixed. Had to do
with the game not clearing out RAM properly.
- Different text speeds handle text slightly differently, so this required
a few extra hacks to make things display properly. This was tough, and
there's still one tiny bug, but it's very rare and usually not even
noticeable.
- The game would try to do an auto-linefeed every so often, and this had
to be killed.
- Even with these fixes, memory limitations meant we could only have like
40 letters per line, which is only half the screen across in some cases,
so some RAM rearranging was necessary. Eventually we were able to
allocate 250 letters per line - which is more than we'd ever need, since
the GBA screen isn't even 250 pixels wide :P
- Custom control code hacks were made so that items would have "a", "an",
"the", "some" (or nothing at all, in some cases) printed in front of
them. Not even the EarthBound programmers bothered to do this, which is
why items in EarthBound don't start with vowels, except in cases where
they forgot at the last second. Because of how strangely the game is
programmed, this hack had to be redone in many different places, very
annoying.
- Routines involving names of nameable things (players, fav food, etc.)
had to be hacked to allow for the new longer lengths. Easy-ish, but
still constantly annoying.
- Since we reorganized the font, the routine that converted numbers to
strings had to be hacked to display numbers properly.
- Main script menu choices were very strange and after trying to figure it
out for a while, we basically rewrote those display functions.
- Three-choice menus also had to be hacked to display and act properly.
- Four+ choice menus were a huge pain to hack to display properly. These
mostly appear in the debug room, but since the debug room itself is such
a big part of the post-playthrough experience, we went ahead and fixed
it too. What a pain.
- The routine that prints PSI names had to be hacked to 1. display the
name properly, even if it was at the longest length possible, and 2. to
make it turn into PK/PSI + space + name + space + proper Greek symbol.
This was all kind of tricky, as there was very limited RAM and we had
also reorganized the font earlier. Even EarthBound didn't go to such
lengths, which is why you'll get things like "Rockina" instead of
"Rockin a" in that game.
- Block 0, a strange block of text in the main script, had its own
problems.
* Block 0 needed its own variable width font routine, even though the
rest of the main script already had one
* In scrolling text, the name control codes somehow broke, so this had
to be fixed. I'm wondering if this might've been an anti-piracy
thing.
* Scrolling text text loading had to be hacked, just as the main
script hacking needed to be. Many things needed re-doing for Block
0. Very annoying.
* Scrolling text would often make sprites blink every few seconds.
Fixing this required some trickery.
* Scrolling text was repositioned slightly to allow for more text per
line .
* [CENTER] codes in Block 0 had to be hacked to work properly
* Some more name-length things had to be hacked, which broke other
things, which also needed to be fixed (which is where "Welcome to
th :|" comes from)
* Block 0 cut scene text loading routines had to be hacked so the game
would load text properly and position it properly. In this game, a
letter's location in memory determined its position on screen, which
is a huge huge pain, especially when trying to expand text and when
a VWF is involved.
* Misc. key items like the Stinkbug Memory use Block 0 text, and these
had to be extensively hacked to work properly with all the new
English text. The game would crash horribly or cause very strange
things to happen, including video glitches resulting in
Moonside-like stuff.

BATTLE HACKING:
- Battle text stuff had to be figured out
* The location/storage method/pointer system had to be figured out
* Had to figure out the many different control codes used in battle
* Had to locate other misc. battle-related text blocks
- All the battle text blocks had to be dumped to a text file
- Because there was so much more English text, the battle text had to be
relocated elsewhere in the ROM.
- Even after doing this, there was so much text that the pointers couldn't
address it all, so a hack that did some pointer math magic was needed to
fix it.
- The font-loading routine had to be hacked to load the new font letters
from their new positions, since we now used a new-sized font. It also
had to be made to load the new # of lines per letter.
- The text-erasing routine had to be hacked to only erase the proper
amount. The game would cause strange graphical glitches in the player
names otherwise. This hack also sped up text refreshing in battle menus
too, which was a nice plus.
- The game only had enough memory for 40 letters of battle text on the
screen at once. Fixing this was assumed impossible, but a fix was
figured out anyway, allowing for infinite text per line.
- Very closely connected to the above, a variable width font routine had
to be added to the main battle text.
- Things like auto-line breaks every 20 letters had to be killed.
- Because the original game didn't do it how we needed it to, we also had
to write our own new "move text one row up" routine.
- A custom routine to make battle text do auto-word wrap was added. That's
word-wrap, not letter-wrap. The original game didn't have this, but
because something similar was done for EarthBound, it seemed fitting.
And it looks really great and professional in action, too.
- Code for several battle text lines had to be hacked to work with English
word order. (item stolen text, enemy encountered text, etc.)
- A hack that determines the # of enemies at the start of battle was
added, allowing the game to say "and cohort" or "and cohorts" at the
intro text.
- A hack that determines the proper pronoun to use for an enemy was added.
- A hack that determines the proper article to use for an enemy was added.
- A hack that determines the proper article to use for an item was added.
- Custom control codes to use the above new hacks were added. This makes
the text much more natural and fluid. Our hope was that it would be
natural enough that people wouldn't even realize we had to hack that
stuff in. EarthBound's localizers did a few of these things, but for
this project, we went much further.
- Since enemies and players sometimes share battle text, a hack had to be
added so the game wouldn't add articles before player names. This used
to cause things like "The Flint attacked!" to happen.
- A variable width font needed to be hacked for the battle menus.
- Had to fix things so that items without the Equip (E) symbols were
positioned properly in menus.
- Since we reorganized the font, the routine that converted numbers to
strings had to be hacked to display numbers properly.
- When your inventory is full and an enemy leaves behind an item, the
programmers programmed all those routines separately. So most
everything you see above had to be done a second time just for these
few lines of text.
- Late in the game, there are some special 3-line text boxes. The text
display routines for these were all separate from the main routine.
So most everything you see above had to be done yet again, for a
third time.
- In the final battle is special text without any boxes at all. This
was programmed separately from everything else, so we had to redo
everything above yet again. Argh!
- 8-letter player names had to be hacked to work properly. Other long
nameable stuff had to be hacked to work properly as well.
- The character name-centering routine had to be hacked to position the
names in the HP/PP boxes properly.
- The routine that prints PSI names had to be hacked to 1. display the
name properly, even if it was at the longest length possible, and 2.
to make it turn into PK/PSI + space + name + space + proper Greek
symbol. This was all kind of tricky, as there was very limited RAM
and we had also reorganized the font earlier.
- Item descriptions that had control codes for displaying status icons
(most status-healing items, basically) didn't appear how we wanted
them to in battle, so a hack was made to display slightly alternate
versions of these eight or so descriptions in battle.
- A hack for the Recollection Bell was needed, so that it would use the
proper palette.

MISC OUTSIDE HACKING:


- All kinds of text stuff had to be figured out
* NPC name text had to be located and figured out
* Misc text had to be located and figured out
- The above text had to be dumped to files
- A reinserter for the above had to be programmed
- The character name-centering routine had to be hacked to position the
names in the HP/PP boxes properly. The names were also moved up a
pixel to look better with the new font.
- The routines that determine the lengths of the gray names boxes had to
be hacked. These were very weird and there were multiple instances of
the code, all of which had to be found and hacked. Very strange stuff.
- The positioning of the names in the gray box were tweaked a tiny bit.
Also, the 8x8 font loading routine needed to be hacked a tiny bit to
load with the new 8x8 font properly.
- Sometimes the game loads names for the gray boxes from the enemy name
list. Some of these names are long and caused problems, so we had to
write a hack to make the game load from a list of abbreviated enemy
names.
- Several things had to be hacked to allow for 8-letter player names.
This caused some problems with some main script routines, so some
untangling was necessary.
- Outside menu text had to be hacked to load the font properly
- A VWF had to be written for outside menu text
- Outside menu text had to be hacked to display in the new, proper
locations. This was all hard-coded and annoying.
- Some of the Sleep Mode text was annoying. The game only allowed for a
limited number of letters, and not enough for something professional
in English. This had to be worked around.

SOUND PLAYER HACKING:


- Various text had to be figured out
* The list of actual song names had to be found, its format
understood, etc.
* The block of misc sound player text also had to be found, its
storage method understood, etc.
- The above all had to be dumped to text files
- Reinsertion code had to be programmed
- Because of the lack of space, the translated song text and the misc
sound player text all had to be relocated in the ROM
- Hacking code to load the new font properly was needed, much like
everywhere else in the game
- A VWF was needed, but luckily the battle menu text and this text
seemed to share some of the same code
- Code to properly erase text in the sound player was required
- Code was needed to make misc. sound player text center properly

NAMING SCREEN HACKS:


- A variety of text blocks had to be figured out, dumped, etc.
- Code to reinsert the text had to be programmed.
- These blocks had to be relocated in the ROM due to their new sizes.
- Hacks to allow 8-letter character names were implemented. The
Japanese game only allowed for 6 originally. This also allows
"Kumatora" to have her full default name.
- Hacks to allow 8 letters for your "favorite thing" were implemented.
The Japanese game originally only allowed for 6 letters.
- A VWF-like routine to make names look extra professional while
entering text was implemented.
- A cursor-related bug in the original Japanese game was fixed.
- Similar to what was done in EarthBound, the two separate "what is the
name of you, the player" screens were made to share the same name.
The Japanese version of MOTHER 3 had you first type your name in one
Japanese alphabet, and then later on in English letters. Because we
only have one alphabet, we made the second one a "confirm your name"
type thing, and, because we no longer needed two strings in RAM, we
combined them to allow for one extra-long string. This means the
player's name can now be 16 letters long, much longer than before.
- The letter layout for the second "player's name" naming screen had to
be hacked to use the normal layout, and to automatically load the name
given earlier, since it's now a "confirm your name" screen.
- To make the above work, some slight text box expansions/graphical
tweaks were necessary.
- Other misc. text repositioning, fixes, etc. were made to make all the
new text look and fit better.
- The "Don't Care" text on the naming screens where there are no default
names needed some special attention to make it not appear.
- The Japanese version of the game lets you choose from several different
alphabet sets; these had to be disabled and the naming screen code had
to be hacked to make these things unselectable in all naming screens.
- Also had to disable the L/R Button alphabet switching.
- The naming letter selection screen had to be figured out, rearranged,
and redrawn.
- Had to kill the game's auto-formatting on the name summary screen, as
it looked horrible with English and with a VWF.
- After doing the above, fixed coordinates were given for things on the
name summary screen, making the English VWF text look much more
professional

MAIN MENU HACKS:


- Many, many text blocks had to be located, figured out, dumped, etc.
- Code to reinsert all the above had to be programmed.
- Most (if not all) of the above text had to be relocated in the ROM due
to space limitations.
- The main menus use several font-loading routines for some reason, and
these all had to be hacked to use the new font layout and all that. It
also had to be hacked to load the full letters rather than just the
first 10 rows.
- The main menus utilize sprite-based text to a considerable degree. The
problem here is that the GBA can only have so many sprites due to
hardware limitations, and because of other issues, things like item
descriptions could only have 40 or so letters. The use of sprite text
throughout the menus is so widespread that a solution to these
limitations was needed. And, since a variable width font was also
needed, the sprite text routine had to be hacked considerably, spanning
weeks (if not months). This was probably the hardest thing in the game
to hack, and if hell had a taste, it would be sprite-flavored.
- Even after getting the "sprite-welding" VWF mentioned above working,
the game would come to a crawl whenever sprite text was on-screen. Major
optimizations and bug fixes were necessary to bring the game back up to
a decent speed. Even after all this additional work, the game will still
sputter as the naming confirmation screen starts to fade out.
- Because of how sprites work, and because sprite text can change suddenly,
a weird sort of "text morphing" would occur whenever text changed. It's
difficult to explain, but fixing this was another hell of its own.
Without this, sprite text would seem to freak out every time a change in
text occurred. We needed the text to remain looking rock-solid, as a
professional release would certainly have.
- Certain item descriptions also include status icons in the text, and
these interfered with the new sprite text routine. Because of this, the
status icon routines also had to be hacked to play nice.
- Even with the display routines working now, the game would still crash
and die when various menu messages/lines exceeded various lengths,
usually because text was being passed on the stack. So the way the game
would copy these messages from ROM to RAM had to be redone. The way the
game allocated and cleared this memory also had to be hacked. Otherwise,
some menu messages could have only been like 10 letters long. Very WTF.
In any case, in most of these cases, we were eventually able to make it
allow 240 or so letters per message.
- Misc. menu messages, such as when you're selling an item or buying an
item and it asks you to equip the new item, had to be hacked to use the
proper word order and spacing that we use in English.
- Some custom control codes were added so that the game would know to use
"a", "an", "the", "this", "these", "some", etc. before item names in
menu messages.
- When you "Use" a piece of equipment, the game tells you it's just a
piece of equipment. For the translation, we made this better by having
the game tell you what kind of equipment it is specifically. Just a tiny
improvement over the original game.
- Non-sprite text (item names, skill names, other misc. stuff) in the main
menus needed a VWF written.
- The main menus only allowed for 8-letter item names, and 128 letters of
non-sprite text on the screen at any one time. This was absolutely
unacceptable, so after a week or two of difficult hacking, we managed to
allow for 21-letter item names and 600+ non-sprite letters on screen at
once. Now items can have long names and look professional. There is one
tiny, rare display bug related to this, but if it happens, it will
likely fix itself very shortly after.
- Text on the file-loading screen had to be hacked, and auto-positioning
code had to be killed and replaced with positioning that worked better
with English. Due to repeated code and rare test cases, this had to be
repeated a few times.
- Text on the file-saving screen also had to be hacked similarly, but the
code was different and was basically its own separate thing.
- The file-loading/file-saving screens had to be hacked to allow for
longer map names. This involved changing how the game copied the text
from ROM to RAM and what it did with it after that.
- The text speed box in the file-loading screen was expanded slightly.
- A crapload of misc. text and labels had to be moved/re-aligned. It was
kind of annoying because nearly all of it was hard-coded, and there
were multiple instances of everything.
- A small hack was made to allow "dare ni?" to become "To whom?" or "On
whom?", depending on the context of what's being done.
- Similarly, lots of cursor positions were tweaked to make things look
better. The cursor would often obscure the first few letters of text
otherwise, which was very strange of the original programmers.
- Most main menu message text was moved left considerably to allow for
more text per line.
- A hack was needed to make numbers convert to strings properly now that
we had a new font layout.
- Names in the Battle Memory screen needed their own VWF written.
- The text layout for the names on the Battle Memory screen was pretty
ugly, so we balanced it out a bit.
- The text used for the Battle Memory names used to use the 8x8 font, but
we managed to make it use the main font for the translation.
- Because long enemy names wouldn't fit in the small Battle Memory name
box, a hack had to be made to load enemy names from a list of
abbreviated names.
- Enemy description text was repositioned slightly, to allow for more
text in the very limited amount of screen space.
- In various menus, hacks had to be made to allow for 8-letter names.
- Tons of fixes for obscure submenus and such to allow for the expanded
item names.

MISC. OTHER HACKING:


- At first, we used Goldroad to compile individual hacks, and then a
custom program I wrote to insert them all in the right place. This was
INCREDIBLY tedious, so luckily byuu showed up and wrote a THUMB version
of his xkas assembler over the course of a few weeks or something like
that. We had to port all our hacks over to xkas, but this new
environment sped the project up incredibly. It was like a dream come
true.
- Because the MOTHER 3 ROM is so big, normal IPS patch files wouldn't be
usable, as they can only alter files up to 16 MB in size. A new,
easy-to-use patch format called UPS (developed by byuu) was created for
the project, and UPS patching programs for different operating systems
were made.
- We had to do some interesting hackmagic to make room for our assembly
hacks, especially after the THUMB version of xkas was finished.
- The cast roll had to be hacked to allow for 8-letter nameable character
names
- The ending cast roll used sprite text, and because of hardware
limitations, there weren't enough sprites available to print all the
names in English. So we decided to pre-draw all the names rather than
use one sprite per letter, like the original. This involved making a
program to automate the process, and some hacking to make it work.
Nameable characters still use the one sprite per letter deal, but
luckily even with expanded 8-letter names, we just barely make it
under the limit in those cases.
- Another hack had to be added to make the above work right in all cases;
apparently using the debug menu at any point in the game would result
in wrong names being used for the characters, eventually leading to a
crash. The debug room is weird.
- While doing this hacking, we made a few more names in the cast roll
appear - it seems the original programmers had the same problem we had
as above, so they were forced to remove a few names from the cast roll
(though the characters still appear). Since our fix allowed more text
at a time, we were able to put those names back.
- Two sound clips, one .4 seconds long and one 1.3 seconds long, were
replaced with English clips. They were simple sound effects; had the
game had actual voice acting, we would've left them untouched and
figured something else out. Figuring out how to replace this data took a
bit of time and another program was written to speed up the process.
- A disclaimer screen of sorts was added to the beginning, before it shows
the company logo screens. The first time you play, you have to wait 2
seconds at least, so that people will hopefully read what it has to say.
After that, you can press a button to instantly skip it.
- We modified all our text tools to use a table file, thereby making it
much easier for people to translate the game into other languages down
the road.
- Hacked the end credits to display the full player name (now that it's
much longer than before) properly. Also, because of credits font size
issues, we had to write a table-ish hack to make lowercase letters act
like uppercase letters, etc.
- The font for the above had to be redone, since we had redone the normal
font too. Because of limited memory, we couldn't do lowercase letters,
which is why the above was necessary.
- A hack was added to display a silver star on the Battle Memory screen
when all the enemy entries are obtained.
- A hack was added to display a gold star on the Battle Memory screen when
all the enemy entries + all their alternate sprites are obtained.
- Some special stuff related to the above was also added, but it's better
to keep the secret secret for now :P
- Some extra stuff (also secret) was made accessible in the game. Play
the game in great depth and you may eventually discover this stuff.
- Had to look into why the original game can't save or will crash on
certain types of hardware, in an attempt to fix this. We decided to
leave the fixes for this outside of the patch, in case the fix winds up
causing more problems than we started out with.
- Wrote a save file convertor so that save files made with the original
Japanese game can be used with the translation. Changing the font's
layout causes old names to look and act like garbage with the
translation. The convertor can also auto-convert names to the new format
most of the time, if a player used English letters for their names in
the Japanese version.
- Wrote a program to edit character inventories in save files, for testing
purposes.

GRAPHICS HACKS:
(NOTE: Many changes were made from MOTHER 2 to EarthBound. If you're not
aware of what these changes were, see http://tomato.fobby.net/m2eb
In many cases, we followed these same patterns for MOTHER 3.)

- Since our goal was to make the translation very close to what an
official one would be like, we changed the health warning screen at the
beginning into its English counterpart.
- Most of the text speed/window color confirmation screen was done
graphically, and had to be redrawn into an English version.
- Data for the chapter title screens had to be figured out, dumped, and
then the chapters had to be redrawn, retiled, and put back in the game,
all within the limited amount of space available.
- Similar work had to be done for some overlay text at the start of
Chapter 4. There are two instances of this.
* The first instance lacked the space and the dimensions for any
usable-looking English text, so we simply blanked out the text. It
says "Three Years Later", which is redundant anyway, since a few
seconds later it says "Three Years Later" again. Also, the lack of
text makes the daylight lightning and the thunder more noticeable
in this scene.
* The second instance happens about 10 seconds later. We managed to
squeeze text in the limited ROM space and limited sprite/screen
space available.
- The money withdraw and deposit screens were redrawn into English.
- As was done with the EarthBound localization, the "YOU WIN!" graphic was
changed to "YOU WON!"
- The "OFE" and "DFE" things in the main menus were changed to "OFF" and
"DEF". These were compressed graphics, but luckily we didn't break
anything with our slight changes.
- The "By Some Chance/Some Sort of Beat" item was changed to the
"Recollection Bell", and the graphic for it was changed as well. This
also required a few palette hacks in various places.
- The building that says "LABO" in New Pork City was changed to say "LAB".
This was done in EarthBound's localization too, though we didn't add
any extra little bolts like they did with EB. This was comprised of lots
of tiny little compressed graphics, so getting it to work wasn't
straightforward at all.
- In the movie theater, the scene of the "MONOTOLY" building from MOTHER 2
was changed to the "MONOTOLI" building, as it was spelled in EarthBound.
This was also comprised of compressed graphics that needed luck to fit
back in the original space.
- The kokeshi statue and the octopus statue (both from MOTHER 2) in the
hall of memories were changed to their EarthBound counterparts, the
eraser statue and the pencil statue. These graphics were compressed, so
getting these to work and to fit in the tiny space allotted wasn't easy.
It also required a new palette hack.
- In the next room is another octopus statue. This was again changed into
its EarthBound counterpart, the pencil statue. In the box is an item
that will erase the statues (an homage to M2/EB), and a small animation
plays as the octopus statue disappears. An animation for the edited
pencil statue also had to be made.

TESTING:
- Approximately three weeks of in-house testing was done to help make sure
the game wouldn't crash and die or act too buggy or anything.
- We also wrote a bunch of tools to make extra-sure that various lines of
text sounded right in all possible situations and combinations.
=========================================================================

TRANSLATION NOTES: (by Tomato)

As with many of my ROM translations, I hoped to include very detailed


translation notes in this readme file. But as I'm swamped for time and
I'd rather not delay the patch's release, I decided to briefly cover
only some of the bigger points of interest for now. My plan is to do a
detailed translation "commentary" of sorts on the translation project
site over time. That way I'll have more time to cover things, and I
can explain said things in more detail, with images, links, and such.
If you're interested in the translation side of things, you'll probably
find the commentary stuff to your liking.

For now, I'll just briefly cover some of the more important things.

First off, I should mention that I'm a professional Japanese->English


translator. I translate Japanese games, television, movies, anime,
manga, and all that stuff for a living. I co-founded Starmen.Net way
back in 1999. Long ago, I started a site examining the translation and
localization of EarthBound from MOTHER 2. I recently re-started the
site from scratch, but if you're interested, you can see it here:

http://tomato.fobby.net/m2eb

In the past, I've also worked on ROM translations of things like Bahamut
Lagoon, Star Ocean, Live-A-Live, Famicom Detective Club 2, and a whole
bunch more.

As for MOTHER 3, I'd been translating Shigesato Itoi's (creator of the


MOTHER/EarthBound series) interviews, articles, and whatnot for
Starmen.Net as far back as '99. So following that all this way - even
through the cancellation of the Nintendo 64 version of MOTHER 3
and through all of his diary entries during the GBA version's
development - was a neat experience. I feel all that background
knowledge and info helped a lot with this translation.

One of Itoi's quirks when writing the text for his games is that he says
it all aloud. For example, during MOTHER 1 and MOTHER 2, he didn't know
how to use computers, so he had to say the text out loud to an assistant
sitting at a computer. He's also notorious for being unhappy with huge
blocks of text and suddenly throwing them out and redoing them later on.
Also, he intentionally writes the game's text entirely in the phonetic kana
syllabary. This is because he wants the text to seem more like someone is
speaking it.

This is a coincidence, because whenever I translate, I translate out loud


until a line sounds right. I'll be the first to admit I'm not a world-class
writer, and definitely nowhere near as skilled at English as Itoi is with
Japanese, but I hope some of the text still retains at least some of its
natural "flow". I apologize if it doesn't hit the mark. But I think it
should be okay for the most part.

The goal of this project was to make a translation as close to an official


Nintendo version as possible. This was made more difficult by the fact
that we lacked the game's source code and data files, but in the end I
think we came pretty close, and that we probably surpassed what the
official version would've been in some aspects. This translation patch
has no censoring, though, which probably would've been likely in an
official translation. So let's say the patch is very close to what an
official version would've been like, but not exactly.

There is also something that all official games have to go through called
"lot check". If the strict requirements of this check aren't met, a game
will be rejected by Nintendo (or other console manufacturer) and things
will have to be fixed until requirements are fully met. One part of the lot
check is that all hardware and all components of a console/handheld MUST
be referred to in specific ways. For example, with the GBA, you can't just
say "Press A." You have to specifically spell it as "Press the A Button."

Since I've worked on a few professional game translations, including a


GBA game, I have the list of these requirements handy and tried my best to
make sure MOTHER 3's translation followed them. It doesn't mean much, and
most people won't notice, but I wanted to strive for that extra bit of
quality, to make the game seem almost as official as possible.

Another part of this goal also meant localization. Sometimes puns and plays
on words just don't transfer between languages and cultures, and in these
cases, suitable, similar equivalents that evoke similar responses were
chosen. Some place names were localized slightly, and a few character
names were also localized. Overall, I'd say we didn't localize the game
quite as much as an official version would have (EarthBound had a whole
bunch of stuff changed, often for no reason), but I think people will
enjoy it just as much.

The character "Yokuba" had his name changed to "Fassad". I wasn't the one
who thought this up, but when it was suggested, I was on the fence for a
long time. It took me about a year to finally go with it, and once I had
tried it out in-game, it just fit so well. "Yokuba" comes from "yokubari",
the Japanese word for "greed". Because this wouldn't be picked up by the
English-speaking target audience, an alternative seemed appropriate.
"Fassad" comes from the word "facade", and in the case of this particular
character, the name fits in many different ways.

Pokey, a character from EarthBound, makes an appearance in this game.


However, the translators for EarthBound were unsure of how to romanize
his name and wound up naming him incorrectly. It's clear from this game
that Itoi intended his name to be spelled "Porky" all along. This left
me with a problem: which name do I use? I mulled it over for maybe 8
months or so, and decided to go with how the creator intended it, rather
than go with what was a mistake. Additionally, Nintendo of America also
seems to take this stance, as he's now referred to as Porky in Super
Smash Bros. Brawl in many places. The name "Porky" also fits in with
the big "pig" theme of this game. Leaving it as "Porky" also meant we
didn't have to go through the trouble of hacking a large number of
compressed graphics.

I considered trying to add in a little line somewhere saying that maybe


Pokey changed his name to Porky at some point, but that didn't seem
quite right. I decided I'd just cover the issue briefly in the
translation notes. I hope this helps explain some of this issue. It's
one of those things where whatever choice you make, someone won't be
happy. It's funny though, because between EarthBound Zero and EarthBound,
the antagonist's name changed from Giegue to Giygas, despite being the
same character with the same spelling in Japanese. And now something
similar has happened again.

Switching gears, I thought I'd mention that there are many subtle
text references to MOTHER 2 in MOTHER 3, so I used some old EarthBound
hacking tools to dig up lots of the corresponding EarthBound text.
Things like the Hungry HP Sucker, the Slime Generator, and the Heavy
Bazooka can be found in rarely-seen battle text. When applicable, enemy
names were localized in the same manner that they were localized between
MOTHER 2 and EarthBound. There are also tiny references in the main text
that only an obsessed fan would notice. Keep your eye out for things like
this, because this is one area where the unofficial version would
probably outclass an official version!

There is a whole lot of text in this game, and a lot of it is easy to


miss. Characters will often say new things even after the tiniest event
happens, so take your time to explore the game and talk to everyone
and everything often. There's lots of neat stuff to be found.

This is getting quite long now, but if you're interested in more


detailed discussion about specific translation choices and other misc.
info/trivia about things, check out the translation project site from
time to time. I plan to go through the whole game chapter by chapter and
provide little pieces of commentary and little-known info.

I was originally only supposed to be the translator for this project,


so as for how I wound up being a main hacker too... I don't even
remember at this point. Both Jeff and I basically learned how to
assembly hack just for this project, which turned out to be one of the
toughest ROMs to be hacked to date. We both learned fast and it was
mostly sheer determination and the goal that got everything done. If
I could go back in time though, I probably would not ever do this hack
again ;)

Anyway, if you have specific questions about certain things, whether


they be translation/localization-related or about the hacking side
of things, you can post them in the MOTHER 3 area of the Starmen.Net
forum and one of us will try to respond when we can.

Everything said, I hope you enjoy this translation and take your time
exploring the world of MOTHER 3.

=========================================================================

NOTES FROM JEFFMAN:

Being a sort of designated ROM hacker for this project, I had to learn a
lot of new things. I really didn't know any assembly programming coming
into this, for example. Given the right tools, a logical thinking process,
and a heck of a lot of free time, though, it eventually became second-hand
knowledge for me.

I did have a solid foundation in general computer programming and


EarthBound hacking, however. If it weren't for the PK Hack community I
definitely wouldn't be where I am today in terms of ROM-hacking knowledge
and programming prowess. I didn't start as early as Tomato of course,
since he's the one who co-created PK Hack, but I came early enough that
I was able to establish the fundamental knowledge and be ready for an
immense project like this.

ROM hacking itself is more of a discrete and technical thing so it's hard
to explain individual aspects of this project without going into heavy
detail, for those of you who don't know much about programming. There's
a massive list of things earlier on in this file that shows just how much
we had to do -- and for each item, I could probably write a full essay on
how it was accomplished. Although it was a lot of work, I learned a great
deal not just on assembly programming, but on logical thinking and
problem-solving altogether, things that will definitely help me later on
in my engineering program at university.

When thinking on such a basic level -- the assembly code level -- it's not
that hard to get lost easily, and it's incredibly difficult sometimes to
figure out what's going on, especially without having the original source
code. Some of the really simple problems that presented themselves during
the project would take hours to complete, only to be tested and then
I would find a dozen more problems that come as a result. Multiply that
by the majority of the items on the above list, and you get... a lot of
hours. Days, weeks, and months. That's how much time I spent trying to
make each hack complete and perfect. Looking at the end result, it was
definitely worth it.

=========================================================================

DEDICATIONS:

This translation is dedicated to all fans big and small of the


MOTHER/EarthBound series. It's been over 13 years since that "The End...?"
screen. And now the next chapter is here. This translation is for you.

The translation is also dedicated to Shigesato Itoi, who needs no


introduction. His work has inspired countless people, and his creations
only seem to age better with time. Here's to hoping there will be fans
of the series 10 years from now who will have grown up with MOTHER 3
just as many of us grew up with EarthBound.

The translation is also dedicated to the folks at Nintendo, and the


people in the Treehouse especially. Thanks to those who tried to help
bring out MOTHER 1+2 and MOTHER 3 here, even though it never worked out.
This was a very fun game to work on, so it's a shame you weren't given
the chance.

Lastly, this translation is dedicated to you. Yes, you, the one at the
keyboard.

=========================================================================

PROJECT TEAM:

Main Team:
JeffMan (hacking) http://jeffman.net
Tomato (hacking, translation) http://tomato.fobby.net
Chewy (misc. translation) http://www.yomuka.com

Additional Help:
byuu http://byuu.org
DoctorFedora http://doctorfedora.livejournal.com
sblur http://www.sappharad.com
Exophase
harmony7 (ex. RPGe) http://www.pex2.com
Kevin_b_er
Gideon Zhi http://agtp.romhack.net
demi http://www.demiforce.com
reidman http://reidyoung.com
Jonk http://jonkaydesign.com
Klarth

Additional Thanks To:


mitch NinjaBoyNeo Zinco
Ninten1 npjpkac post_it
HoshiNoRyuka Classicworth butsukoy
Ben Cocchiaro chrono (and all the vba-m guys!)
Anthadd Nutsjesmoar psychomax
PKGINGO BRPXQZME PoeTrader
nightshade Giovanni Dr. Hobo
Jatopian Phone Artemis251
Tansunn zyboser Difegue
LarryTheCucumber Gemini Zip Code Ness
Fugitive alezicarus Meeellla
Plo Firegirl Kevin
Sling Mr. Sword PriestessPaula
Dr Shlub EmpoleMew Smash Bass
Clayman Elobo

...and many others. Many apologies if you were accidentally not listed.
But your help is what made this patch possible.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy