Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Moderators: pcwzrd13, deluxux, VasiliyRS

User avatar
sharksnack
shadow
Posts: 10

Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#1 » Mon Apr 18, 2022 10:45 pm

Hello, I'd like to create an English patch for this game, and was wondering if there would be others interested in working on the game with me in these forums. It's widely considered to be among the best Mystery Dungeon / traditional roguelike games out there in JP communities, but it was never released outside of Japan.

For context, I'm fluent in Japanese and have completed English translations for Shiren 2 (Nintendo 64) and Shrien 4 Plus (PSP - currently unreleased), and have helped in other projects like PSO2es - so the language side of the project would be completely covered.

That said, my hacking skills are almost non-existent at the moment, and this is about all I accomplished through hex editing when I first gave it a try years ago:

Image

More recently, I tried following the JPN Font Size Hacking Tutorial by VincentNL, and found a couple of suspicious values at addresses 2C30388C and 2C303890.

Image

I then tried editing values in memory near those values, but haven't had any luck getting the type of results shown in the tutorial. (Though I might've found a value that sets the number of lines in a dialogue window, around 2C30385C)

Image

So yeah, I'm willing to keep trying with the hacking side if no one else is interested, but I'm hoping to find someone who wouldn't mind taking on that side of the project, which would let me focus on translation.

A friend who goes by Ozidual dumped the story text (DATASCR.bin), but we don't have a way to insert it back into the game yet. If you're curious, here it is: https://docs.google.com/spreadsheets/d/1WLEhDCMk1COW_ascStugnvMAjWR8Wd8ysyd01Ikur_Y/edit?usp=sharing

As you can see, there's a lot of text in this roguelike RPG. There's also a second file (SSCR.bin) with even more text.

Lastly, if anyone wants to take a look using the redump version, I think it has to be converted to General GDI format using this tool beforehand (Though I may be mistaken, as my notes are a few years old): https://github.com/SONIC3D/gdi-utils-gui

Thanks for reading!

User avatar
VincentNL
core
Posts: 125
Contact:

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#2 » Tue Apr 19, 2022 8:14 am

Used lunch-time break to give this a look :D

1. Font size hacking would not be useful in this case, since game natively support VFW:
The game parse each letter first byte, then according to the value sets encoding to: unicode ( usually single byte - halfwidth ) or shift-JIS (2-bytes - wide).
If you only use unicode it will double the available space!

Image


2. Your priority is to track down text pointers in those huge binary files, I don't know how your friend extracted text, but if he did parse pointers, you just need to write them back according to your new lenght.


3. If you are out of space, this is a good chance to use control codes of items / character names to store common words. Creating multi-tile encoding will let you easily save 30%-60% in text size.
If you like my work or just want to show some love:
https://ko-fi.com/vincentnl
https://www.patreon.com/VincentNL

User avatar
ateam
Heroine Console
Posts: 478

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#3 » Mon May 02, 2022 4:57 pm

VincentNL wrote:Used lunch-time break to give this a look :D

1. Font size hacking would not be useful in this case, since game natively support VFW:
The game parse each letter first byte, then according to the value sets encoding to: unicode ( usually single byte - halfwidth ) or shift-JIS (2-bytes - wide).
If you only use unicode it will double the available space!

Image


2. Your priority is to track down text pointers in those huge binary files, I don't know how your friend extracted text, but if he did parse pointers, you just need to write them back according to your new lenght.


3. If you are out of space, this is a good chance to use control codes of items / character names to store common words. Creating multi-tile encoding will let you easily save 30%-60% in text size.


Ah, yes! Native support for 1-byte ASCII (or in this case, Unicode) -- what a dream!
Find me on...

DreamcastForever.com
GitHub
Reddit
SegaXtreme
Twitter
YouTube
• Discord: derek.ateam

User avatar
VincentNL
core
Posts: 125
Contact:

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#4 » Tue May 03, 2022 1:31 am

Were you able to get pointers data from the friend who extracted text for you @sharksnack ?
If you like my work or just want to show some love:
https://ko-fi.com/vincentnl
https://www.patreon.com/VincentNL

User avatar
sharksnack
shadow
Posts: 10

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#5 » Sun May 08, 2022 7:26 pm

Sorry for the slow response, I was helping a friend with something IRL the past 10 days or so and wasn't at my PC.

Ozidual (friend who extracted the script text) is busy with a few other translation hacks for N64 right now, so I don't think he'll be able to help with the pointers anytime soon, unfortunately. But I'd love to learn how to do it too, so I'll likely look for resources or documents with tips this week. (That said, if you know of any I can use as a reference off hand to help point me in the right direction, it'd be appreciated for sure)

User avatar
sharksnack
shadow
Posts: 10

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#6 » Tue May 10, 2022 6:10 am

I found a page for Shenmu 1ST_READ.BIN text pointer modification which lists these values to add to a text's start address + change it to LE to locate the pointer:

What's Shenmue, Shenmue I, Shenmue Passport: 0C010000
Shenmue II DC: 8C010000

But it doesn't appear to apply to this game when I try it:

Text isn't in "1NOSDC.BIN" (guessing it's the equivalent to "1ST_READ.BIN"), so looking in "DATASCR.BIN" as an example.

Text:
銭ゴロー「うす。おいどん、風来銀行出張員だど。

Start: 00001242
End: 00001272 (00001274 if 00 01 is a control code for end?)

Add 0C010000 -> 0C011242
0C011242 to LE -> 4212010C (find hex string = no results)

Add 8C010000 -> 8C011242
8C011242 to LE -> 4212018C (find hex string = no results)

Still searching around, but figured I'd post those notes in case anyone might have an idea.

User avatar
VincentNL
core
Posts: 125
Contact:

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#7 » Wed May 11, 2022 1:47 am

Text pointers are usually stored into a increasing list of values, before text chunks.

Their format and location isn't fixed, some pointers use ram base address(0x8c010000/0x0c010000), others relative address i.e. 0x1242 ) or even double pointers! ( text entry + character count pointer)

Imho you should find tables in that file and try swapping its values ( CE + Demul is the best, you can make a savestate to speed up the process).

When the scene or text is altered, well you know you found it!
If you like my work or just want to show some love:
https://ko-fi.com/vincentnl
https://www.patreon.com/VincentNL

User avatar
sharksnack
shadow
Posts: 10

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#8 » Wed May 11, 2022 2:08 pm

Well, I tried looking at things in a hex editor and edited values in memory using CE + Demul and save states for about 4 hours, and the only thing I've managed to do is make the game crash. I'm really not sure what I'm even supposed to be looking for.

Like there's this block of non-text data near the top of the file:

Image

And there's non-text data in-between text entries:

Image

I'm guessing it's in there somewhere, but I'm not seeing a pattern in a way that I can edit values?

User avatar
VincentNL
core
Posts: 125
Contact:

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#9 » Wed May 11, 2022 3:42 pm

Crashes are a good sign, actually. The value you have altered is most likely a data pointer, so take note of which value is the culprit!

In case you are using discord, feel free to msg me here, it's faster than forum posts :)
If you like my work or just want to show some love:
https://ko-fi.com/vincentnl
https://www.patreon.com/VincentNL

User avatar
sharksnack
shadow
Posts: 10

Re: Mystery Dungeon: Shiren Gaiden Asuka Kenzan - English Translation

Post#10 » Sun Jun 19, 2022 5:45 pm

I just realized I forgot to update this thread (I'm way more active on Discord), but good news!
I've been making decent progress thanks to VincentNL's help.

Progress in terms of file count:

Extraction + Insertion: 4/33
Translated: 3/33

Completed files cover:
- Item names
- Item descriptions
- Character names
- Character descriptions
- Some gameplay scrolling messages

So, still a long way to go, but the game is looking more and more playable as time goes on.
If anyone is interested in helping with the text extraction/insertion, please let me know.

Previews (old screenshots):

English monster names:
Image

Items:
Image

Narrower width:
Image

  • Similar Topics
    Replies
    Views
    Last post

Return to “Modifications”

Who is online

Users browsing this forum: Google [Bot]