#1
|
|||
|
|||
LZ_Scan
LZ_Scan is a small scripted utility that consist of several tools and is primarily based on Razor's xtool. It is a reliable alternative to GFS(Game File Scan). Output size difference in this tool will be exactly what you get when using xtool on game data with same settings. It is also more stable than GFS. I posted it once somewhere, now I decided to update script and post it in its own thread. Supported formats are same as: zlib/deflate, lz4, lzo, zstd, crilayla as well as unreal and unity engines.
Usage(for 'other codecs'): Run .bat file, type one of available codecs(z-xxx is based on ztool, x-xxx is based on xtool), enter extra parameters or skip with ENTER, enter file or directory path to scan, wait for finish, compare size differences. Remember you can use file masks to scan only specific files, eg: "C:\gamefolder\*.pak" EDIT2: New update. Include uelr(Unreal decmp tool) and AFR(Anvil forge decmp tool). These however write temporarily to disk within lz_scan directory(therefore consider where to place it). AFR only need input file as output is written into NULL, because it display all necessary info on its own. Uelr need both input and output tmp file for lz_scan to be able to measure size differences. Temp files are automatically deleted. EDIT3: Updated to include latest version of xtool(v0.4.4). This version contain additional batch scripts you can use to test lz4, zstd and oodle on all levels, methods and libraries included. For example: Code:
test_lz4.bat file.ext In case of zstd, all libs will be tested as well. In case of lz4, again all libs will be tested in both standard and lz4hc mode. Additional libraries can be copied and added to batch script. Included ones are all that were available on github in compiled dll form(for both lz4 and zstd). In fact, with these codecs this is now the recommended method to find out compression, default .bat is mainly for zlib/deflate/crilayla or specific engines. EDIT4: New and rewamped version! Lot of changes. This version make it easier to figure out compression with support of deep scan based on xtool's 'verbose' command and default scanner. Contain ALL available zstd and lz4 libraries(I compiled missing ones myself) from github to this day! Readme.txt will keep track of version and info, I decided to reset this to v1.0 despite previously releasing higher number for many reasons. EDIT5: New version 1.1, fixes x-lzo in cli script and add 'deepscan' script for it. lz_scan_v1.1.7z Last edited by elit; 18-03-2022 at 04:32. |
The Following 22 Users Say Thank You to elit For This Useful Post: | ||
-NORO- (14-01-2018), 78372 (13-01-2018), BLACKFIRE69 (12-09-2019), Cesar82 (17-03-2022), COPyCAT (24-01-2018), dixen (07-07-2019), doofoo24 (13-01-2018), EzzEldin16 (14-01-2018), ffmla (15-01-2018), Jiva newstone (13-01-2018), KaktoR (15-02-2018), L0v3craft (30-08-2018), MagixZ (06-08-2019), nickwazhere2012 (14-01-2018), oltjon (13-01-2018), PsYcHo_RaGE (09-07-2019), rambohazard (13-01-2018), ramydarkness (19-03-2022), ScOOt3r (13-03-2022), shazzla (14-01-2018), Simorq (13-01-2018), vint56 (14-01-2018) |
Sponsored Links |
#2
|
|||
|
|||
Replace start.bat with this one, its better.
[Removed = obsolete.] Last edited by elit; 06-07-2019 at 06:28. |
The Following 5 Users Say Thank You to elit For This Useful Post: | ||
78372 (17-01-2018), COPyCAT (24-01-2018), EzzEldin16 (17-01-2018), oltjon (17-01-2018), Simorq (16-01-2018) |
#3
|
|||
|
|||
You start with "start.bat". Then:
procedure.png - First you type one of the available methods, like I did "pzlib:high" for this game file as example. - Then path to file or directory as shown(use quotes for paths with spaces, also tab completition works just like in shell here so you dont have to type everything). - Then you wait and when done you compare 2 size differences as shown in picture example. If second number is bigger it mean inflation worked for this. If same or too close you either got wrong method, game is not compressed or is not supported by ztool. - You can also see overall time it took in seconds as below. - Finally you can start all over again or quit. Last edited by elit; 17-01-2018 at 12:30. |
The Following 2 Users Say Thank You to elit For This Useful Post: | ||
COPyCAT (24-01-2018), EzzEldin16 (18-01-2018) |
#4
|
|||
|
|||
Can we mofify it for afr, uelr etc.
|
#5
|
|||
|
|||
I want to include them as well, when I have more time - in next version. This will also make it more universal not just for ztool.
|
The Following 3 Users Say Thank You to elit For This Useful Post: | ||
#6
|
|||
|
|||
this would be great step.
|
#7
|
|||
|
|||
Unfortunately I found that neither uelr nor afr support stdio/pipelining, which without further coding is impossible to implement AFAIK.
EDIT: I am working on it already, it will be done but will use disk writes. Last edited by elit; 15-02-2018 at 06:17. |
#8
|
|||
|
|||
New version released. Include uelr, AFR and script enhancements. Don't say I never loved you
![]() |
The Following 4 Users Say Thank You to elit For This Useful Post: | ||
#10
|
|||
|
|||
Fixed non recursing subdirectories on mask. New file upped.
EDIT: There is still problem with parsing, will update soon. EDIT2: Done. Hopefully now for good. EDIT3: Turned out 7z already have cleaner solution with -r0 option. Upped again. Last edited by elit; 20-02-2018 at 12:45. |
#11
|
||||
|
||||
It would be good if you could add output.txt which lists all files contain streams.
__________________
Haters gonna hate
|
#12
|
|||
|
|||
Quote:
To know which file have stream individually I would have to process them one by one and compare output. That would be too much for a simple shell script that use tar to process all in one stream. Also slower. You can use file mask to check files with specific extension only, or check single file as that mean all others with same extension will be processable. |
#13
|
|||
|
|||
New version 2.0 in the first post. Added x-tool 0.12 support. I have not tested oodle and crilayla and although it should work, let me know if it doesn't.
|
The Following User Says Thank You to elit For This Useful Post: | ||
ffmla (06-07-2019) |
#14
|
|||
|
|||
can I check the file immediately for all possible encryption? or each method separately only?
|
#15
|
|||
|
|||
Quote:
1, test single smaller file known to be likely compressed first to save time 2, run several scripts at once in parallel, each doing its own specific cmp test |
![]() |
Thread Tools | |
Display Modes | |
|
|