[Help!]King of Fighters Maximum Impact .pak

Skeletons, animations, shaders, texturing, converting, fixing and anything else related to read game models
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

[Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Hey aluigi
I I have try to open .pak file in KOF MI Because I wan't that model.But I try it but I don't sure it's archive or model.

This is simple file
https://mega.nz/#!2UsHkYTS
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

password
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Oh.I'm sorry!
Hear.this is my re-upload.
http://www.4shared.com/get/ec7yY0ZXba/K ... p_dff.html
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

The format is simple but the compression algorithm is unknown.
Is this the ps2 or xbox version?
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

This is ps2 version.because I used pcsx 2 to play that game.
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Ah.Can you help me?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

No algorithm = No extraction.
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Ah.Alugi I found something about that file format.
It's can help to write script?

form GRAFs

Code: Select all

Format Type : Archive 
Endian Order : Little Endian

Format Specifications
char {4}     - Header (DATA)
uint64 {8}   - null

uint32 {4}   - Number Of Files
// for each file
uint32 {4}   - File Offset

uint32 {4}   - Archive Size [-6]
uint32 {4}   - Unknown (400)

// for each file
char {2}     - File Header (PK)
byte {1}     - null
uint32 {4}   - Unknown (Decompressed Size?)
byte {9}     - null
byte {X}     - File Data


Form FATDUCK

Code: Select all

fn int2bin val = (
  local ary = #()
  if val <-1 then val += 256    --convert signed byte to unsigned byte
  if val >= 128 then (append ary 1 ;val-=128) else append ary 0
  if val >= 64 then (append ary 1 ;val-=64) else append ary 0
  if val >= 32 then (append ary 1 ;val-=32) else append ary 0
  if val >= 16 then (append ary 1 ;val-=16) else append ary 0
  if val >= 8 then (append ary 1 ;val-=8) else append ary 0
  if val >= 4 then (append ary 1 ;val-=4) else append ary 0
  if val >= 2 then (append ary 1 ;val-=2) else append ary 0
  if val == 1 then (append ary 1) else append ary 0
  return ary
)--end fn int2bin

fn KOFdecompress fstream Usize = (

  debugmode=false
  clearlistener()
 
  local ctrlBits = #()
  local Ubuffer = #()
 
  do (
   join ctrlBits ( int2bin ( readbyte fstream #unsigned ) )
   if debugmode==true then (
    format "In: "
    for j in ctrlBits do format "%" j
    format "\n"
   )--end debugmode
   do (
    if ctrlBits[1] == 1 then (
     append Ubuffer (readbyte fstream #unsigned)
     deleteitem ctrlBits 1
    ) else (
     local len = 0
     local ofs = 0
     if ctrlBits[2] == 0 then (
      len = ctrlBits[3]*2 + ctrlBits[4] + 2
      ofs = (readbyte fstream #unsigned) - 256
      if debugmode==true then format "ofs: %\tlen: %\n" ofs len
      deleteitem ctrlBits 1; deleteitem ctrlBits 1
      deleteitem ctrlBits 1; deleteitem ctrlBits 1
     ) else (
      ctrlH  = readbyte fstream #unsigned
      ctrlL  = readbyte fstream #unsigned
      if debugmode==true then format "H: %\tL: % @ [%]\n" (dec2hex ctrlH) (dec2hex ctrlL) (dec2hex (ftell fstream))
      len = (mod ctrlL 32)
      if len == 0 then len = 1 + (readbyte fstream #unsigned)
      else len += 2
      --ofs = ((mod ctrlH 32)*8+(ctrlL/32))*256 + 0xF8 + (ctrlH/32)
      --if ofs > 0x7FFF then ofs = ofs - 65536
     
      --** KOF method--
     ofs = ((mod ctrlH 32)*8+(ctrlL/32)) + (0xF8 + (ctrlH/32))*256 - 65536


      if debugmode==true then format "Bofs: %\tBlen: %\n" ofs len

      deleteitem ctrlBits 1; deleteitem ctrlBits 1
     )
         
      --copy stuff here
      loc = ofs + Ubuffer.count
      if abs(ofs) >= len then (
       for j = 1 to len do append Ubuffer (Ubuffer[(loc+j)]) 
      ) else (
       for j = 1 to len/(abs(ofs)) do
          for jj = 1 to abs(ofs) do append Ubuffer (Ubuffer[(loc+jj)])
       for j = 1 to (mod len (abs(ofs))) do append Ubuffer (Ubuffer[(loc+j)])
      )--end if/else
     

       --for j in Ubuffer do format "%  " (dec2hex j)
       --format "\n"

    )--end if/else
    if Ubuffer.count >= Usize then exit
    if (ctrlBits.count == 0) then exit
    if (ctrlBits.count==1)AND(ctrlBits[1]==0) then exit
    if (ctrlBits.count <= 3)AND(ctrlBits[1]==0)AND(ctrlBits[2]==0) then exit
   ) while 1==1
   if debugmode==true then (
    format "Out: "
    for j in ctrlBits do format "%" j
    format "\n"
       --for j in Ubuffer do format "%  " (dec2hex j)
       --format "\n"
    format "\t[%]\nUbuffer: %\n\n" (dec2hex (ftell fstream)) (dec2hex Ubuffer.count)
   )--end debugmode

  ) while Ubuffer.count < Usize

  format "->%\n" Ubuffer.count
 
  return Ubuffer
)--end fn KOFdecompress
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

Hard to say, can't work on it and we don't know if it's really the compression of those files.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

Just checked the Xbox files, they are the same of PS2
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Okay.first.I need to thank you anything about your kindness.
but.I have the last way and last question.
1.If it's not archive.But.It's .dff file with encrypted by SNK.How can I converter it.
2.Can you write this script to support UV Map?

script by 3dformat

Code: Select all

log MEMORY_FILE1 0 0 ;
log MEMORY_FILE2 0 0 ;
log MEMORY_FILE3 0 0 ;
log MEMORY_FILE4 0 0 ;
log MEMORY_FILE5 0 0 ;
GoTo 0 0 ;
Math count = 0 ;
Math gt = 0 ;
Math Qprime = 0 ;
Math red = 0 ;
Math gin = 0 ;
SavePos found 0 ;
Get QT ASIZE 0 ;
For T = 0 < QT ;
GoTo found 0 ;
findloc OFFSET string "\x00\x00\x00\x05\x05\x01\x00\x01\x00\x80" 0 0 ;
If OFFSET = 0 ;
Math t = QT ;
Math twotest = 1 ;
EndIF ;
If OFFSET != 0 ;
GoTo OFFSET 0 ;
GoTo 10 0 SEEK_CUR ;
Get onetest Byte 0 ;
Get twotest Byte 0 ;
SavePos found 0 ;
EndIF ;
If twotest = 104 ;
Put count Long MEMORY_FILE1 ;
Math count += onetest ;
Math foxcount = count ;
Math foxcount -= 1 ;
Put foxcount Long MEMORY_FILE1 ;
Put onetest Long MEMORY_FILE1 ;
Put found Long MEMORY_FILE1 ;
Put found Long MEMORY_FILE4 ;
EndIF ;
Next T ;
Get mqa ASIZE MEMORY_FILE1 ;
Math mqa /= 16 ;




Math logic = mqa ;
Math logic -= 1 ;
Put 1 Long MEMORY_FILE5 ;
For qjk = 1 To logic ;
GoTo gin MEMORY_FILE4 ;
Get zlow long MEMORY_FILE4 ;
SavePos gin MEMORY_FILE4 ;
Get zhigh long MEMORY_FILE4 ;
Math ztest = zhigh ;
Math ztest -= zlow ;
If ztest > 36000 ;
Put qjk Long MEMORY_FILE5 ;
EndIF ;
Next qjk ;
Math logic += 1 ;
Put logic Long MEMORY_FILE5 ;

Get fivfiv ASIZE MEMORY_FILE5 ;
Math fivfiv -= 4 ;
Math fivfiv /= 4 ;







Math acera = 0 ;
For hs = 1 To fivfiv ;
GoTo acera MEMORY_FILE5 ;
Get zeblow long MEMORY_FILE5 ;
SavePos acera MEMORY_FILE5 ;
Get zebhigh long MEMORY_FILE5 ;
Math zeblow -= 1 ;
Math numberlow = zeblow ;
Math zeblow *= 16 ;
Math zebhigh -= 1 ;
Math numberhigh = zebhigh ;
Math zebhigh *= 16 ;
GoTo zeblow MEMORY_FILE1 ;
Get adjadj long MEMORY_FILE1 ;



GoTo zeblow MEMORY_FILE1 ;
Get minfox long MEMORY_FILE1 ;
Math minfox -= adjadj ;


GoTo zebhigh MEMORY_FILE1 ;
Get maxfox long MEMORY_FILE1 ;
Math maxfox -= adjadj ;

GoTo zeblow MEMORY_FILE1 ;
SavePos gt MEMORY_FILE1 ;
log MEMORY_FILE6 0 0 ;
For jjj = numberlow To numberhigh ;
GoTo gt MEMORY_FILE1 ;
Get min long MEMORY_FILE1 ;
Math min -= adjadj ;
Get max long MEMORY_FILE1 ;
Math max -= adjadj ;
Get nuv long MEMORY_FILE1 ;
Get loc long MEMORY_FILE1 ;
SavePos gt MEMORY_FILE1 ;
GoTo loc 0 ;
SavePos werefox 0 ;
For cvb = 1 To nuv ;
GoTo werefox 0 ;
Get Type1 Long 0 ;
Get Type2 Long 0 ;
Get Type3 Long 0 ;
SavePos werefox 0 ;
GoTo Qprime MEMORY_FILE2 ;
Put Type1 Long MEMORY_FILE2 ;
Put Type2 Long MEMORY_FILE2 ;
Put Type3 Long MEMORY_FILE2 ;
SavePos Qprime MEMORY_FILE2 ;
Next cvb ;
Math max -= 2 ;

For fff = min To max ;

Math fafter = fff ;
Math fafter += 1 ;
Math fafterafter = fff ;
Math fafterafter += 2 ;
GoTo red MEMORY_FILE3 ;
Put fff Short MEMORY_FILE3 ;
Put fafter Short MEMORY_FILE3 ;
Put fafterafter Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;

Put fff Short MEMORY_FILE3 ;
Put fafterafter Short MEMORY_FILE3 ;
Put fafter Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;
SavePos red MEMORY_FILE3 ;
Next fff ;
Next jjj ;
Get Zw3 ASIZE MEMORY_FILE3 ;
Math Zf3 = Zw3 ;
Math Zf3 /= 8 ;
Get Zw2 ASIZE MEMORY_FILE2 ;
Math Zf2 = Zw2 ;
Math Zf2 /= 12 ;
Math FaceNumber = Zf3 ;
Math VertexNumber = Zf2 ;
Math Snake = VertexNumber ;
Math Snake *= 12 ;
Math Dragon = FaceNumber ;
Math Dragon *= 8 ;
Math Sum = Dragon ;
Math Sum += Snake ;
Math meshmesh = Sum ;
Math meshmesh += 60 ;
Math QQQ = 60 ;
Math QQQ += Snake ;
Math QQ = 52 ;
Math qaz = 0 ;
Math wsx = 0 ;
log MEMORY_FILE6 0 meshmesh ;
For Vertex = 0 < Zw2 ;
GoTo qaz MEMORY_FILE2 ;
Get D byte MEMORY_FILE2 ;
SavePos qaz MEMORY_FILE2 ;
GoTo QQ MEMORY_FILE6 ;
Put D Byte MEMORY_FILE6 ;
SavePos QQ MEMORY_FILE6 ;
Next Vertex ;
For Face = 0 < Zw3 ;
GoTo wsx MEMORY_FILE3 ;
Get D byte MEMORY_FILE3 ;
SavePos wsx MEMORY_FILE3 ;
GoTo QQQ MEMORY_FILE6 ;
Put D Byte MEMORY_FILE6 ;
SavePos QQQ MEMORY_FILE6 ;
Next Face ;
GoTo 0 MEMORY_FILE6 ;
set M Byte 0x4D ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x4D ;
Put M Byte MEMORY_FILE6 ;
Math M = Sum ;
Math M += 60 ;
Put M Long MEMORY_FILE6 ;
set M Byte 0x02 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x0A ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x03 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x3D ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x3D ;
Put M Byte MEMORY_FILE6 ;
Math M = Sum
Math M += 44 ;
Put M Long MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x40 ;
Put M Byte MEMORY_FILE6 ;
Math M = Sum
Math M += 38 ;
Put M Long MEMORY_FILE6 ;
set M Byte 0x64 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x72 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x61 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x67 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x6F ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x6E ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x6A ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x61 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x6E ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE6 ;
Math M = Sum
Math M += 22 ;
Put M Long MEMORY_FILE6 ;
Set M Byte 0x10 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE6 ;
Math M = Snake ;
Math M += 8 ;
Put M Long MEMORY_FILE6 ;
Math M = VertexNumber ;
Put M Short MEMORY_FILE6 ;
Math JumpJump = Snake ;
Math JumpJump += 52 ;
GoTo JumpJump MEMORY_FILE6 ;
set M Byte 0x20 ;
Put M Byte MEMORY_FILE6 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE6 ;
Math M = FaceNumber ;
Math M *= 8 ;
Math M += 8 ;
Put M Long MEMORY_FILE6 ;
Math M = FaceNumber ;
Put M Short MEMORY_FILE6 ;
Get size6 ASIZE MEMORY_FILE6 ;
Math name = hs ;
string name += .3ds ;
Log name 0 size6 MEMORY_FILE6 ;
log MEMORY_FILE2 0 0 ;
log MEMORY_FILE3 0 0 ;
Math count = 0 ;
Math gt = 0 ;
Math Qprime = 0 ;
Math red = 0 ;
Math gin = 0 ;
Next hs ;


if it's have no way to get that.I'll wait for KOF XIV.and try it again.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

That's not stuff for me, sorry.
CaxUchiha
Posts: 14
Joined: Sun Feb 28, 2016 1:08 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by CaxUchiha »

Hi aluigi, I searched some information about this format and some time ago I found a post in the fatduck's chinese forum where codeman made the question if there was a way to unzip/decompress the pak files for this game and he responded it:

"It use a kind of LZ for the compression! the method is in: http://gameresearch.5d6d.com/thread-147-1-1.html (Link down :() I think use comtype 8ing in Quickbms should decompress the files! Most 8ing games in PS2 use Renderware game engine."

I found that the Endian Order is Little Endian and also found this two topics on xentax with more information: http://forum.xentax.com/viewtopic.php?f=21&t=4604 http://forum.xentax.com/viewtopic.php?f=10&t=1387

I hope that this can help, I'm interested in extract 3d models from this game too. Thanks! :D
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by aluigi »

comtype prs_8ing crashes.
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Hi aluigi, I searched some information about this format and some time ago I found a post in the fatduck's chinese forum where codeman made the question if there was a way to unzip/decompress the pak files for this game and he responded it:

"It use a kind of LZ for the compression! the method is in: http://gameresearch.5d6d.com/thread-147-1-1.html (Link down :() I think use comtype 8ing in Quickbms should decompress the files! Most 8ing games in PS2 use Renderware game engine."

I found that the Endian Order is Little Endian and also found this two topics on xentax with more information: http://forum.xentax.com/viewtopic.php?f=21&t=4604 http://forum.xentax.com/viewtopic.php?f=10&t=1387

I hope that this can help, I'm interested in extract 3d models from this game too. Thanks! :D


How about file form game extractor?.It's model or not?
chrrox
Posts: 388
Joined: Thu Aug 07, 2014 10:28 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by chrrox »

Here id an old script i made to decompress those files using his code.

Code: Select all

if (heapSize < 20000000) then
(
   heapSize = 200000000 -- allow ~ 40 MB instead of just 7.5 MB. Prevents "Runtime Error: Out of scripter memory"
)

fname = GetOpenFileName caption:"Open KOF Model File" types:"KOF Model File(*.dff)|*.dff"
f = fopen fname "rb"   --open file in read only format


fn PrintOffset Var =(
        local Var = Var
        print ("This is the offset 0x" + (bit.intAsHex Var) as string)
        Var
    )

fn PrintCount Var = (
        local Var = Var
        print ("This is the Count 0x" + (bit.intAsHex Var) as string)
        Var
    )

fn Readword fstream = (
    return readshort fstream #unsigned
)

fn ReadFixedString bstream fixedLen =(
   local str = ""
   for i = 1 to fixedLen do(
      str += bit.intAsChar (ReadByte bstream #unsigned)
   )
   str
)

struct Mesh_Info_Struct
(
   Mesh_Name,vertstart,vertend,vertcount,facecount
)
struct Offset_Info_Struct
(
   Section_Start,Vert_Start,Face_Start,vertsize
)

 fn int2bin val = (
  local ary = #()
  if val <-1 then val += 256    --convert signed byte to unsigned byte
  if val >= 128 then (append ary 1 ;val-=128) else append ary 0
  if val >= 64 then (append ary 1 ;val-=64) else append ary 0
  if val >= 32 then (append ary 1 ;val-=32) else append ary 0
  if val >= 16 then (append ary 1 ;val-=16) else append ary 0
  if val >= 8 then (append ary 1 ;val-=8) else append ary 0
  if val >= 4 then (append ary 1 ;val-=4) else append ary 0
  if val >= 2 then (append ary 1 ;val-=2) else append ary 0
  if val == 1 then (append ary 1) else append ary 0
  return ary
 )--end fn int2bin
 
 
 
 fn KOFdecompress fstream Usize = (
 
  debugmode=false
  clearlistener()
 
  local ctrlBits = #()
  local Ubuffer = #()
 
  do (
   join ctrlBits ( int2bin ( readbyte fstream #unsigned ) )
   if debugmode==true then (
    format "In: "
    for j in ctrlBits do format "%" j
    format "\n"
   )--end debugmode
   do (
    if ctrlBits[1] == 1 then (
     append Ubuffer (readbyte fstream #unsigned)
     deleteitem ctrlBits 1
    ) else (
     local len = 0
     local ofs = 0
     if ctrlBits[2] == 0 then (
      len = ctrlBits[3]*2 + ctrlBits[4] + 2
      ofs = (readbyte fstream #unsigned) - 256
      if debugmode==true then format "ofs: %\tlen: %\n" ofs len
      deleteitem ctrlBits 1; deleteitem ctrlBits 1
      deleteitem ctrlBits 1; deleteitem ctrlBits 1
     ) else (
      ctrlH  = readbyte fstream #unsigned
      ctrlL  = readbyte fstream #unsigned
      if debugmode==true then format "H: %\tL: % @ [%]\n" (dec2hex ctrlH) (dec2hex ctrlL) (dec2hex (ftell fstream))
      len = (mod ctrlL 32)
      if len == 0 then len = 1 + (readbyte fstream #unsigned)
      else len += 2
      --ofs = ((mod ctrlH 32)*8+(ctrlL/32))*256 + 0xF8 + (ctrlH/32)
      --if ofs > 0x7FFF then ofs = ofs - 65536
     
      --** KOF method--
     ofs = ((mod ctrlH 32)*8+(ctrlL/32)) + (0xF8 + (ctrlH/32))*256 - 65536


      if debugmode==true then format "Bofs: %\tBlen: %\n" ofs len

      deleteitem ctrlBits 1; deleteitem ctrlBits 1
     )
         
      --copy stuff here
      loc = ofs + Ubuffer.count
      if abs(ofs) >= len then (
       for j = 1 to len do append Ubuffer (Ubuffer[(loc+j)]) 
      ) else (
       for j = 1 to len/(abs(ofs)) do
          for jj = 1 to abs(ofs) do append Ubuffer (Ubuffer[(loc+jj)])
       for j = 1 to (mod len (abs(ofs))) do append Ubuffer (Ubuffer[(loc+j)])
      )--end if/else
    

       --for j in Ubuffer do format "%  " (dec2hex j)
       --format "\n"

    )--end if/else
    if Ubuffer.count >= Usize then exit
    if (ctrlBits.count == 0) then exit
    if (ctrlBits.count==1)AND(ctrlBits[1]==0) then exit
    if (ctrlBits.count <= 3)AND(ctrlBits[1]==0)AND(ctrlBits[2]==0) then exit
   ) while 1==1
   if debugmode==true then (
    format "Out: "
    for j in ctrlBits do format "%" j
    format "\n"
       --for j in Ubuffer do format "%  " (dec2hex j)
       --format "\n"
    format "\t[%]\nUbuffer: %\n\n" (dec2hex (ftell fstream)) (dec2hex Ubuffer.count)
   )--end debugmode
 
  ) while Ubuffer.count < Usize

  format "->%\n" Ubuffer.count
 
  return Ubuffer
 )--end fn KOFdecompress
idstring = readlong f
 size1 = readlong f
fseek f 0x10#seek_set
 newfile = KOFdecompress f size1
 exfile = (fname + ".dec")
g = fopen exfile "wb"   --open file in read only format

 for a = 1 to newfile.count do (
    writebyte g newfile[a]#unsigned
 )
fclose g







fclose f
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Ah.This is for QuickBMS right? Or use in another program?
MarioSonicU
Posts: 116
Joined: Tue Dec 08, 2015 8:36 pm

Re: [Help!]King of Fighters Maximum Impact .pak

Post by MarioSonicU »

Brilleas wrote:Ah.This is for QuickBMS right? Or use in another program?

I think chrrox' script is a MaxScript meaning it's for 3DS Max
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Oh.thank you.and everyone for this case.
Brilleas
Posts: 22
Joined: Sat Feb 20, 2016 9:13 am

Re: [Help!]King of Fighters Maximum Impact .pak

Post by Brilleas »

Ah.I have some question.It's dose't support .pak file?.And how to open it before use .dff file?