Last update: 12/6/2021
Getting Started
Note: this section assumes you are running Windows. You’ll need to do your own research on getting the things I list here running on other operating systems.
Required Software
These are the applications that you’ll need to get started on creating your own mods and doing your own research. There’s wiggle room with which tools to pick, though its recommended to use the tools listed here.
- psxfin / bizhawk / duckstation / any PS1 emulator that has a memory viewer
- This page will be using psxfin 1.13
- CEP / anything that can enable GameShark codes
- HxD
- wxMEdit
- CDMage
- BNE2
- Locale Emulator
- LibreOffice Calc
- tilemolester
- Python 3
- deepL
- PSXImager
- vgmtrans
- Build from source
- Cheat Engine (optional, but useful)
Here’s the software you’ll need to create patches in order to distribute your mods, assuming you didn’t change the size of the final ROM. Note that these are only one of the many options available to you:
Game-Specific Tools
These are the tools that were made just for SaGa Frontier that will speed up your modding process.
- sagafup0051 (extremely powerful Japanese BNE2 settings)
- ScriptHelper (splits battle scripts into individual sections via header pointers)
- Misc. tools and notes from Zanerus
- MysticLord’s tools and notes
- Japanese save file editor
- README
- Note that this hasn’t been confirmed to work on the American version as of the last update to this page
Useful Links
These are links to various resources that will help you out as you work on your mods.
- Zaraktheus’ Data/Mechanics Guide
- The Sakura Site (Japanese)
- SF Data Project
- SF atwiki (Japanese)
- My translated pages
- Sevon’s The Essence of SaGa Frontier Translation
- Wandel Raum (Japanese GameShark codes) (Backup link)
- 5chan hacking forum archive (Japanese)
- Save editing (Japanese)
- Choi Research Institute (Japanese)
- Blog of an extremely proficient Japanese modder
- American GameShark codes
- Misc Links
Another thing to keep in mind is perusing GameFAQs or Spriter’s Resource might lead you to an answer on something you for some reason can’t answer with the above links.
Opening Japanese Files and Applications
In order to open Japanese files and applications on a non-Japanese system, you need to do the following
- Install Locale Emulator
- Right-click the application > Local Emulator > Run in Japanese
- For some applications , they will need admin privileges
It’s that easy. However, sometimes you will be forced to use tools that are extremely old and not supported by Windows 10 (e.g. BNE2). To run those, simply set the Compatibility Options to use Windows XP (Service Pack 3) and you should be able to run them without any issues.
Some ROM Hacking Basics
I won’t explain absolutely everything about ROM hacking here, just some of the basics that will be very important with SaGa Frontier.
Bytes and Words
In computer programming and architecture, a byte is a number of bits. One byte is 4 bits in length. Of course, a bit is a binary number. Naturally, writing every single bit for each byte takes up a lot of space, so this is shortened to hexadecimal numbers. Hexadecimal is a base-16 number. I won’t explain how it works here. A word is a set number of bytes. In the PlayStation, a word is most often 4 bytes in length, or 32 bits.
Little Endian vs. Big Endian
Numbers written in big endian are written like you would any other number. For example, 1,951,534 would be written as 00 1D C7 2E in a word. Numbers in little endian are in reverse. For example, the same number abose would be written as 2E C7 1D 00 in a word.
Decoding Pointer Tables
Pointer tables are tables of pointers to other offsets in the file. They are of a set length of words written in little endian. Most often, they are headers of flies. For example, an IMF*.IMG has a 10-word header file made up of various pointers to other offsets in the file that are the starts of other sub-files.