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.

Okage: Shadow King .XPF tool (Release)

Featured Replies

  • Author
  • Localization

Inuk Syooperstar, posted Wed Sep 09, 2020 12:19 pm (58597)


THIS THREAD IS OLD, TOOL HAS BEEN MOVED HERE: viewtopic.php?f=17&t=14162

I've fully reverse engineered the decompression function used for Okage: Shadow King, and I've ported it to both C and Python.
The compression is used to compress all files in the game's XPF archives, which is otherwise very simple to deal with. Someone posted about it a while back but it didn't get fully solved because of the compression present.

My C is weak to the point of being embarrassing (hence not attaching a full tool), but the Python script is fully capable of extracting the .XPF archives together with the decompressor function.
I've attached both; the C function has the advantage of being short and easier to read, and the Python script has the advantage of being a fully usable tool for an end user.

The Python script also has a working XPF packer with a barebones compressed stream writer (the equivalent of a zip's "store", it just increases the filesize) - I'm interested in developing a real compressor function, but that can wait.

I'm not sure what to do now. Can the decompresser function get added to QuickBMS' repertoire?
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.