The Forum is up for sale: XeNTaX Forum looking for new owner

Stacking - How to open ~p, ~h?

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
WRS
ultra-veteran
ultra-veteran
Posts: 603
Joined: Fri Nov 06, 2009 12:13 am
Has thanked: 74 times
Been thanked: 136 times

Re: Stacking - How to open ~p, ~h?

Post by WRS »

not sure if this tool can help - viewtopic.php?p=72975#p72975
Useful tool links:
WRS
ultra-veteran
ultra-veteran
Posts: 603
Joined: Fri Nov 06, 2009 12:13 am
Has thanked: 74 times
Been thanked: 136 times

Re: Stacking - How to open ~p, ~h?

Post by WRS »

file data (*.~p) is either zlib or raw (with size flag)

rough structure for anyone who can understand how to unscramble the file data entries

Code: Select all

idstring "dfpf\x5\0\0\0"
endian big
get table1 longlong # type table pointer
get table2 longlong # fn table pointer
get cntTypes long # number of types
get fntablesize long # size of fn table
get cntFiles long # file count
get MARKER long # 23A1CEABh

getdstring unknown 16
get pntr1 longlong # .~p table
get pntr2 longlong
get pntr2 longlong
get unknown long
get MARKER long # 23A1CEABh again

# goto table1
## ## structure (cntTypes items)
# get len long, getdstring name len
# get unknown long, get unknown long, get unknown long

goto pntr1
for f = 0 < cntFiles
 ## NOTE: values are scrambled
  get unknown_1 long
  get unknown_2 long
  get unknown_3 long
  get unknown_4 long
next f

# goto table2
## ## structure (size of fntablesize)
# get fname string
Useful tool links:
Post Reply