Malenko
Established Member
Lets start with the obvious. The likelihood of me actually finishing this is pretty much non existent. I saw this game on a SegaLordX video and thought it looked neat. Also mentioned below, this is not the best technique to use on a text heavy game like Terra Phantastica; this is more about how to do it and less about what game we're working on 🙂
There is an immense amount of text ; and my knowledge of Japanese is laughable at best. That being said, I am going to do my best to figure out how all the data is stored and how to change it so that maybe some others will help by making tools and offering translation help.
I thought this thread could also double as some sort of quasi-tutorial so people can see my terrible method for figuring these games out.
I almost *always* start with the menus. For me its the most important part because navigating around and knowing what to pick to even start a game is pretty high up on the priority list. So for Terra the screen you get is this:
Now I've played enough import games to know the second one is options, and since I know I don't have a save game for this title I was confident the top one was something like "start game". After finding the data , I did use deepl and google to machine translate just to make sure. Machine translation is absolutely fine for most menu items but you'll need a real translator for story and dialog!
So what I did was look for the options screen text by searching it's shift-JIS value in @derek (ateam) 's byte-search tool. If you are unsure how to get the shift-JIS value the easiest way is to use google translate on your phone, then copy/paste the text and email yourself the Japanese. Then just copy 1 letter at a time and search a shift-jis table (like https://mattsmessyroom.com/uploads/sjis.tbl ) I found it in 0.bin . So I opened 0.bin up in a hexeditor and found the value:
You can see on the right that the Japanese text matches perfectly. The CLUTCH thing to notice is that the word EXIT further down is in English in Shift-JIS value. So the first thing I tried was just using English values for the main menu. With with wxMEdit you can type on the right or put values in on the left, other editors may vary. I always try to use the 2 byte value first because then you get double the letters. if it doesnt work you just go back and use the 4 byte values.
Without knowing too much about the way the data is presented; I always try to use the same number (or fewer) letters, then pad out the rest with either 20 (single space) or 8140 (double space) in this particular case I padded out "Options" with 208140 which is a total of 3 spaces. Then I used @Knight0fDragon 's SSP program to make a new patch and apply it so I can test. I have started a new thing where I keep vanilla versions of the files and ISO, just incase I need to go back to untouched files. I use the Vanilla ISO to patch against when testing
The important thing is to be fine with it not working and not to get discouraged. It not working is not a failure, its eliminating what doesn't work, so that you can narrow down what DOES work. I got lucky this time and it worked first try:
I then repeated the same process for the options screen, which was made easy by the fact it already had *some* English on the screen:
Find the values (I didn't byte search this, since I figured the menu text was all together) in 0.bin
and then change them to English:
Since I was using the 2 digit JIS values I was able to put more letters on each line and better flesh out what the options were and what they do.
There is ZERO tile editing on these screens, these fonts are already part of the game. The 2 digit JIS values here gave me false hope that I could use them for the entire game. SPOILER: I could not and had to make custom tiles.
And the result of the patch on the options screen:
In your head-cannon you probably think this took 5 minutes but in reality it took me probably 2 hours to get it all sorted. All of these projects are big time sinks so you do have to mentally prepare for that. Don't get burnt out, take breaks, hop in discord to ask for help, hop in discord to hang out and relax.
There is an immense amount of text ; and my knowledge of Japanese is laughable at best. That being said, I am going to do my best to figure out how all the data is stored and how to change it so that maybe some others will help by making tools and offering translation help.
I thought this thread could also double as some sort of quasi-tutorial so people can see my terrible method for figuring these games out.
I almost *always* start with the menus. For me its the most important part because navigating around and knowing what to pick to even start a game is pretty high up on the priority list. So for Terra the screen you get is this:
Now I've played enough import games to know the second one is options, and since I know I don't have a save game for this title I was confident the top one was something like "start game". After finding the data , I did use deepl and google to machine translate just to make sure. Machine translation is absolutely fine for most menu items but you'll need a real translator for story and dialog!
So what I did was look for the options screen text by searching it's shift-JIS value in @derek (ateam) 's byte-search tool. If you are unsure how to get the shift-JIS value the easiest way is to use google translate on your phone, then copy/paste the text and email yourself the Japanese. Then just copy 1 letter at a time and search a shift-jis table (like https://mattsmessyroom.com/uploads/sjis.tbl ) I found it in 0.bin . So I opened 0.bin up in a hexeditor and found the value:
You can see on the right that the Japanese text matches perfectly. The CLUTCH thing to notice is that the word EXIT further down is in English in Shift-JIS value. So the first thing I tried was just using English values for the main menu. With with wxMEdit you can type on the right or put values in on the left, other editors may vary. I always try to use the 2 byte value first because then you get double the letters. if it doesnt work you just go back and use the 4 byte values.
Without knowing too much about the way the data is presented; I always try to use the same number (or fewer) letters, then pad out the rest with either 20 (single space) or 8140 (double space) in this particular case I padded out "Options" with 208140 which is a total of 3 spaces. Then I used @Knight0fDragon 's SSP program to make a new patch and apply it so I can test. I have started a new thing where I keep vanilla versions of the files and ISO, just incase I need to go back to untouched files. I use the Vanilla ISO to patch against when testing
The important thing is to be fine with it not working and not to get discouraged. It not working is not a failure, its eliminating what doesn't work, so that you can narrow down what DOES work. I got lucky this time and it worked first try:
I then repeated the same process for the options screen, which was made easy by the fact it already had *some* English on the screen:
Find the values (I didn't byte search this, since I figured the menu text was all together) in 0.bin
and then change them to English:
Since I was using the 2 digit JIS values I was able to put more letters on each line and better flesh out what the options were and what they do.
There is ZERO tile editing on these screens, these fonts are already part of the game. The 2 digit JIS values here gave me false hope that I could use them for the entire game. SPOILER: I could not and had to make custom tiles.
And the result of the patch on the options screen:
In your head-cannon you probably think this took 5 minutes but in reality it took me probably 2 hours to get it all sorted. All of these projects are big time sinks so you do have to mentally prepare for that. Don't get burnt out, take breaks, hop in discord to ask for help, hop in discord to hang out and relax.
Last edited: