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.