Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

Dragon Quest I - II - III string *.bin file

Featured Replies

  • Author
  • Localization

cyberdog, posted Sat Nov 28, 2020 6:39 am (60690)


Hi, i want to translate Dragon Quest to another language, but i am stuck with it.
I am unpacked games with QuickBMS and get game resources, but i can't decompile text *.bin file.
Text bin file looks like a normal text file, but when i edit this, and run games - it's crashed
How can i safely edit this bin? I so trying comtype_scan2 for extract text, but it's not helpfully
  • Author
  • Localization

cyberdog, posted Sat Nov 28, 2020 11:53 am (60703)


I'm continue researching this files.
Strings in file have next structure:
{ count variation of one event (like string array) } {weight of next block text (in byte)} {text block}
{weight of next block text (in byte)} {text block}
  • Author
  • Localization

cyberdog, posted Sat Nov 28, 2020 8:26 pm (60728)


Zmkiy wrote:
Use reimport3 for import

Wow, it's awesome.
Can you see please another file like a stringDataEn.bin?
it's contain's some artefacts after import at line 324 for dq2 bin

p.s. thank you very much ^^
  • Author
  • Localization

cyberdog, posted Sat Nov 28, 2020 8:53 pm (60729)


If you want to joke, here is my java import tool (not completed)
I spend 9 hours for research file's at this topic, but i'am very newbie in it.
I newbie in reverse engineering, because i working in enterprise development, but i like this expirience :)
  • Author
  • Localization

cyberdog, posted Sun Nov 29, 2020 10:26 am (60749)


Oops, i update stringDataEn.bin for first part of game.
  • Author
  • Localization

cyberdog, posted Sun Nov 29, 2020 12:15 pm (60752)


I found why script for stringMap don't extract stringData.
Because in 5430h have text array:
-> 00 00 2E 00 20 what means
-> 00 00 2E (count elements in array) - 46 (dec)
-> 00 20 (size of first element) - 32 (dec)
--> skipping 32 bytes
-> 00 00 16 (size of second element) - 22 (dec)
--> skipping 22 bytes
-> etc.. to 46 element's end :)

But what interesting too:
at start of bin file contains some arrays like that:
-> 00 00 07 00 4C
-> 00 00 07 (7 elements)
-> 00 4C (76 byte next string)

and it's working good, hmmm...
  • Author
  • Localization

Zmkiy, posted Sun Nov 29, 2020 1:26 pm (60755)


Here's how it actually works
Code:
2 byte COUNT
for k = 0    2 byte COUNT1
   j =0
   while (j       2 byte COUNT2
      for i = 0          2 byte STRING_SIZE
         STRING
         1 byte NULL
      end
      j = COUNT2
   end
end

But for "StringData", it has a variant structure :?

DQ2DataString.bms

DQ1DataString.bms

  • Author
  • Localization

cyberdog, posted Fri Dec 04, 2020 5:50 pm (60901)


Zmkiy wrote:
Here's how it actually works
Code:
2 byte COUNT
for k = 0    2 byte COUNT1
   j =0
   while (j       2 byte COUNT2
      for i = 0          2 byte STRING_SIZE
         STRING
         1 byte NULL
      end
      j = COUNT2
   end
end

But for "StringData", it has a variant structure :?


Thank you very much, it's very helpfull
  • Author
  • Localization

heraldopkg, posted Sun Jan 02, 2022 2:36 am (68603)


And the dragon quest III strings bms, any news?
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.