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.

DarkestDungeon (.bank)

Featured Replies

  • Author
  • Localization

aluigi, posted Wed Feb 04, 2015 2:34 pm (3051)


Use fsbext with the -o -1 option which scans the file for FSB archives.
  • Author
  • Localization

happyend, posted Thu Feb 05, 2015 1:20 am (3063)


thanks,but how to get have fsb head Original raw data??
  • Author
  • Localization

aluigi, posted Thu Feb 05, 2015 9:47 am (3071)


The easy way is opening the file with a hex editor and searching "FSB5", dump everything from there till the end of the file as a fsb archive.
Why you need that?
  • Author
  • Localization

happyend, posted Thu Feb 05, 2015 10:48 am (3076)


Because need .fev fsb file, use FMOD Designer play,or converts a multi-stream .fsb into a set of single-stream .fsbs, suitable for use with vgmstream
  • Author
  • Localization

Savage, posted Mon Jul 20, 2015 3:05 pm (6477)


Hi! i asked time ago if it's possible to make bms script to dump the raw data like @happyend is requesting
Actually we have a FSB4 dumper

Code:
# dump FSBs
# script for QuickBMS http://quickbms.aluigi.org

for
    findloc OFFSET string "FSB" 0 ""
    if OFFSET == ""
        cleanexit
    endif
    goto OFFSET
    getdstring FSB_SIGN 3
    get FSB_VER byte
    get DUMMY long
    get HEADER_SIZE long
    get DATA_SIZE long
    if FSB_VER == '4'
        math SIZE = 0x30
    elif FSB_VER == '3'
        math SIZE = 0x18
    elif FSB_VER == '2'
        math SIZE = 0x10
    elif FSB_VER == '1'
        math SIZE = 0x10
        math DATA_SIZE = HEADER_SIZE
        math HEADER_SIZE = 0
    else
        #print "FSB version %FSB_VER% not supported"
        #cleanexit
        math SIZE = -1
    endif
    if SIZE == -1
        math SIZE = 4
    else
        math SIZE = HEADER_SIZE
        math SIZE = DATA_SIZE
        log "" OFFSET SIZE
    endif
    math OFFSET = SIZE
    goto OFFSET
next


Aluigi or any other, i't s possible to enhance" the script?
Thanks!
  • Author
  • Localization

aluigi, posted Mon Jul 20, 2015 5:59 pm (6480)


Don't you really like fsbext -o -1 ?
  • Author
  • Localization

Savage, posted Mon Jul 20, 2015 6:14 pm (6483)


aluigi wrote:
Don't you really like fsbext -o -1 ?

Not really in this case, the idea is to dump the full FSB5 files, not extract the data form the FSB5
  • Author
  • Localization

aluigi, posted Mon Jul 20, 2015 6:22 pm (6486)


for FSB5 try with:
Code:
    elif FSB_VER == '5'
        math SIZE = 0x3c
  • Author
  • Localization

Savage, posted Mon Jul 20, 2015 8:45 pm (6489)


Thanks, but only dumps a few bytes
Code:
# dump FSBs
# script for QuickBMS http://quickbms.aluigi.org

for
    findloc OFFSET string "FSB" 0 ""
    if OFFSET == ""
        cleanexit
    endif
    goto OFFSET
    getdstring FSB_SIGN 3
    get FSB_VER byte
    get DUMMY long
    get HEADER_SIZE long
    get DATA_SIZE long
    if FSB_VER == '4'
        math SIZE = 0x30
    elif FSB_VER == '3'
        math SIZE = 0x18
    elif FSB_VER == '5'
        math SIZE = 0x3c
    elif FSB_VER == '2'
        math SIZE = 0x10
    elif FSB_VER == '1'
        math SIZE = 0x10
        math DATA_SIZE = HEADER_SIZE
        math HEADER_SIZE = 0
    else
        #print "FSB version %FSB_VER% not supported"
        #cleanexit
        math SIZE = -1
    endif
    if SIZE == -1
        math SIZE = 4
    else
        math SIZE = HEADER_SIZE
        math SIZE = DATA_SIZE
        log "" OFFSET SIZE
    endif
    math OFFSET = SIZE
    goto OFFSET
next
  • Author
  • Localization

aluigi, posted Tue Jul 21, 2015 3:46 pm (6506)


Code:
for OFFSET = 0
    goto OFFSET
    findloc OFFSET string "FSB5"
    goto OFFSET
    getdstring FSB_SIGN 4   # FSOUND_FSB_HEADER_FSB5 (fsb.h)
    get version long
    get numsamples long
    get shdrsize long
    get namesize long
    get datasize long
    xmath SIZE "0x3c shdrsize namesize datasize"
    log "" OFFSET SIZE
next OFFSET SIZE
  • Author
  • Localization

Savage, posted Tue Jul 21, 2015 6:08 pm (6516)


Thanks! works great :D
  • Author
  • Localization

HoundMaster, posted Wed Aug 05, 2015 8:01 pm (6787)


Thanks. :)
  • Author
  • Localization

Dark10, posted Sat Aug 22, 2015 5:37 pm (6898)


Hey guys, I don't know how to dumb the .bank file. Even, I don't know how to use the Hex editor!
Any updates for fsbext or FsbExtractor to do the job? Anyone can make a tool to make these .wav files playable?
Thanks.
  • Author
  • Localization

aluigi, posted Sat Aug 29, 2015 3:19 pm (6984)


I don't have the game so I can't help with these output files.
Anyway the OGG files of FSB5 are not supported yet by fsbext (it dumps them as-is) while the other files are extracted with the appropriate header like RIFF for pcm wav or vag and genh for the ps* and Nintendo files. Obviously you need the appropriate player to play them, usually the vgmstream plugin for winamp does the job.
  • Author
  • Localization

AnonBaiter, posted Sun Feb 12, 2017 7:37 pm (20798)


Here is an "updated" version of dump_fsbs.bms script, this time I added (as-of-yet-untested) FSB5 support.
Code:
for
    findloc OFFSET string "FSB" 0 ""
    if OFFSET == ""
        cleanexit
    endif
    goto OFFSET
    getdstring FSB_SIGN 3
    get FSB_VER byte
    get DUMMY long
    get HEADER_SIZE long
    get DATA_SIZE long
   if FSB_VER == '5'
      getdstring FSB_SIGN 4
      get VERSION long
      get TOTALSAMPLES long
      get SHDRSIZE long
      get NAMESIZE long
      get DATASIZE long
      xmath SIZE "0x3c SHDRSIZE NAMESIZE DATASIZE"
    elif FSB_VER == '4'
        math SIZE = 0x30
    elif FSB_VER == '3'
        math SIZE = 0x18
    elif FSB_VER == '2'
        math SIZE = 0x10
    elif FSB_VER == '1'
        math SIZE = 0x10
        math DATA_SIZE = HEADER_SIZE
        math HEADER_SIZE = 0
    else
        #print "FSB version %FSB_VER% not supported"
        #cleanexit
        math SIZE = -1
    endif
    if SIZE == -1
        math SIZE = 4
    else
        math SIZE = HEADER_SIZE
        math SIZE = DATA_SIZE
      callfunction GET_NAME 1
        log NAME OFFSET SIZE
    endif
    math OFFSET = SIZE
    goto OFFSET
next

startfunction GET_NAME
   if FSB_VER != '5'
      if DUMMY == 1
         xmath NAME_OFFSET "OFFSET 0x32"
         goto NAME_OFFSET
         savepos TMP
         getdstring NAME 0x1e
         string NAME = ".fsb"
         goto TMP
      else
         set NAME string ""
      endif
   else
      break   # I don`t have any FSB5 files at the moment
   endif
endfunction
  • Author
  • Localization

pastranario3, posted Sat Sep 21, 2019 3:56 pm (50838)


I need to extract only the .fev from the .bank
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.