Basic PSP game translation

how to translate some psp games (does not show you how to translate every word, it's just the basics)
This tutorial takes kh bbs as example,you can use this tut for other games, but keep in mind that something may change, and it will most likely happen... Translating a game requires a lot of patience and time.
Here's the tutorial:
Don't worry, it isn't very difficult to translate games.
You only have to keep in mind some rules. Birth by Sleep is an uncompressed game, so translating it is easy.
You don't need to know japanese, because you can find on youtube the translated videos by strwmilk for bb/bbs fms. but of course for most games you need japanese knowledge, you can use websites or my japanese coach for ds to learn it.
You have to download an hex editor, in this case, I recommend you the Madedit one.
It lets you see Japanese Fonts, you have to go to Characters Encoding and select Windows Japanese. Make sure you can see japanese fonts on your pc. After that you can go here : http://kh_bbs.wikiwiki.jp and copy and paste the jap characters that you see in the japanese video of the game. Let's start with the second part...

The translation itself:


Start Madedit and open the BBS0.dat( Extract it from the ISO, using Winrar )
If you were able to open that file, then, click on the Search function, and paste the jap characters by pressing ctrl+v .
It will take a lot of time to find the words and don't worry if the program won't answer to your commands.
When it will find the sentence that you were looking for, you have to keep in mind these few rules:

The program is divided in three tables,
the first one, on the left, contains the "offsets", the second one contains hex values, such as 00 and 0A( I mention these ones, cause they are the most important) and the third one contains text. You only have to pay attention to the second and third one.

I will now explain to you, the functions of 00 and 0A...
00 is a null value, it's extremely important, cause you CAN'T overwrite or delete them. They mark the beginning and the ending of the sentence.
0A lets you go to next line, you can move them as you wish, but keep in mind that you can't move it a lot from where it was originally.

Another important thing is that you MUSTN'T PRESS DELETE WHEN YOU'RE USING THE HEX EDITOR, if you press it, you'll damage its structure by messing all the pointers out.

If you have any other doubt, just ask me. When I'll have free time, I'll be pleased to help you.

Byeee!

this tutorial doesn't tell you how to translate all of the game
ps:it only tells you the basics
 

stpats8806

New Member
Newbie
Joined
Aug 14, 2011
Messages
1
Trophies
0
XP
1
Country
United States
Thanks for the guide, I found it quite helpful. I do have something I'm hoping you can help with though. I am translating a game and have been able to find and translate all of the menu text just fine, but I can't find any text from the actual game script. I'm just wondering if you have any ideas about how I might go about trying to locate the script text. Any thoughts or ideas would be appreciated. If not, no biggie; just figured asking couldn't hurt.
 
D

Deleted User

Guest
Thanks for the guide. just wondering if you can't delete the Japanese text how do you replace it with English?
 

JuliusEra

majestix1988
Newcomer
Joined
Jul 24, 2012
Messages
75
Trophies
0
XP
71
Country
For Testing Purposes use a Emulator or a Good PSP (i would think Emulators are best for testing due no need transferring files on psp then test it) this for hackers(who changing files to japanese to english)

For games doesnt have English version or not-released on US

for Translators[a guy who translating japanese story/items/descriptions/npc talks and other thing to english]

1. using a emulator is a must than using a psp due(it has ability to save state where you(forgot a letter(hiragana) then load it) stuck to translate)
2. Make a Game Script complete(story/items and etc.) from the game(Write all things on the Word alike that have japanese fonts or a paper) could make easy translate
3. You need a Proofreader or Editor(to check your translation errors) if you have doubts




PS: always check the game compatibility first before making a project for translation on emulator(just check on their forums)

just adding things(to give more ideas)
 

Dflower

Member
Newcomer
Joined
Mar 9, 2021
Messages
6
Trophies
0
Age
32
XP
69
Country
Ecuador
I am translating the Steins Gate video game from English to Spanish but when testing the game the dialogs are cut off or incomplete, what can I do? I am using the Sakura text editor
 
  • Like
Reactions: Exexd123pro

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,282
Country
United Kingdom
I am translating the Steins Gate video game from English to Spanish but when testing the game the dialogs are cut off or incomplete, what can I do? I am using the Sakura text editor
Games don't know when text starts and ends. Instead when the game is made there will either be a fixed length (usually for menus and the like) or something in there which tells it where the text is, this is known as pointers.
I usually go with an analogy of contents page in a book. Rip out some pages or stuff some new ones in and if you are counting along with pages to get to where the contents page says you will likely not end up in the right place.
If your translation added more characters than was there to begin with then the game will probably only read what it needs to get to the end of where it thought it started.

Alternatively there may be a limit on what is displayed on screen.

Pointers is one of the fundamentals of ROM hacking really (plenty of guides in all manner of languages) so I will keep it limited here.
Generally there are three types
1) Standard
2) Offset
3) Relative.

Standard is much as it implies. Either in the text file itself, possibly in another file in the directory or buried somewhere in the binary will be a list of locations where it can find the start of each line/section of text directly within the text file, or maybe RAM.
Offset. Going back to contents pages in books. You have probably seen what is known as front matter where things are numbered in Roman numerals (i,ii,iii,iv,v,vi,vii,viii,ix,x,xi....)before switching to Arabic numbers (1,2,3,4,5,6...) for the book proper. Similar idea here, usually at the end of the pointers and thus start of the text section but not always.
Relative. Kind of a combo of the two. If the game knows what its current location is then it can read a value it finds here, add it to the current location and get to where it is at for real (coding wise this can be a bit faster than the other methods too, and some processors will also have things to handle this).

Finding pointers can be tricky. I normally do things like look at what the end of line is in a game, or if they always end in a certain value. Do a search for those and note down all the locations. You now have a list of hex and some things you might compare to (I like spreadsheets here) and seeing how far out they are from what you suspect your pointers are. Normal and offset will then tend to be a fixed distance out, relative will tend to get more and more out the further you go into a file, usually by a fixed amount each time if said pointers in the file are also a fixed distance apart (if each pointer is 4 bytes then it will get 4 more bytes out each time).
A search like that is not necessarily flawless -- if you used a fullstop there might be a trailing ... that looks like three fullstops, simply have two sentences within a section or similar. Same can apply with whatever the game used to indicate the end of a section but also happens to indicate something else. Some games are just all end to end with nothing to demarcate text sections other than the pointers themselves (technically speaking the pointers should be all they need). To that end get in the habit of checking a few lines down in your spreadsheet or whatever you are using to see if your once promising pattern might pick up again later.

In with pointers there might be other things like noting what to make bold, what character is speaking, some things have length as well as location (other games will just use the current pointer and the next one, subtract the latter from the former and have the length that way).
There are some other ways. I did pull apart a DS game once that had a size value at the start of each section of text that it used, and another that did that and was also a kind of scripting language, however you would probably have found that out already.
 
  • Like
Reactions: Exexd123pro

Dflower

Member
Newcomer
Joined
Mar 9, 2021
Messages
6
Trophies
0
Age
32
XP
69
Country
Ecuador
hey I have a serious problem, I am thinking of translating Persona 2 Innocent Sin from PSP but extracting the cpk uncompresses some files in .bin format and I need to extract all of those to find the dialogs of the game, which program to extract many .bin to the once recommend
 
  • Like
Reactions: Exexd123pro

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,282
Country
United Kingdom
.bin (usually short for binary, as in binary data rather than ASCII or something) is about the most common extension in computing. Indeed there can be many totally different formats within a single game that all use .bin as their chosen extension.
To that end unless someone came before you and made a program for this game specifically, or outside chance another game from the same dev or alternative version of the game on another platform, then you are going to have to write your own.
 
  • Like
Reactions: Exexd123pro

Lalito0325

New Member
Newbie
Joined
Apr 30, 2022
Messages
2
Trophies
0
Age
20
Location
Michoacán
XP
23
Country
Mexico
I'm trying to translate harvest moon hero of leaf valley into Spanish, but I haven't been able to do anything. I have seen psp translation tutorials and they mention some files where the texts could be, but when using UMDGen so few files come out, EBOOT.BIN being the only one I recognize.
I don't know what to do, I thought it could be due to the region of the iso, I tried both the USA version and the EUR version, but they are the same, and I thought that if I used an already translated version as a base (which was never finished) I could have the files at my disposal, but the structure is the same.
I ask for help because I know that it is possible to carry out the translation.

PD: my plan is to make a faithful translation, and then a parody translation, something like a Mexican version XD
 

MarmaladeBoy

Member
Newcomer
Joined
Mar 22, 2022
Messages
13
Trophies
0
Age
28
Location
Nomad
XP
46
Country
Japan
I want to add my 2 cents here:

Bunkai is tinkering with the PSP digivice, to hopefully see it fully translated someday, he is writing what he does and all the sources he find in rhdn to help that game and any future PSP translation, link here: https://www.romhacking.net/forum/index.php?topic=35699.msg437896#msg437896

Now, to give a heads up without opening external links, you need a program to obtain the files from the umd or the iso, and people use umdgen and apache3.

After that, you can extract files from the cpk with CriPakTools.

Later you'll need to search through the files and texts with the tools you all have already mentioned and some others like QuickBMS.

Besides the current emulator and debugger of choice for that console is the PPSSPP.


- Regards


PS: With that many PSP translations that exist nowadays, honestly one would thought there was a good or at least complete guide to get started using that console.
 
Last edited by MarmaladeBoy,

master801

Well-Known Member
Member
Joined
Feb 24, 2011
Messages
1,119
Trophies
1
XP
2,422
Country
United States
PS: With that many PSP translations that exist nowadays, honestly one would thought there was a good or at least complete guide to get started using that console.
There are no "good" or "complete guides" with making a translation patch because not every game is the same. The process is different for every one and many times not applicable to another.
 

MarmaladeBoy

Member
Newcomer
Joined
Mar 22, 2022
Messages
13
Trophies
0
Age
28
Location
Nomad
XP
46
Country
Japan
There are no "good" or "complete guides" with making a translation patch because not every game is the same. The process is different for every one and many times not applicable to another.
You're right, there's no one and only guide. I, like many, expressed my thoughts badly there.

I was refering to a guide with the most common tools for this type of endevours. The same way you have some for other console formats. Obviously reverse engineering is full of different details depending on the game or the console, but they all have some common "first approaches" which is what i wanted to explain/show/give.


Further than that will always be rom based.

Sorry about the missexplaining
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,282
Country
United Kingdom
PSP. Not that I am aware of.
Some other systems. Yeah.

Results were nothing at all.

The times you see programs made they are typically one shot procedural efforts, or a few of those stacked together to make a filter or something. To that end if you really wanted to you could probably pull the game apart into its constituent files, figure out the general format and have it build a program to handle the specifics there if you are not so hot as a coder; manipulating pointers is nothing drastic, Indeed most could happily describe it or do something with basic spreadsheet efforts, but going from never really coded to something to reliably manipulate pointers is rather more advanced than I would necessarily lay at the feet of someone just coming off hello world where such a person should be within reason to correct the few little errors it will make though)..
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    straferz @ straferz: Anybody know why this is happening to my ACWW town...