FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   XTool - Successor of ZTool (https://fileforums.com/showthread.php?t=101729)

Razor12911 01-06-2018 09:28

Quote:

Originally Posted by doofoo24 (Post 471375)
what about far cry primal and watch dog ?

I heard Far Cry Primal uses modified lz4 and as for Watch Dogs, I have no idea how to use xcompress library in Delphi otherwise detecting its streams is easy.

LuzhinE 01-06-2018 09:40

If I like that idea, here I leave the game for tests thanks Razor12911

MGSV Ground Zeroes

Simorq 01-06-2018 09:42

Hi Razor12911
Unreal Engine 3 LZO may be added in the future?
XCOM 2, Outlast 2, Get Even

alfredd31 01-06-2018 11:18

to doofoo24: what liblz4 did you use for cod aw?

alfredd31 01-06-2018 11:47

I already tried this one, it doesn't expand anything (Only tried imagefile1.pak). Did you use xtool.ini?
I used this:
packcmd = xtool.exe e:precomp:t4:v:c32:lz4 - - <stdin> <stdout>

By the way, note that you can find some of my repacks - Quantum Break (23.3 Gb) and outlast 2 (10.2Gb) on ygg if you are interested. You can erase this, I'm sure it's against the rules of the forum.

Razor12911 01-06-2018 12:11

Quote:

Originally Posted by alfredd31 (Post 471386)
I already tried this one, it doesn't expand anything (Only tried imagefile1.pak). Did you use xtool.ini?
I used this:
packcmd = xtool.exe e:precomp:t4:v:c32:lz4 - - <stdin> <stdout>

By the way, note that you can find some of my repacks - Quantum Break (23.3 Gb) and outlast 2 (10.2Gb) on ygg if you are interested. You can erase this, I'm sure it's against the rules of the forum.

@everyone

Please make sure the command line is correct first.

"e:precomp:t4:v:c32:lz4" is heavily incorrect

alfredd31 01-06-2018 12:16

Well, it seems it works with e:precomp:t100p:lz4 with .ff files. For pak files it's ok too. (except for soundfiles which can't be expanded).

Razor12911 01-06-2018 12:21

Quote:

Originally Posted by alfredd31 (Post 471390)
Well, it seems it works with e:precomp:t100p:lz4 with .ff files. Doesn't seem to work with .pak files though.

imagefile59.pak
Code:

Compressed 1 file, 153,906,476 => 312,811,044 bytes. Ratio 203.25

alfredd31 01-06-2018 12:22

bik reencoded at 70% indeed. Do you think you could get sth much better? probably not. I did nothing special just used srep and lolz.

KaktoR 02-06-2018 03:27

Quote:

Originally Posted by alfredd31 (Post 471386)
I already tried this one, it doesn't expand anything (Only tried imagefile1.pak). Did you use xtool.ini?
I used this:
packcmd = xtool.exe e:precomp:t4:v:c32:lz4 - - <stdin> <stdout>

As razor sayd, options are incorrect.

This one is correct
Code:

packcmd = xtool.exe e:precomp:t4,v,c32m:lz4 - - <stdin> <stdout>
{options} must be seperated by a comma (,), not a colon (:).

And you forgot a "m" for chunk size.

elit 02-06-2018 13:54

Quote:

Originally Posted by Razor12911 (Post 471339)
Update available

- fixed 2gb+ input issue... (int32 instead of int64 :()

Lol I know alright, same trap happened to me with my rawinjector ^_^.

Quote:

Originally Posted by Razor12911 (Post 471374)
Edit xtool.ini, add all the dat files in there

[CODE][Dunia2]
File1=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\common.dat
File2=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\ige.dat
...

Now this is nice step forward, to support files like this that are perhaps not easy to detect. I would love to see this going even further in the future, where user could script offsets and data reading with few commands. Example:
Code:

HEAD "0f3b4c5b"
SKIP 125
CMPSZ 8
DECMPSZ 8
READ CMPSZ DECMPSZ

Above example would mean: find first/next header with "0f3b4c5b" bytes, then skip 125 bytes, then read 64bit integer that is compressed size, then same for decompressed size, then read and precomp next CMPSZ bytes with above info, repeat until EOF.

Idea is that most engines have similar structures, there are some headers, some data to skip, there is CMP and DECMP sizes info in between and then actual compressed data chunks. So instead of keeping maintenance for every new game/engine which rely on Razor to be here for us and kind enough to work on updates, this would make xtool more forward compatible for the future games without needing to constantly updating it. At least until codecs API's change. I know it will not be enough for every future game but it should cover plenty of them.

Quote:

Originally Posted by KaktoR (Post 471404)
This one is correct
Code:

packcmd = xtool.exe e:precomp:t4,v,c32m:lz4 - - <stdin> <stdout>
{options} must be seperated by a comma (,), not a colon (:).

I apologize for stupid question but was there specific reason for using extra "precomp" word, aka e:precomp... instead of just e:... d:... as was in ztool? To me it seems redundant as e: and d: already imply default behavior(encode vs decode) and precomp seem'd to me at first confused with precomp tool by schnaader. Also using different separators, aka ',' and ':' for specific areas of cmd make it prone to type error, as happened to me before and I seem to be not the only person. Pure ':'s in ztool were fine and easier for inclussion with other utilities IMO. BTW I am not complaining, this tool is fantastic and ultimate, just being curious about new design.

KaktoR 02-06-2018 13:59

Don't ask me, ask razor why :D

Andu21 02-06-2018 14:34

Quote:

Originally Posted by elit (Post 471409)
I apologize for stupid question but was there specific reason for using extra "precomp" word, aka e:precomp... instead of just e:... d:... as was in ztool? To me it seems redundant as e: and d: already imply default behavior(encode vs decode) and precomp seem'd to me at first confused with precomp tool by schnaader.

Only explanation i find is that xtool won't be limited to pre-compression only. I might be talking gibberish here and it's just a redundant word as you say. ;)

ShivShubh 02-06-2018 20:38

Quote:

Originally Posted by Andu21 (Post 471411)
Only explanation i find is that xtool won't be limited to pre-compression only. I might be talking gibberish here and it's just a redundant word as you say. ;)

Razor certainly has plans to implement already exisiting compressors into xtool like razor,lolz etc... with stdio support to make it a universal tool but I might be also talking gibberish here, only Razor knows :confused:

dixen 03-06-2018 02:28

Quote:

Originally Posted by Razor12911 (Post 471374)
Edit xtool.ini, add all the dat files in there

Code:

[Dunia2]
File1=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\common.dat
File2=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\ige.dat
File3=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\patch.dat
File4=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\patch_german.dat
File5=C:\Program Files (x86)\Far Cry 3 Complete Collection\Far Cry 3\data_win32\shadersobj.dat

something like this then use lzo codec in arc.ini

Code:

[External compressor:xprecomp]
header    = 0
packcmd  = xtool.exe e:precomp:t4:lzo - - <stdin> <stdout>
unpackcmd = xtool.exe d:precomp:t4 - - <stdin> <stdout>

Code:

Compressed 12 files, 700,791,484 => 1,143,391,721 bytes. Ratio 163.16%
Compression time: cpu 1.31 sec/real 104.83 sec = 1%. Speed 6.68 mB/s

Code:

Extracted 12 files, 1,143,391,721 => 700,791,484 bytes. Ratio 163.16%
Extraction time: cpu 1.98 sec/real 72.79 sec = 3%. Speed 9.63 mB/s

Same applies to Far Cry 4 and Far Cry 5, except with Far Cry 5, use lz4

Thamks but fc3_main.dat (3.2gb) not decompressing(((


All times are GMT -7. The time now is 00:43.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com