FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   Newbie Question Thread (https://fileforums.com/showthread.php?t=105883)

KaktoR 01-03-2026 05:06

It is possible to include this file in Setup.dll, and for some installers it is even possible to include Setup.dll itself into Setup.exe so you have only Setup.exe + compressed archives.

Setup.dll is a FreeArc archive. You can extract it with FreeArc normally (change DLL extension to ARC).

SergeyVeter 01-03-2026 05:16

Quote:

Originally Posted by KaktoR (Post 509498)
It is possible to include this file in Setup.dll, and for some installers it is even possible to include Setup.dll itself into Setup.exe so you have only Setup.exe + compressed archives.

Setup.dll is a FreeArc archive. You can extract it with FreeArc normally (change DLL extension to ARC).

Thank you very much! I'll look into it and let you know if I have any questions.)

kj911 03-03-2026 08:22

Could someone write a good guide on how to make a CLS filter for FreeArc??

No, I don't mean the "CLS-Generator" solutions, unfortunately they don't work in all many cases.

Now, let's assume we have this:

compressor.c /source code or alternative EXE file/
CLS source code package from FreeArc. + MinGW compiler.

What do we need to modify in the *.c source code during compilation so that, upon receiving a "cls-cmp.dll" file at the end of the process, it works as a DLL with FreeArc, either as an decompressor only or with full functionality, when using the "-mcmp..." switch during compression.

To make things more complicated, let's assume that this is just the syntax (*.c or EXE):

compressor.exe e/d in out

What should we write in "cls.h" or other "simple*.cpp" files?

One possible case is that we will only have a *.dll file, nothing else is needed, it can be used already.

While the other, if only an EXE file is available, how do we "bind" the cls-*.dll file to our file so that the given compressor can work in STDIO mode? (no tmp files are written during operations.) Or do we need to modify the EXE as well? (see: the Razor case.)

USSRCoder 08-03-2026 15:24

Quote:

Originally Posted by kj911 (Post 509518)
Could someone write a good guide on how to make a CLS filter for FreeArc??

No, I don't mean the "CLS-Generator" solutions, unfortunately they don't work in all many cases.

Now, let's assume we have this:

compressor.c /source code or alternative EXE file/
CLS source code package from FreeArc. + MinGW compiler.

What do we need to modify in the *.c source code during compilation so that, upon receiving a "cls-cmp.dll" file at the end of the process, it works as a DLL with FreeArc, either as an decompressor only or with full functionality, when using the "-mcmp..." switch during compression.

To make things more complicated, let's assume that this is just the syntax (*.c or EXE):

compressor.exe e/d in out

What should we write in "cls.h" or other "simple*.cpp" files?

One possible case is that we will only have a *.dll file, nothing else is needed, it can be used already.

While the other, if only an EXE file is available, how do we "bind" the cls-*.dll file to our file so that the given compressor can work in STDIO mode? (no tmp files are written during operations.) Or do we need to modify the EXE as well? (see: the Razor case.)

cls - It's poorly documented, so I went a different route. You'll still have to run a precompressor. So I took the existing source code (Precomp v0.4.7 https://github.com/schnaader/precomp-cpp/) and added my own formats. I'd also be interested in learning about cls filters, but I was able to do it faster using Precomp v0.4.7. If you're working in Pascal, you can do the same with xtool.

The console is probably (!) needed for 32/64 compatibility, no more. You can't it do without temporary files if you're compressing 20GB and you only have 8GB.
(I'm looking at it from the perspective of solid archives. If you're streaming data, the console will help you get rid of temporary files.)

FarhanFaudTahix 10-03-2026 02:00

hi is there any way to unpack lolz archives from cli without using the cls plugins. thanks

wrathma 10-03-2026 02:33

^^
to decompress lolz archive you can use cls_lolz_x64.exe directly without cls dll. if youre trying to unpack fitgirl archives this is how you do it.

Code:

[External compressor:magic2]
header    = 0
unpackcmd  = "cls-magic2_x64" d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

same goes for unpacking any other version of lolz without cls dll. this uses stdin/out. if you want to unpack from file you have to something like this.

Code:

cls_lolz_x64.exe d < "compressed_data.lolz" > "unpacked_output"

FarhanFaudTahix 10-03-2026 06:04

Quote:

Originally Posted by wrathma (Post 509555)
^^
to decompress lolz archive you can use cls_lolz_x64.exe directly without cls dll. if youre trying to unpack fitgirl archives this is how you do it.

Code:

[External compressor:magic2]
header    = 0
unpackcmd  = "cls-magic2_x64" d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

same goes for unpacking any other version of lolz without cls dll. this uses stdin/out. if you want to unpack from file you have to something like this.

Code:

cls_lolz_x64.exe d < "compressed_data.lolz" > "unpacked_output"

thanks for your help but i am still having the same issue while unpacking. it shows cls read mapping error. can you help?

wrathma 10-03-2026 06:43

Quote:

Originally Posted by FarhanFaudTahix (Post 509558)
thanks for your help but i am still having the same issue while unpacking. it shows cls read mapping error. can you help?

have you removed the original cls dll ?

wareck 10-03-2026 20:49

you must have admin right to unpack, that's why you have error mapping.
Open command with administrator level

SergeyVeter 11-03-2026 01:57

Quote:

Originally Posted by KaktoR (Post 509498)
It is possible to include this file in Setup.dll, and for some installers it is even possible to include Setup.dll itself into Setup.exe so you have only Setup.exe + compressed archives.

Setup.dll is a FreeArc archive. You can extract it with FreeArc normally (change DLL extension to ARC).

Thank you, it worked!

SergeyVeter 12-03-2026 06:59

KaktoR help)
 
Quote:

Originally Posted by KaktoR (Post 509498)
It is possible to include this file in Setup.dll, and for some installers it is even possible to include Setup.dll itself into Setup.exe so you have only Setup.exe + compressed archives.

Setup.dll is a FreeArc archive. You can extract it with FreeArc normally (change DLL extension to ARC).

Hi KaktoR! Could you please tell me which script I can use to maximize the compression of Cyberpunk 2077 using DiskSpan? I also have an idea. Do you think it would work? I want to combine two different versions of the game (2.13 and 1.63) into a single archive. Do you think the file size will be smaller that way?

wrathma 13-03-2026 16:32

Quote:

Originally Posted by SergeyVeter (Post 509577)
Hi KaktoR! Could you please tell me which script I can use to maximize the compression of Cyberpunk 2077 using DiskSpan? I also have an idea. Do you think it would work? I want to combine two different versions of the game (2.13 and 1.63) into a single archive. Do you think the file size will be smaller that way?

use this xtool config to decompress game data and compress them with srep+lolz to maximize compression.

merging two different version of a game into a single archive is not a good idea. you shouldnt even compress all game data into a single archive, rather split the files up into multiple folder according to datatype and compress those folders individually using best methods for that datatype. or use arc.groups.

Dunnowho69 13-03-2026 20:23

https://rootz.so/d/iZDH6

Can someone help me with which oodle lib to use with this....it's from doom the dark ages

KaktoR 13-03-2026 20:57

Quote:

Originally Posted by Dunnowho69 (Post 509585)
https://rootz.so/d/iZDH6

Can someone help me with which oodle lib to use with this....it's from doom the dark ages

Code:

Library loaded: v2.9.10\oo2core_9_win64_2.dll

Streams: 1573 / 1576
Time: 00:00:12 (CPU 00:01:00)

Size: 76,6 MB >> 134 MB


SergeyVeter 14-03-2026 01:15

Quote:

Originally Posted by wrathma (Post 509583)
use this xtool config to decompress game data and compress them with srep+lolz or srep+rzs to maximize compression.

merging two different version of a game into a single archive is not a good idea. you shouldnt even compress all game data into a single archive, rather split the files up into multiple folder according to datatype and compress those folders individually using best methods for that datatype. or use arc.groups.

Thanks, but I'm already trying it, the experiment itself is interesting)


All times are GMT -7. The time now is 10:52.

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