News: 11 March 2016 - Forum Rules

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Rai

Pages: [1] 2 3 4 5
I've got some time coming in day or so and I'm definitely gonna try that out and flood this thread with my findings ;D.
The way I achieved that text size that I have now is by editing the sprite in photoshop and inserting it back. Again, newbish hex editor lol.
Cool, you can also insert code with "armips". Essentially, the PS2 MIPS processor supports all of the instructions that the PS1's MIPS
processor did. So even though "armips" only supports PS1, it can be used to insert code into PS2 games. The only downside is that it won't
recognize the newer instructions that the PS2's MIPS processor adds.

Yes a proportional font is very possible, I was able to do one for my Super Robot Wars MX Translation. If it's anything like SRW MX, there will be some code that loads the width and you will simply have to overwrite that code.

The best debugger I've found for PS2 is the PCSX2 Orphis Build which you can get at this site:

I could take a look at the game myself when I have some free time. I've been very busy with real life related things which is why there's been little progress on my own projects; but once I get some free time I might be able to look at the game.

Nice to see another fully translated SRW game! The work and effort you guys put in is definitely greatly appreciated.

Yep, I plan on taking a look into a VWF again once I get some of the other description text out of the way. I gave it a shot back when I was a little less familiar with the game, which didn't go incredibly well. I do want to look into trying again in future, just to try and cut down on the amount of space that punctuation takes up at the very least.
Cool, good luck with that. If it's like the other ps2 SRW games, it probably loads a fixed width value somewhere. To add a VWF, you would find where that value is loaded and then add code to read from a width table.

This project looks great so far! Keep up the good work! Do you guys plan to add a VWF?

Personal Projects / Re: Namco X Capcom Translation Improvement
« on: December 23, 2016, 08:23:24 pm »
That would be interesting to see if it is possible.  :)

Agreed and to spark some interest and possibly some help with some translating I just might drop a polished beta this weekend.  ;)
Cool, I'll take a look at the game then.

If I'm able to add a VWF; I'll send you the patched SLPS file.

Personal Projects / Re: Namco X Capcom Translation Improvement
« on: December 23, 2016, 03:53:19 am »
It's cool to see someone working on an improvement for Namco X Capcom.

If you want, I could try to add a variable width font to the game.

If it's like most PS2 games, it probably has a fixed width value somewhere in the code.

I can't make any promises; but I could try to take a look if you're interested.

Personal Projects / Re: Goemon 3 (SNES) translation project
« on: November 14, 2016, 08:33:17 pm »
It's great to see that DDSTrans is working on Goemon 2. Hopefully Goemon 2's script isn't compressed or as control code heavy as Goemon 3's.

My guess is that it's a full-width Japanese space (i.e., it takes up as much space as one double-byte character). They're using it probably to line up the text so that it appears neatly in solid rows, since the opening and closing quotations take up space.

Without spacing:

「ものしりじいさんが ゴエモン・いんぱくとの
ざんがいを りようして こしらえた
はぐれまち と にんじゃやしき を いきき
できる きかいの ことよ!!

With spacing:

「ものしりじいさんが ゴエモン・いんぱくとの
 ざんがいを りようして こしらえた
 はぐれまち と にんじゃやしき を いきき
 できる きかいの ことよ!!
The "[Spacing]" code is basically a bunch of spaces compressed into one byte.

I went and checked the text in-game.


When it reaches [0xB4]:

And then the message box closes.

[Spacing] is the indentation aligning the next lines with the brackets after the speaker's name (Omitsu here). IMHO it's a waste of screen estate, especially with longer names, and deserves to go away.
So, something like this:

could look better with the speaker's name in its own dedicated line, like this:

(you could free up a line by removing the 8x8 dakuten from both lines of text)

As a side note however, Goemon and the Space Pirates for the PS1 does use full width Shift-JIS spaces to manually align text rather than this particular adaptative indenting implementation.

As for [0xB4], it's like an RTS figuratively speaking. This particular bit of text appears when you choose one of two options in a question, and then when [0xB4] is reached, it goes back to the main body of text for one last line (not in the dump here) for both options. However I don't get why there's  。」[LineEnd] after considering it's never read (the period doesn't appear at all).

Your text dump is quite readable, compared to other games where the LineBreak doesn't imply waiting for the user to press a button.
You're correct that the "[Spacing]" code aligns the next line, with the speaker's name.

Your suggestion probably won't work because of the way the game is coded.  The game is coded to display 2 lines of text at a time. This limitation can be overcome with ASM hacking; but breaking the limitation will mess up control codes. It's still possible to get 3 lines, but to make it work with no problems will take time.

Agreed that you won't need the [Spacing] tag for insertion, so you don't need to show it for the dump. Just show the spaces.

You can also get rid of you [LineEnd] control codes if you do auto formatting (either in-game or externally). Such controls would be placed automatically for insertion and only need to be line breaks in the dump. Or, as mentioned, you can omit the line breaks entirely if the script if it's in a spreadsheet format or something.

You can also probably shorten your color controls to just and so they won't be so overbearing to the text if they are used alot.

I agree that using spaces instead of the "[Spacing]" control code will work better. I'll also probably get rid of the "[LineEnd]" like you suggested. Shortening the color codes to "[ Red ]" and "[ Blue ]" is also a good idea.

Script Help and Language Discussion / Scripts with a lot of control codes.
« on: November 12, 2016, 06:43:33 pm »
I'm making a lot of progress towards dumping Goemon 3's script. However, one of the problems with Goemon 3 is that it has a lot of control codes.

A script with a lot of control codes might be difficult to work with for a translator.

Here's an example of some text dumped from Goemon 3:
おみつ  「[RedText]ものしりじいさん[BlueText]が [RedText]ゴエモン・いんぱくと[BlueText]の[LineEnd]
[Spacing]ざんがいを りようして こしらえた[LineEnd]
[Spacing][RedText]はぐれまち[BlueText] と [RedText]にんじゃやしき[BlueText] を いきき[LineEnd]
[Spacing]できる きかいの ことよ!![LineEnd]
[0xB4] 。」[LineEnd]

So what do you guys think would be the best way to deal with a script with a lot of control codes?

Personal Projects / Re: Goemon 3 (SNES) translation project
« on: November 12, 2016, 03:32:29 pm »
Hmm. Avicalendriya did say on another thread here that he'd given all of his Goemon series work, particularly the graphical hacks on Ganbare Goemon 2, over to a romhacker known as 'ddstranslation'. But that person is busy with his own project(s). So maybe when Rai here would complete his conversion tools for handling the text and tiles he could contact ddstrans to offer his tools and instructions for opening up the ROM file of GG 2? Good idea, no?
Edit: Yes, both of you visited that thread, too. It shouldn't be a problem then. It just depends on one romhacker contacting another peer once all is said and done!
If I work on Goemon 2, I'll probably start from scratch. It's easier that way.

I've made a lot of progress on the script dumper for Goemon 3. I'll probably start looking for a translator pretty soon.

Personal Projects / Re: Goemon 3 (SNES) translation project
« on: October 31, 2016, 06:58:55 pm »
Considering the unfortunate history of SNES Goemon projects, how about going a different route with this one?

Like, creating a wiki or a spreadsheet on google docs where the japanese script is dumped and the community can freely help translate and refine the english version?

It could could even begin with a machine translated version to get things going.

I'm wondering if there could be also a github project where people could even insert the script in the right rom addresses or something.

Hey. It's pretty nice to see that you're working on VWF coding. That's still a worthy goal and your work does look good and I appreciate your enduring enthusiasm in this series. Hang in for the long run! :happy:
By the way, have you contacted Avicalendriya regarding his work on a translation for the Goemon series on the SFC? I am not sure if he did anything for the last two SFC Goemon games before retiring for good from the scene. But might be worth an ask.
Thanks for the comment. I haven't contacted Avicalendriya yet.

Congrats on the project. How did you solve the main issues that plagued this game that prevented translation at first?
I got around the main issues by programming my own compression tools. The compression is mainly what has prevented this game from being translated.

The hardest part about 'translating' a game is not the actual script translation. It's the hacking that bring projects to their knees.

The problem with the Goemon games is not that no one translates the scripts, or that they get lost. The problem is the hacking, the compression, the inserting, and all the tedious boring time consuming tasks you have to do to make it work.

Now this guy Rai apparently finally figured out the compression, so the impossible task is now possible, but still time consuming. The good thing is that once he releases his tool, any other hacker can use it to translate the other games.

It's true that the actual hacking is the hardest part of translating a game. Without the proper tools; a game like this would be impossible to translate.

The actual compression the game uses is not that complicated. It uses a combination of LZ77 and RLE. The compression also has what I would call "zero byte pairs". Basically a compressed string like "0x50" can be decompressed to "0x00,0x50".

Recompressing LZ77 pairs is kind of difficult. The LZ77 pair needs to decompress to correct length and offset. So I had to add a routine for calculating the right "length, offset" pair to my compressor.

Personal Projects / Re: Goemon 3 (SNES) translation project
« on: October 28, 2016, 01:16:46 pm »
Fantastic to hear. This one is the most text heavy of the super famicom entries as I recall, but cracking the text format has been the main snag for any of them.

Supposedly Goemon 4 uses similar compression, are you thinking of looking into it afterwards? Or maybe at least releasing your source code so someone else could take a crack at it.
It''s true that the text in Goemon 3 is compressed. Both the graphics and text are compressed with an LZ variant.

I've looked at the other SNES Goemon games and they use almost identical compression schemes.

Personal Projects / Goemon 3 (SNES) translation project
« on: October 27, 2016, 10:31:23 pm »
4 years ago, I started working on my Goemon 3 translation project. Recently, I've made a lot of progress on hacking Goemon 3 and perfecting the compression tools. In this thread, you can check the progress of Goemon 3 translation project.

Most of the work done so far has been hacking and tool related. I've programmed a decompressor and a compressor for the graphics. Hacking wise, lately I've been working on perfecting my VWF code. Once I complete the text tools, I'll begin looking for a translator.

Hacking progress:
VWF: 90%

Tool progress:
Graphics Decompressor:90%
Graphics Recompressor:90%
Text Dumper/Decompressor:75%
Text Inserter/Compressor:0%


Newcomer's Board / Re: Ps2/PS1 ROM Hacking
« on: October 21, 2016, 02:41:39 pm »
Ok , i tried to change files but

1/-they don't have "all" the same files version got some extra files
2/-i tried to change some using Game Graphic Studio some works ...some not

any ideas?
If you can't change the files; most likely the new files are a different size than the originals.

Newcomer's Board / Re: Ps2/PS1 ROM Hacking
« on: October 17, 2016, 02:12:06 pm »
Thanks for the replies :) but what abt the 4th question?

how can i replace the files ? is there any chance?
Download Game Graphic Studio, then open your ISO. After that, just right click the file and select "Import a file over this one...". Then select your new file  press "Open" and then your ISO will be patched with the new file.

Newcomer's Board / Re: Ps2/PS1 ROM Hacking
« on: October 16, 2016, 01:24:52 am »
To hack CD based games, you need a program that can extract files from the ISO.

You also need a program that can reinsert modified files.

"Game Graphic Studio" can extract files and reinsert modified files. It's what I use to hack PS2 games.

What's great about "Game Graphic Studio" is that you can reinsert files, without having to rebuild the ISO.

For PS2 ASM hacking, you need a good stable debugger. I would recommend "pcsx2dis" or the latest PCSX2 Orphis build for debugging PS2 games.

Both PS1 and PS2 both use MIPS processors.  If you search on google, you should be able to find some information on the basic MIPS opcodes.

If you want to insert new code; I would recommend "ARMIPS". Since PS1 and PS2 both use MIPS, "ARMIPS" can also be used on PS2 games. However, you won't be able to use the newer PS2 specific opcodes.

You can find Game Graphic Studio in the "Utilities" section.

You can get pcsx2dis here:

ARMIPs should also be in the "Utilities" section.

Newcomer's Board / Re: Goemon 2, 3, and 4 English translation
« on: August 25, 2016, 02:37:14 pm »
I'm currently adding the LZSS text decompression code to my script dumper. The text in Goemon 3 is compressed and needs to be decompressed before being dumped.

After the decompression code is added to the dumper; it will be finished for the most part.

After that I'll start looking for a translator.

Newcomer's Board / Re: Goemon 2, 3, and 4 English translation
« on: August 24, 2016, 11:10:15 pm »
Is it ok if the discussion from the other thread continues in here? I don't know why the other one was locked. The project isn't "dead" since other people are working on it now (I think).
For now, this should be a good place discuss the Goemon translations. When I make more progress on Goemon 3 I'll make my own thread.

Right now, my graphics decompressor for Goemon 3 is pretty much done. I've made a lot of progress on the custom script dumper too.

My script dumper gets around the scattered pointers; by reading pointers from a pointer location list.

Once the script dumper is perfected; I'll be able to dump the games script and I can find a translator.

The thing that will take the longest is finding the locations of the scattered pointers.

Programming / Re: PlayStation development articles, feedback appreciated
« on: August 23, 2016, 07:07:17 pm »
Great work, Gemini; it's good to see more PSX documentation.

Could you possibly make a list of the PS1's opcodes?

Having a go to list of MIPS instructions would be very helpful.

Pages: [1] 2 3 4 5