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.

Arslan the warriors of legend

Featured Replies

  • Author
  • Localization

sigroon365, posted Fri Mar 04, 2016 3:55 am (11760)


Can someone let me know what is the comtype of this file?

Code:
open FDDE IDX 0
open FDDE BIN 1

For
     get OFFSET longlong 0
     get SIZE longlong 0
     get ZSIZE longlong 0
     get TYPE longlong 0

     if SIZE == ZSIZE
     log "" OFFSET SIZE 1
     elif SIZE > ZSIZE
     clog "" OFFSET SIZE ZSIZE 1
     elif ZSIZE == 0
     break
endif

Next


Image
  • Author
  • Localization

sigroon365, posted Fri Mar 04, 2016 9:24 am (11767)


aluigi wrote:
http://aluigi.org/bms/arslan.bms


Oh, I would upload part of bin file, but you've already made bms script! Thanks a lot. :)
  • Author
  • Localization

sigroon365, posted Fri Mar 04, 2016 10:00 am (11769)


aluigi wrote:
http://aluigi.org/bms/arslan.bms

Hmm.. what does it mean?
Image
  • Author
  • Localization

aluigi, posted Fri Mar 04, 2016 10:25 am (11770)


I don't know because the zip you provided was corrupted (even if it was 3,2 Gb) and so LINKDATA.BIN was only 2,4 Gb, I arrive only to 00000090.dat

*edit* MD5 of the zip is eb3a0babbc8e44569813fbb066196699 here.
  • Author
  • Localization

sigroon365, posted Fri Mar 04, 2016 11:51 am (11774)


aluigi wrote:
I don't know because the zip you provided was corrupted (even if it was 3,2 Gb) and so LINKDATA.BIN was only 2,4 Gb, I arrive only to 00000090.dat

*edit* MD5 of the zip is eb3a0babbc8e44569813fbb066196699 here.


Hmm.. my MD5 is B3C5FBF4B48983482BCB47A0A66984C6 I will upload it again.
  • Author
  • Localization

aluigi, posted Fri Mar 04, 2016 5:18 pm (11777)


Fixed in 0.1.1.
I'm not sure if the extracted files are so useful, they appear to be big containers of data... probably it's necessary another script to work with them but doesn't seem a simple format.
  • Author
  • Localization

sigroon365, posted Fri Mar 04, 2016 6:18 pm (11778)


aluigi wrote:
Fixed in 0.1.1.
I'm not sure if the extracted files are so useful, they appear to be big containers of data... probably it's necessary another script to work with them but doesn't seem a simple format.


Yes it is. The unpacked files are too big. :roll:
Image
  • Author
  • Localization

aluigi, posted Sat Mar 05, 2016 3:30 pm (11793)


Various big files like those with the sdb, nfc, vap and some dat entensions have this format:
Code:
get FILES long
for i = 0 < FILES
    get OFFSET long
    get SIZE long
    log "" OFFSET SIZE
next i

And, what's worst, is that even some of the files extracted with this method are archives themselve.
For example the first file of 00000049.sdb is an archive.
There is no concrete way to guess this format without names and so it's not possible to automatize the extraction.
  • Author
  • Localization

sigroon365, posted Sun Mar 06, 2016 2:41 pm (11816)


aluigi wrote:
Various big files like those with the sdb, nfc, vap and some dat entensions have this format:
Code:
get FILES long
for i = 0     get OFFSET long
    get SIZE long
    log "" OFFSET SIZE
next i

And, what's worst, is that even some of the files extracted with this method are archives themselve.
For example the first file of 00000049.sdb is an archive.
There is no concrete way to guess this format without names and so it's not possible to automatize the extraction.


Yes it is. It seems that there are also dummy files. :(
  • Author
  • Localization

sigroon365, posted Sun Mar 06, 2016 9:21 pm (11822)


I tried to make a repacking script but how can I put longlong and ZSIZE? And is there a reason why some files are zipped and others not? How can I choose it when I repacking?

Code:
set OUTPUT_ARCHIVE_IDX string "LINKDATA_NEW.IDX"
set OUTPUT_ARCHIVE_BIN string "LINKDATA_NEW.BIN"

log MEMORY_FILE  0 0
log MEMORY_FILE2  0 0

for FILES = 0
    scanDir "." NAME SIZE
    if NAME == ""
        break
    endif
    open "." NAME
    string NAME << 2
    if NAME != OUTPUT_ARCHIVE_IDX
        get OFFSET asize MEMORY_FILE2
        put OFFSET long MEMORY_FILE
        put 0 long MEMORY_FILE

        put SIZE long MEMORY_FILE
        put 0 long MEMORY_FILE

        log MEMORY_FILE2  0 0

        get ZSIZE asize MEMORY_FILE2
        put ZSIZE long MEMORY_FILE
        put 0 long MEMORY_FILE

        put 1 long MEMORY_FILE
        put 0 long MEMORY_FILE

        append
        log MEMORY_FILE2 0 SIZE

        math OFFSET = ZSIZE

        append
        math FILES 1
    endif
next

get SIZE asize MEMORY_FILE2
log OUTPUT_ARCHIVE_BIN 0 SIZE MEMORY_FILE2

get SIZE asize MEMORY_FILE
log OUTPUT_ARCHIVE_IDX 0 SIZE MEMORY_FILE
  • Author
  • Localization

aluigi, posted Mon Mar 07, 2016 12:08 pm (11828)


For longlong it's enough to replace long with longlong.
ZSIZE must be equal to SIZE and ZIP set to 0.
Don't use any compression because they are chunked files.
  • Author
  • Localization

sigroon365, posted Mon Mar 07, 2016 3:35 pm (11835)


aluigi wrote:
For longlong it's enough to replace long with longlong.
ZSIZE must be equal to SIZE and ZIP set to 0.
Don't use any compression because they are chunked files.


I replace long with longlong but it put the values like this.

ex) 0A DF 00 00 0A DF 00 00.

What I want is 0A DF 00 00 00 00 00 00.

And when I didn't use ZSIZE and tried to repacking for a number of files, memory alloc error occur.
By the way, this error doesn't occur when I repack a few files. I can't figure out what's the problem.
  • Author
  • Localization

sigroon365, posted Mon Mar 07, 2016 3:41 pm (11836)


This is the error message.
Image

And here is my code. What't wrong with it?
Code:
set OUTPUT_ARCHIVE_IDX string "LINKDATA_NEW.IDX"
set OUTPUT_ARCHIVE_BIN string "LINKDATA_NEW.BIN"

log MEMORY_FILE  0 0
log MEMORY_FILE2  0 0

for FILES = 0
    scanDir "." NAME SIZE
    if NAME == ""
        break
    endif
    open "." NAME
    string NAME     if NAME != OUTPUT_ARCHIVE_IDX
        get OFFSET asize MEMORY_FILE2
        put OFFSET longlong MEMORY_FILE
        put SIZE longlong MEMORY_FILE
        put SIZE longlong MEMORY_FILE
        put 0 longlong MEMORY_FILE

        append
        log MEMORY_FILE2 0 SIZE

        math OFFSET = SIZE

        append
        math FILES 1
    endif
next

get SIZE asize MEMORY_FILE2
log OUTPUT_ARCHIVE_BIN 0 SIZE MEMORY_FILE2

get SIZE asize MEMORY_FILE
log OUTPUT_ARCHIVE_IDX 0 SIZE MEMORY_FILE
  • Author
  • Localization

aluigi, posted Mon Mar 07, 2016 5:07 pm (11838)


I guess it's caused by the amount of files, quickbms is a 32bit application and so it's limited to use about 3Gb of memory.
It's enough to use the script without the memory file for BIN:
Code:
set OUTPUT_ARCHIVE_IDX string "LINKDATA_NEW.IDX"
set OUTPUT_ARCHIVE_BIN string "LINKDATA_NEW.BIN"

log MEMORY_FILE  0 0
#log OUTPUT_ARCHIVE_BIN 0 0  # recreate if exists

math OFFSET = 0
for FILES = 0
    scanDir "." NAME SIZE
    if NAME == ""
        break
    endif
    open "." NAME
    string NAME << 2
    if NAME != OUTPUT_ARCHIVE_IDX
        put OFFSET longlong MEMORY_FILE
        put SIZE longlong MEMORY_FILE
        put SIZE longlong MEMORY_FILE
        put 0 longlong MEMORY_FILE

        append
        log OUTPUT_ARCHIVE_BIN 0 SIZE
        math OFFSET SIZE
        append
        math FILES 1
    endif
next

get SIZE asize MEMORY_FILE
log OUTPUT_ARCHIVE_IDX 0 SIZE MEMORY_FILE
  • Author
  • Localization

sigroon365, posted Mon Mar 07, 2016 11:46 pm (11844)


aluigi wrote:
I guess it's caused by the amount of files, quickbms is a 32bit application and so it's limited to use about 3Gb of memory.
It's enough to use the script without the memory file for BIN:
Code:
set OUTPUT_ARCHIVE_IDX string "LINKDATA_NEW.IDX"
set OUTPUT_ARCHIVE_BIN string "LINKDATA_NEW.BIN"

log MEMORY_FILE  0 0
#log OUTPUT_ARCHIVE_BIN 0 0  # recreate if exists

math OFFSET = 0
for FILES = 0
    scanDir "." NAME SIZE
    if NAME == ""
        break
    endif
    open "." NAME
    string NAME << 2
    if NAME != OUTPUT_ARCHIVE_IDX
        put OFFSET longlong MEMORY_FILE
        put SIZE longlong MEMORY_FILE
        put SIZE longlong MEMORY_FILE
        put 0 longlong MEMORY_FILE

        append
        log OUTPUT_ARCHIVE_BIN 0 SIZE
        math OFFSET SIZE
        append
        math FILES 1
    endif
next

get SIZE asize MEMORY_FILE
log OUTPUT_ARCHIVE_IDX 0 SIZE MEMORY_FILE


Thanks a lot. However, Linkdata_new.idx's OFFSET is still wrong.
The OFFSET of last file is 275E12BD0h. But int the Linkdata_new.idx, the offset of this file is
D0 2B E1 75.


D0 2B E1 75 D0 2B E1 75 5C 03 00 00 5C 03 00 00
5C 03 00 00 5C 03 00 00 00 00 00 00 00 00 00 00


D0 2B E1 75 02 00 00 00 5C 03 00 00 00 00 00 00
5C 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • Author
  • Localization

aluigi, posted Tue Mar 08, 2016 5:53 pm (11847)


You must use quickbms_4gb_files.exe :)
  • Author
  • Localization

sigroon365, posted Wed Mar 09, 2016 9:19 am (11858)


aluigi wrote:
You must use quickbms_4gb_files.exe :)


Although the game doesn't start, repacking works successfully. Thanks a lot. :D
  • Author
  • Localization

sigroon365, posted Fri Mar 18, 2016 12:45 pm (12058)


aluigi wrote:
You must use quickbms_4gb_files.exe :)


Is there a way to change the name of extracted files to decimal number?
For example,
0000000a.dat => 00000010.dat
0000000b.dat => 00000011.dat
0000000c.dat => 00000012.dat
0000000d.dat => 00000013.dat


Ah, ha! :)

Code:
set NUM 0

for BIN_OFF = 0 != BIN_SIZE

math NUM 1
get NAME BASENAME
string NAME = NUM
string NAME = *.*
  • Author
  • Localization

sigroon365, posted Sat Mar 19, 2016 12:49 am (12069)


Uhm.. :shock: I found something weird. Although ZIP = 0, there are still zipped files.

For example, ZIP of 00000003.sdb is 0.
Image

However, it still zipped!
Image

Can also these kind of files are unpacked?
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.