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.

Harry Potter and the Order of the Phoenix ".rpk"

Featured Replies

  • Author
  • Localization

Puterboy1, posted Thu Mar 21, 2019 5:58 pm (45932)


Who can take a look at these?
  • Author
  • Localization

GHFear, posted Fri Mar 22, 2019 7:52 am (45942)


Put the rpk files in the folder with the "EXTRACT, quickbms and scripts files" and click EXTRACT and it will auto extract all rpk files.
:)

It might end with an error, but you get all the files.

RPK Unpacker.rar

  • Author
  • Localization

Puterboy1, posted Fri Mar 22, 2019 7:10 pm (45966)


GHFear wrote:
Put the rpk files in the folder with the "EXTRACT, quickbms and scripts files" and click EXTRACT and it will auto extract all rpk files.
:)

It might end with an error, but you get all the files.


Good, now if I can find a way of extracting the .sdt files from this game with proper file names.
  • Author
  • Localization

AlphaTwentyThree, posted Mon Feb 07, 2022 6:34 am (69713)


I just wrote a better-working extractor for those files. Updates:
- decompresses rpk into memory and extracts it in one step
- correct names
- no error termination

Code:
# Harry Potter games (2008 and newer)
# *.rpk/*.str.* extractor

# (c) 2022-02-07 by AlphaTwentyThree of Zenhax
# script for QuickBMS http://quickbms.aluigi.org

getDstring TEST 4
if TEST == "MRTS" || TEST == "STRM"
   get SIZE asize
   putVarChr MEMORY_FILE SIZE 0
   log MEMORY_FILE 0 0
   append
   log MEMORY_FILE 0 SIZE
   append
else
   comtype dk2
   endian big
   get ZSIZE asize
   goto 2
   get SIZE long
   putVarChr MEMORY_FILE SIZE 0
   log MEMORY_FILE 0 0
   append
   clog MEMORY_FILE 0 ZSIZE SIZE
   append
   endian little
endif
goto 0 MEMORY_FILE
getDstring TEST 4 MEMORY_FILE
get FSIZE long MEMORY_FILE
getDstring TEST 4 MEMORY_FILE
if TEST == "AGRP"
   endian big
endif
goto 8 MEMORY_FILE
callfunction getFields 1

startfunction getFields
   getDstring IDENT 4 MEMORY_FILE # PRGA
   if IDENT != "PRGA" && IDENT != "AGRP"
      cleanexit
   endif
   get PRGA_SIZE long MEMORY_FILE
   getDstring DUMMY 4 MEMORY_FILE # RDHG
   get DUMMY long MEMORY_FILE # 14
   get DUMMY long MEMORY_FILE # 10
   get NAMEPOS long MEMORY_FILE
   get DUMMY long MEMORY_FILE # 10
   xmath FILES "(PRGA_SIZE - 0x1c) / 0x28"
   for i = 0 < FILES
      getDstring DUMMY 0x18 MEMORY_FILE
      get OFFSET long MEMORY_FILE
      get SIZE long MEMORY_FILE
      get NAMEPOS long MEMORY_FILE
      get ZERO long MEMORY_FILE
      savepos MYOFF MEMORY_FILE
      goto NAMEPOS MEMORY_FILE
      get NAME string MEMORY_FILE
      goto MYOFF MEMORY_FILE
      log NAME OFFSET SIZE MEMORY_FILE
   next i
   callfunction getFields 1
endfunction
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.