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.

PaRappa the Rapper 2 *.INT

Featured Replies

  • Author
  • Localization

Miles2345, posted Thu Oct 23, 2014 9:31 pm (1153)


I've been confused on how this game stores its data for a few years. I figured it's in these INT files, but I'm not sure.
A couple samples: http://puu.sh/cnRBS.7z
  • Author
  • Localization

Miles2345, posted Fri Oct 24, 2014 7:21 pm (1175)


Thanks!
I noticed some of the files it extracts are in .tm0 format, as well as tm1 and tm2, which all seem to be TIM2 textures. The tm1 and tm2 files can convert fine, but are the tm0's compressed or something? None of them seem to look okay and the files themselves look odd in a hex editor.
  • Author
  • Localization

aluigi, posted Fri Oct 24, 2014 8:26 pm (1179)


tm0 are not compressed, probably they just use a slightly different format.
  • Author
  • Localization

Miles2345, posted Tue Oct 28, 2014 9:06 pm (1333)


I'm trying to figure out where the archives for the cutscenes are and I THINK they're in this .XTR format which seems to be stored a different way from the INT files. It may just be audio data, but could you check it?
https://drive.google.com/file/d/0B_8j1D ... sp=sharing
  • Author
  • Localization

aluigi, posted Tue Oct 28, 2014 9:56 pm (1339)


The format is very similar to INT but there is something I don't understand.
  • Author
  • Localization

Miles2345, posted Tue Oct 28, 2014 10:02 pm (1341)


What would that be?
  • Author
  • Localization

aluigi, posted Wed Oct 29, 2014 8:21 am (1347)


There are refrerences only for the first 3 compressed embedded archives that can be extracted but from offset 0x1f0000 I see only raw data without information.

The following is the script to extract the files with information in the first part of the archive:
Code:
comtype lzss "12 4 2 2 0"
get ALIGN long
get DUMMY long
get DUMMY long
get DUMMY short
get DUMMY short
for
    get DUMMY long
    if DUMMY == 0
        break
    endif
    get OFFSET long
    get SIZE long
    get ZERO long

    savepos TMP
    goto OFFSET
    get SIZE long
    get ZSIZE long
    savepos OFFSET
    goto TMP

    clog MEMORY_FILE OFFSET ZSIZE SIZE
    get DUMMY long MEMORY_FILE
    get DUMMY long MEMORY_FILE
    get DUMMY long MEMORY_FILE
    get INFO_OFF long MEMORY_FILE
    get INFO_SIZE long MEMORY_FILE
    get DATA_OFF long MEMORY_FILE
    get DATA_SIZE long MEMORY_FILE
    get FILES long MEMORY_FILE
    goto INFO_OFF MEMORY_FILE

    do
            get OFFSET long MEMORY_FILE
            get ZERO long MEMORY_FILE
            get DUMMY long MEMORY_FILE
            get DUMMY long MEMORY_FILE
    while OFFSET == 0
    for i = 1 <= FILES
        if i == FILES
            get NEXT_OFFSET asize MEMORY_FILE
        else
            get NEXT_OFFSET long MEMORY_FILE
            get NEXT_ZERO long MEMORY_FILE
            get NEXT_DUMMY long MEMORY_FILE
            get NEXT_DUMMY long MEMORY_FILE
        endif
        xmath SIZE "NEXT_OFFSET - OFFSET"
        log "" OFFSET SIZE MEMORY_FILE
        math OFFSET = NEXT_OFFSET
    next i
next
  • Author
  • Localization

oddMLan, posted Mon Jan 19, 2015 1:14 am (2740)


The RAW data in the XTR archives is uncompressed, interleaved (at 0x200) stereo audio. I used AlphaTwentyThree's file deinterleaver quickbms script with these settings:

Code:
set HEADER 0x0
set PRESERVE 0
set ADJUST 0
set BLOCKSIZE 0x800
set INTSIZE 0x200
set LAYERS 4
set SKIP 0


I get 4 files.
1st file: some non-audio data left audio channel
2nd file: some non-audio data right audio channel
3rd file: some non-audio data other non-audio data that was previously interleaved with the audio (?!)
4th file: some non-audio data other non-audio data that was previously interleaved with the audio (?!)

The first and second file can be played with Audacity where the audio starts, and you get perfect audio. In the non-audio data sections you can hear gibberish.

You can also set LAYERS 2 instead, and you'll get 2 files, one with data interleaved stereo audio (which can be played with an audio player that lets you set the interleave, like MFAudio); and the other file is just data without audio.

EDIT: I tried to use your above script with the deinterleaved files, but the extraction always fails trying to read beyond a certain offset. Figured. But maybe that's because the data files aren't interleaved by themselves, is just the audio that is interleaved with the colliding data files? Is there a way to "substract" the interleaved audio leaving just the untouched, non-interleaved data? This seems to be a though one to extract :S
  • Author
  • Localization

aluigi, posted Mon Jan 19, 2015 1:38 pm (2749)


You can also open a thread with the same content of your post in the Audio section, just in case AlphaTwentyThree doesn't look at this section.
  • Author
  • Localization

oddMLan, posted Sat Mar 14, 2015 5:11 am (3866)


aluigi wrote:
http://aluigi.org/papers/bms/others/parappa_rapper.bms

Interesting file format.


Is it possible to modify the script to be able to reimport the files? I tried to reimport some modified files via the -r flag in QuickBMS but it says the script is invalid for reimporting because it uses MEMORY_FILEs
  • Author
  • Localization

aluigi, posted Sat Mar 14, 2015 9:11 am (3869)


Unfortunately not.
  • Author
  • Localization

oddMLan, posted Sat Mar 12, 2016 9:22 am (11919)


aluigi wrote:
http://aluigi.org/papers/bms/others/parappa_rapper.bms

Interesting file format.


I would like a modification of this script so it dumps the files as they are arranged/ordered/sorted in the INT archive.
In other words, essentially the same but without the renaming part.

I've been able to succesfully repack parts of the INT file thru executing this in the Command Prompt
Code:
copy /b *.* combined.bin
in a subfolder (0,1,2... n) of the INT file and then compressed by using
Code:
comtype lzss_compress "12 4 2 2 0"
in QuickBMS, but only works if the order of the files in compressed subfolder matches with the order of the filenames in the INT file. Since Windows has its own way to sort the files by their filename, this only works when repacking the imgXXXXX.tm0 files (in subfolder 0 of most INT files), but not when repacking other subfolders.


EDIT: Appending the number of the file before the filename would work too. Ex. 000000_st01gm0.cod, 000001_noodle_pattern01.tm2, 000002.Nmb_Nm_SPXt.spm, etc.
Preserving the original file sorting is very important here.
  • Author
  • Localization

aluigi, posted Sat Mar 12, 2016 1:40 pm (11926)


string FNAME p= "%d/%d_%s" FOLDER i NAME

while if you want the full work made by the script, replace the "for" cycle with this one:
Code:
log MEMORY_FILE2 0 0
append
        for i = 0 < FILES
            getarray OFFSET 0 i
            getarray SIZE 2 i
            getarray NAME 3 i
            log MEMORY_FILE2 OFFSET SIZE MEMORY_FILE
        next i
append
string FNAME p= "%d." FOLDER
get SIZE asize MEMORY_FILE2
log FNAME 0 SIZE MEMORY_FILE2
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.