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.

Call of Duty: Black Ops III (.xpak) pls

Featured Replies

  • Author
  • Localization

RageX, posted Thu Nov 05, 2015 9:43 pm (9346)


Hi, I tried to open these xpak files using hex-editor, at some positions I could see offsets of files inside like this :-

Code:
?oaEY,..?.......width: 256.height: 128.levels: 7.manual: 0.format: BC7.semantic: normalMap.initial: none.name: i_c_zom_zod_zombie_fem_head_2_n.type: image.initial: none.offset0: 0.size0: 43728anE)P...?.......width: 64.height: 128.levels: 7.manual: 0.format: BC4.semantic: glossMap.initial: none.name: i_c_nrc_supp_kneepads_g.type: image.initial: none.offset0: 0.size0: 5480?v?t....R.


Is there any way someone could write a dumper/extractor which will be able to unpack xpak files with offsets ?

Here are the sample files :-

Code:
http://www.solidfiles.com/d/1281623965/
  • Author
  • Localization

aluigi, posted Fri Nov 06, 2015 8:13 am (9355)


The KAPI format used by the xpak files has been posted on this forum some days ago.
I remember the "KAPI" magic but there was no solution.
I have just made a script:
http://aluigi.org/bms/cod_kapi.bms

For core_common.fd I suggest you to use offzip -a.
  • Author
  • Localization

aluigi, posted Sat Nov 07, 2015 3:14 pm (9403)


Script 0.2.1
  • Author
  • Localization

RageX, posted Sat Nov 07, 2015 5:01 pm (9408)


aluigi wrote:
Script 0.2.1


Thanks aluigi for this ! Will try :D
  • Author
  • Localization

aluigi, posted Sat Nov 07, 2015 8:18 pm (9418)


Script 0.3.
There will be no other udpates to this script because the format can't be easily parsed.
The sections contain just files that can be of various types but these types can't be identified.
Additionally the number of files reported doesn't seem to match.
The script tries to guess everything and this version grants to dump all the data that it can identify.

One note, now it uses Slog for dumping all those small thousands of files of 1kb or less.
It makes everything faster, you will only notice the annoying output on the console :) (will limit it in the next quickbms).
  • Author
  • Localization

RageX, posted Sat Nov 07, 2015 10:08 pm (9421)


aluigi wrote:
Script 0.3.
There will be no other udpates to this script because the format can't be easily parsed.
The sections contain just files that can be of various types but these types can't be identified.
Additionally the number of files reported doesn't seem to match.
The script tries to guess everything and this version grants to dump all the data that it can identify.

One note, now it uses Slog for dumping all those small thousands of files of 1kb or less.
It makes everything faster, you will only notice the annoying output on the console :) (will limit it in the next quickbms).


Thanks a lot aluigi, you are great :)
  • Author
  • Localization

spider91, posted Sat Nov 07, 2015 10:56 pm (9422)


Quote:
for example 0x03007672 (unknown compression/obfuscation)


0x03 it's a flag for lz4 and 0x007672 it's a compressed chunk size
  • Author
  • Localization

aluigi, posted Sat Nov 07, 2015 11:04 pm (9423)


It's strange that I didn't get the result from the scanner... mah.
Anyway 0.3.1 is out.
Thanks spider91.
  • Author
  • Localization

aluigi, posted Sat Nov 07, 2015 11:16 pm (9424)


0.3.1b to break the extraction in case of unknown flags, just in case there is a flags 2 or others.
  • Author
  • Localization

RageX, posted Sun Nov 08, 2015 5:43 am (9428)


aluigi wrote:
0.3.1b to break the extraction in case of unknown flags, just in case there is a flags 2 or others.


Script now seems a lot more proper, thanks :)
  • Author
  • Localization

v2excoc, posted Wed Nov 11, 2015 1:41 am (9593)


aluigi wrote:

One note, now it uses Slog for dumping all those small thousands of files of 1kb or less.


you only dump fragments. small thousands of files need to be reassembled, that is a real texture file.

everything is start in *.ff format, not xpak. xpak just a extend of huge inner game filedisk-like-system, imagine NTFS chunk system.

if everyone want to dump texture, go to *.ff
  • Author
  • Localization

aluigi, posted Wed Nov 11, 2015 11:34 am (9602)


Do you mean that they should be just concatenated one by one in one unique file?
  • Author
  • Localization

myasa, posted Tue Nov 17, 2015 1:06 pm (9834)


:geek:
where are textures? in .xpak files or .ff files?
what are .dat files when extracted from .xpak file?
  • Author
  • Localization

joaosilva, posted Sat Nov 21, 2015 6:52 am (9948)


myasa wrote:
:geek:
where are textures? in .xpak files or .ff files?
what are .dat files when extracted from .xpak file?


Yes, where are textures and images? .xpak or .ff? How extract .dat files? Please! Thanks
  • Author
  • Localization

FakePlayer, posted Wed Apr 27, 2016 5:33 pm (12917)


joaosilva wrote:
myasa wrote:
:geek:
where are textures? in .xpak files or .ff files?
what are .dat files when extracted from .xpak file?


Yes, where are textures and images? .xpak or .ff? How extract .dat files? Please! Thanks

you can partially dump .ff files. Wich was also commonly found in /Zone instead /Main because it used To have textures inside it
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.