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.

Castlevania - extraction, conversion and modding - GENERAL

Featured Replies

  • Author
  • Localization

Delacroix, posted Mon May 02, 2016 2:34 pm (13043)


Greetings. I'm starting this thread to keep all my inquiries related to the 3D Castlevania titles in one place as the games aren't too numerous and many are in one way or another related - formatwise or enginewise. The objective of my research is:

- to obtain models (with animations) importable to engines such as Unreal and Unity.
- to gain access to text and font files for translation purposes.

Like I said, this thread will concern only a couple titles:

- Castlevania 64 for the N64
- Castlevania: Legacy of Darkness for the N64
- Castlevania: Lament of Innocence for the PS2
- Castlevania: Curse of Darkness for the PS2
- Castlevania: Dracula X Chronicles for the PSP
- Castlevania: Judgment for the N-Wii.

If by any chance any research in the regard of these games was already made, I'll be grateful if results of that are linked when a given question arises.

For now, my first inquiry.

1. Castlevania: Lament of Innocence and Curse of Darkness
- Can I please request that a method of extraction for the following files be provided?

FileData.bin (Lament)
ELF file (Lament)
FileData.bin (Curse)
ELF file (Curse)
sd.bin (Curse)
sd_ntsc.bin (Curse)

Thank you very much in advance for any assistance you offer.
  • Author
  • Localization

aluigi, posted Mon May 02, 2016 6:39 pm (13054)


sd*.bin is ok but filedata.bin has no references for the archived files, for example there are some Svag files from offset 0x2bb52000 and no references to their offsets or size (even divided by 0x800, nothing).

Script:
Code:
get DUMMY long  # 1
if DUMMY == 0x544f4f42  # "BOOT2" for FILEDATA.BIN

    math INFO_OFF = 0x800
    for
print "INFO_OFF %INFO_OFF|X%"
        goto INFO_OFF
        get TYPE long
        if TYPE == 0x82734927   # idstring "\x27\x49\x73\x82"
            get ZERO long
            get INFO_SIZE long
            get ZERO long
            get FILES long
            get DUMMY long
            get ZERO long
            get ZERO long
            savepos BASE_OFF
            for i = 0 < FILES
                get SIZE long
                get DUMMY1 long
                get OFFSET long
                get DUMMY2 long
                math OFFSET BASE_OFF
                log "" OFFSET SIZE
            next i
            math INFO_OFF INFO_SIZE
        else
            findloc INFO_OFF binary "\x27\x49\x73\x82"           
        endif
    next

else                    # SD*.BIN

    get FILES long
    get ZERO long
    get ZERO long   # 1
    for i = 0 < FILES
        get OFFSET long
        get SIZE long
        math OFFSET * 0x800
        log "" OFFSET SIZE
    next i

endif

*edit* script updated
  • Author
  • Localization

Delacroix, posted Tue May 03, 2016 9:32 am (13069)


Added the ELF files which serve as PS2 executables in the first post. Is it possible they contain a file table of sorts?
  • Author
  • Localization

aluigi, posted Tue May 03, 2016 1:29 pm (13074)


No references in the elf, I guess there is an index file probably that contains the offsets and sizes.

I continued to check the data in it and I can confirm that filedata.bin is just a raw container (no offset/size), in fact I tried to parse the "\x27\x49\x73\x82" blocks of data and I can extract the 80% of the sub-files (because "\x27\x49\x73\x82" are files!).

Work-in-progress script of the previous post updated.
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.