Page 1 of 1

Ninja Blade (*.BND;*.TBND;*.TPF)

Posted: Mon Aug 06, 2012 5:21 pm
by Ekey
:)

For Archives

Code: Select all

# Ninja Blade (BND / TBND format)
#
# Written by Ekey (h4x0r)
# http://www.progamercity.net
# 
# script for QuickBMS http://quickbms.aluigi.org

idstring "BND"

goto 0xC
get TABLEOFFSET long
get FILES long
goto 0x20

for i = 0 < FILES
    get DUMMY long
    get ZSIZE long
    get OFFSET long
    get NULLS long
    get NAMEOFFSET long
    get SIZE long
    savepos TEMP
    goto NAMEOFFSET
    get NAME string
if ZSIZE == SIZE
    log NAME OFFSET SIZE
else
    clog NAME OFFSET ZSIZE SIZE
endif
    goto TEMP
next i
For Textures

Code: Select all

# Ninja Blade (Textures) (TPF format)
#
# Written by Ekey (h4x0r)
# http://www.progamercity.net
# 
# script for QuickBMS http://quickbms.aluigi.org

idstring "TPF\x00"

#get NAME BASENAME
get SIZE long
get FILES long
get DUMMY long
get OFFSET long
get ZSIZE long
get DUMMY long
get NAMEOFF long
goto NAMEOFF
get NAME string
string NAME + .dds
log NAME OFFSET SIZE

Re: Ninja Blade (*.BND;*.TBND;*.TPF)

Posted: Wed Dec 16, 2015 7:04 pm
by PredatorCZ
Sorry to interrupt but I dared to edit tpf script to extract all textures in tpf container.

Code: Select all

idstring "TPF\x00"

#get NAME BASENAME
get SIZE long
get FILES long

for i = 0 < FILES
  get DUMMY long
  get OFFSET long
  get ZSIZE long
  get DUMMY long
  get NAMEOFF long
  savepos base
  goto NAMEOFF
  get NAME string
  string NAME + .dds
  log NAME OFFSET ZSIZE
  goto base
next i  
ALSO: If you want extract map bnk file you need to add "endian big" to script, like :

Code: Select all

idstring "BND"

endian big

goto 0xC

...