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.

script dont work with reimport2

Featured Replies

  • Author
  • Localization

gameside, posted Wed Nov 25, 2020 1:47 pm (60586)


Hi, I'm just started working with QuickBMS, so I don't know much about it
I create this script to extract sound from uexp files from a game, it can export and import files with less or equal size, but I cant import bigger files
i know its very messy :) sorry about that

Code:
GETDSTRING UNKNOW 143
GET TEXT_NUM byte
GETDSTRING UNKNOW 87

for i = 1    GET GUID_long  long
   if GUID_long == "33"
      GETDSTRING GUID GUID_long
      GET STRING_long long
      GETDSTRING STRING_text STRING_long
      GETDSTRING UNKNOW 72
   else
      GETDSTRING UNKNOW 67
   endif
next i

GETDSTRING UNKNOW 26
GET OGG_SIZE long
GET OGG_SIZE long
GET UNKNOW longlong
Savepos OFFSET

LOG "file.ogg" OFFSET OGG_SIZE


anyone can help me?
  • Author
  • Localization

aluigi, posted Wed Nov 25, 2020 3:19 pm (60587)


In that specific case you may try reimport3, it's a special mode that you can activate using -r -r -r at command-line.
If you don't know how to do it, use this bat file:
Code:
quickbms.exe -G -w -r -r -r

In short it's made for enlarging the whole archive for putting the new file back in the original position.
  • Author
  • Localization

saeid0034, posted Wed Nov 25, 2020 5:24 pm (60592)


aluigi wrote:
In that specific case you may try reimport3, it's a special mode that you can activate using -r -r -r at command-line.
If you don't know how to do it, use this bat file:
Code:
quickbms.exe -G -w -r -r -r

In short it's made for enlarging the whole archive for putting the new file back in the original position.

i test it, and its worked well
one other thing, as you know file size repeat two time in uexp files
Image
how can I update both of them in re-import
  • Author
  • Localization

gameside, posted Wed Nov 25, 2020 6:11 pm (60594)


aluigi wrote:
In that specific case you may try reimport3, it's a special mode that you can activate using -r -r -r at command-line.
If you don't know how to do it, use this bat file:
Code:
quickbms.exe -G -w -r -r -r

In short it's made for enlarging the whole archive for putting the new file back in the original position.

thanks its worked
  • Author
  • Localization

aluigi, posted Wed Nov 25, 2020 6:41 pm (60597)


saeid0034 wrote:
one other thing, as you know file size repeat two time in uexp files
how can I update both of them in re-import

That's the only problem of the reimport feature when we have a table supporting compression and we meed a comparison of the compressed and uncompressed size for handling the file.
Usually there is often another field saying if a file is compressed, probably also here, but in case there is none the following solution may work:
Code:
get ZSIZE long
get SIZE long
comtype copy
clog "output.dat" OFFSET ZSIZE SIZE
There are two different variables because if you use the same, only the second field will be changed.

Another solution is using the optional field of Log instead of CLog:
Code:
get ZSIZE long
get SIZE long
log "output.dat" 8 SIZE 0 SIZE

It's a particular situation that can't be automatically handled by quickbms because the reimport mode just work on the arguments of Log and Clog.
  • Author
  • Localization

saeid0034, posted Wed Nov 25, 2020 7:46 pm (60602)


aluigi wrote:
Another solution is using the optional field of Log instead of CLog:
Code:
get ZSIZE long
get SIZE long
log "output.dat" 8 SIZE 0 SIZE

Thank you, its did the job
  • Author
  • Localization

gameside, posted Wed Nov 25, 2020 11:02 pm (60607)


I face another problem, I hope someone help me again
I successfully get string and ogg from most of my uexp files
Image
but in some files, QuickBMS give me following error
Image
text string are different in these files
Image

what can I do to get text from these files too?
Thanks
  • Author
  • Localization

aluigi, posted Thu Nov 26, 2020 8:08 am (60609)


It's a feature of the Unreal Engine for storing utf16 strings, replace the following:
Code:
      GET STRING_long long
      GETDSTRING STRING_text STRING_long
with:
Code:
      GET STRING_long signed_long
      if STRING_long < 0
        math STRING_long n STRING_long
        math STRING_long * 2
        GETDSTRING STRING_text STRING_long
        set STRING_text unicode STRING_text
      else
        GETDSTRING STRING_text STRING_long
      endif
  • Author
  • Localization

gameside, posted Thu Nov 26, 2020 12:15 pm (60623)


aluigi wrote:
It's a feature of the Unreal Engine for storing utf16 strings, replace the following:
Code:
      GET STRING_long long
      GETDSTRING STRING_text STRING_long
with:
Code:
      GET STRING_long signed_long
      if STRING_long < 0
        math STRING_long n STRING_long
        math STRING_long * 2
        GETDSTRING STRING_text STRING_long
        set STRING_text unicode STRING_text
      else
        GETDSTRING STRING_text STRING_long
      endif

thanks, its worked perfect
I found something else I could not understand in QuickBMS
why this script print same?
Code:
set SIGN_1      binary "\x0A"  
set SIGN_2      binary "\x09" 

if SIGN_1 == SIGN_2
   print "same"
else
   print "different"
endif
  • Author
  • Localization

aluigi, posted Thu Nov 26, 2020 3:50 pm (60632)


Definitely a bug, I'm going to check and fix it in the upcoming version of quickbms.

*edit* In short is myisdechex_string() that invokes readbase() which ignores the non-textual chars and therefore says that it's a number.
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.