Mirror of jeffman/mother2gbatranslation - Mod for Mother 2 for the GBA to localise it for english language speakers
Go to file
Lorenzooone 9018780401 File select menu printing + Customizable Y printing - Missing Alphabet's cursoring (#59)
* Feature/fileselect (#58)

* Start file select notes

* Blank out file select tileset template

* Preliminary string printing

Had to change the signature of the base
print_chr function because the file select
screen uses a lot of non-standard memory
layouts. For example, the tilemap has a
variable width instead of the standard 32
tiles.

* Include string data in linker script

* Update notes

* Print the full array

* Add external calls

* Add FILE_SELECT struct

* Add format_file_string

* Widen main file select window

* Format full text speed string

* Add build badges to readme

* Oops on the master badge link

* Update README

* Fix file select not showing any info because of wrong palette.

* Make it so before printing the tiles are properly cleared

* Commit for the day. Missing Delete and Copy from File Select menu

* Add Delete and Copy

Also document all windows for future

* Setup basic alphabet - Need cursoring

* Add support for not-multiple-of-8-Ys to print_character_with_callback

* Add support to extra Y tile if and only if it's needed to print_character_with_callback

* Improve cursoring for new Y

* Add summary support
2019-08-08 15:07:24 -04:00
bin Committing armips to repo 2019-02-28 18:07:17 -05:00
notes Merge from master 2019-08-05 22:08:19 -04:00
screenshots File select menu printing + Customizable Y printing - Missing Alphabet's cursoring (#59) 2019-08-08 15:07:24 -04:00
src File select menu printing + Customizable Y printing - Missing Alphabet's cursoring (#59) 2019-08-08 15:07:24 -04:00
tools Fourside text fixes and others (#42) 2019-07-13 20:26:19 -04:00
working Fix https://github.com/jeffman/Mother2GbaTranslation/issues/46 and https://github.com/jeffman/Mother2GbaTranslation/issues/28 (#52) 2019-08-04 15:58:41 -04:00
.gitattributes Update gitignore and gitattributes 2015-03-16 00:15:26 -04:00
.gitignore Update gitignore 2018-12-21 15:18:54 -05:00
CONTRIBUTORS.txt Update contributors 2018-12-03 17:40:43 -05:00
LICENSE Create LICENSE 2018-11-02 11:36:48 -04:00
README.md File select menu printing + Customizable Y printing - Missing Alphabet's cursoring (#59) 2019-08-08 15:07:24 -04:00
build-appveyor.ps1 Add error checking 2019-03-01 19:47:18 -05:00
build-tools.ps1 Remove SymbolTableBuilder 2019-01-07 23:56:27 -05:00
build.ps1 Include string data in linker script 2019-08-05 20:19:39 -04:00

README.md

Branch Status
Project Build status
master Build status

MOTHER 2 Translation for the GBA

This is a work-in-progress translation patch for MOTHER 2 on the GBA.

Discord

Our Discord server is pretty active: https://discord.gg/ADXS5Ub

Hasn't it been done?

There are at least two other projects that translate the MOTHER 2 side of the game:

  • Mato's menu text translation: here
  • TheZunar123's full translation (in progress): here and here

Why start another project?

Neither of the above projects use a true variable-width-font (VWF) to render text. A VWF would look much better and would make the game more enjoyable.

Adding a VWF is hard, however. Mato explains here why it's generally a very difficult task to fully translate the game, let alone to insert a VWF.

A long time ago (before the release of the MOTHER 3 Fan Translation), I started working on a proof-of-concept VWF for MOTHER 2 on the GBA. It worked, but it quickly became apparent that the amount of hacking required would be huge; window-rendering functions contain a ton of repeated code and some of it is downright non-sensical.

A few years after that, I tried it again from scratch with the intent of having a more organized codebase. It went much better, but I was soon limited by not having any translated dialogue, rather than not having a VWF; I couldn't test much of my VWF code without any English text inserted into the ROM.

Now what?

This project aims to both complete the VWF codebase and to provide a tool for translating the game's dialogue. My new intent is to bring the hack to a state where I can just sit down and translate text efficiently in my spare time with a graphical tool. Not only that, but having such a tool means that other people can contribute!

Screenshots

Building

Dependencies

  1. One-time setup
    1. Install .NET Core 2.1, PowerShell Core, and GNU Arm Embedded Toolchain. Make sure the Arm toolchain's bin folder is in your PATH.
    2. Create a bin folder in the root of the repo.
    3. Copy MOTHER 1+2 ROM to bin/m12fresh.gba.
    4. Copy EarthBound ROM to bin/eb.smc.
    5. Run build-tools.ps1.
      • Windows: .\build-tools.ps1 in a PowerShell prompt
      • Linux: pwsh build-tools.ps1
    6. Copy/build armips to bin.
      • Windows: grab the latest release here and copy the executable to bin/armips.exe.
      • Linux: follow the README to build armips and copy the executable to bin/armips.
  2. Building the ROM
    1. Run build.ps1.
    2. The default compiled ROM is copied to bin/m12.gba.
  3. (Optional) Build the GUI script tool:
    1. dotnet build tools/ScriptTool (don't set the output directory)
    2. dotnet build tools/ScriptToolGui -o bin/ScriptToolGui
    3. Run with dotnet bin/ScriptToolGui/ScriptToolGui.dll (or just run the EXE file directly).