FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   Light Installer Script (LIS) - DiskSpan_GUI (https://fileforums.com/showthread.php?t=103408)

Cesar82 02-04-2020 16:22

Light Installer Script (LIS) - DiskSpan_GUI
 
2 Attachment(s)
I read some user comments here on the forum looking for the simplest installer possible, but with the features present in CIU and ASIS.
Light Installer Script (LIS) has the same compressors as CIU/ASIS, but with the simplicity of a basic Inno Setup installer, ideal for beginners.
Remove ";" from the beginning of the ;#define Is64BitOnly line in the InstallerScript file if the game is only compatible with 64-bit systems.
Others settings and also the language definition are made within the *.iss script through ISPP definitions.
Special thanks to all the developers of the compressors and librarys used in this installer.
I hope it will be useful to users looking for compression only, not design.
Code:

Changelog:

VERSION: 1.0.1.0 - Release based on CIU version 3.0.0.1.b9
- Added support for Persian (Farsi) language to Light Installer Script (Thanks to Gehrman for collaboration).
- Added support for skinsharp skins (SkinH.dll library by Shegorat) to Light Installer Script.
  >> The library of the skinsharp does not support special characters like cyrillic characters.
  >> So languages like Russian and Japanese and Persian should get broken using skinsharp.
- Fixed some minor bugs.

VERSION: 1.0.0.9 - Release based on CIU version 3.0.0.1.b9
- Updated support to DiskSpan_GUI 2.0.0.0
- Added optional second ProgressBar.
- Added polish language support.

VERSION: 1.0.0.8 - Release based on CIU version 3.0.0.1.b8.u2
- Removed COMPRESSOR_GUI/DiskSpan.bat support (Only DiskSpan_GUI is supported).
- Removed support for internal extraction data settings (Removed internal and external Setup.ini)
- Removed CreateDLL function (Only needed for DiskSpan.bat/UltraARC.exe).
- Fixed some minor bugs.

VERSION: 1.0.0.7 - Release based on CIU version 3.0.0.1.b7.u5
- Added support for XTool 2020 to LIS.
- Added LIS compatibility with DiskSpan_GUI tool.
  >> Now an external DLL with the compressor files is needed to perform the extraction.
  >> When compressing the game using the DiskSpan_GUI tool, the DLL will be created automatically with only the compressors needed to perform the extraction.
  >> If you compress using another tool such as UltraArc or DiskSpan.bat, you will need to create the DLL manually, selecting in the COMPRESSOR_GUI.exe the compressors you want to include.
  >> Then click on the button "Create DLL" or enable the line ";#define CreateDLL" at the beginning of the CIU script (The compressors defined in COMPRESSOR_GUI.exe will be used).
- Fixed some minor bugs.

VERSION: 1.0.0.6 - Release based on CIU version 3.0.0.1.b7.u3
  - Updated compressor/decompressor "ZStandard" (ZSTD) from v1.4.4 to v1.4.5 (x64 + x86).
  - Fixed an error that did not include compressors/decompressors when selecting RazorTools tools that are specific to one of the games.

VERSION: 1.0.0.5 - Release based on CIU version 3.0.0.1.b7.u2
  - Fixed CRC error when performing the extraction.
    >> Does not match checksum! (ERROR: <FileName> CRC Check) (FreeArc error code -12)
    >> The error was in the "COMPRESSOR_GUI.exe" file that displayed errors when using compressors XTool or ZTool. 
  - Added functionality to use the "CLS-DISKSPAN.dll" original build by Razor12911 just replacing the DLL in the folder.

VERSION: 1.0.0.4 - Release based on CIU version 3.0.0.1.b7.u1
  - Updated UltraARC to version 2900 R9.
  - Fixed the "LabelCurrFileName" label to display the correct path of the file being extracted.
  - Fixed progress bar to display the bar by the amount of file "Data#.bin.001" when not using the key Size=.
    >> The Size= key used in the "Records.ini" file or in the [ExtractSettings] section of the "Setup.ini" file.

- Removed "PMT" from LIS (Reason: "MTX" has the same functionality).
- Removed "PrecompX" from LIS (Reason: "MTX" has the same functionality).
- Added "MTX" v5.0 to LIS compression methods like: precomp, mpzapi, razor, lolz.
  >> Use in DiskSpan.bat: precomp_mtx, mpzapi_mtx, razor_mtx, lolz_mtx.
  >> More information about MTX at: https://fileforums.com/showthread.php?t=103664
 
- Added new RazorTools decompression method ue4dt/UE4DT "Unreal Engine 4 Decryption Tool".
  >> More information about ue4dt.exe at: https://www.fileforums.com/showthread.php?t=103145
  >> DiskSpan.bat defined method like using:
  >> set GAME[1].METH[1]=ue4dt:m2:k0x5DD20432F2AD810071033FC3F925FFDFD647514524D0A0D222E17D76BAF57BFD+lzma:ultra
  >> ue4dt.exe e|d -m# -c# -b# -k# <stdin> <stdout>
    >> -m = method (1 = games that use borderlands3, street figher v... format, 2 = games that use rune ii format)
    >> -c = chunk size
    >> -b = block count
    >> -k = key in hexadecimal. 

- Added new "RazorTools" decompression method "Metro Exodus", "Project CARS 3", "Saints Row 3 Remastered", "Death Stranding"
  >> Currently LIS supports all these Razor12911 tools.
  >> FIFA 19 Cas Decryption Tool + Precompressor https://fileforums.com/showthread.php?t=102461
  >> Project CARS 2|3 Bff Decryption Tool        https://fileforums.com/showthread.php?t=102524
  >> Death Stranding Decryption Tool            https://fileforums.com/showthread.php?t=103699 
  >> Metro Exodus Precompression Tool            https://fileforums.com/showthread.php?t=103563 
  >> SRTTR Precompression Tool                  https://fileforums.com/showthread.php?t=103546 
  >> LZO Precompressor (Side project)            https://fileforums.com/showthread.php?t=102615 
  >> LZX Precompressor (Side project)            https://fileforums.com/showthread.php?t=102675
  >> ZSTD Precompressor (Side project)          https://fileforums.com/showthread.php?t=102599
  >> Unreal Engine 4 Decryption Tool            https://fileforums.com/showthread.php?t=103145

VERSION: 1.0.0.3 - Release based on CIU version 3.0.0.0.u9/3.0.0.1.b6
  - Added Hungarian language to Light Installer Script.
  - Added checking if executable exists to create shortcuts.
  - Added language checking for files to be extracted depending on the installer's chosen language.
  - Added support for ISSKin and VCLStyles on installation and uninstallation.
  - Added custom SelectFolder form to fix errors in some skins.
  - Updated DiskSpan library to version R3 (Modifyed version).
  - Fixed PMT for RAZOR and MPZ compressors.
  - Fixed errors related to the size parameter for correct percentage of the progress bar during the extraction.
  - Added an option to make it possible to use the internal DiskSpan RequestDisk (Optional) if extraction errors occur.
    >> If errors happen you can remove the ";" line ";#define INTERNAL_DiskSpan_RequestDisk" to use the internal RequestDisk of DiskSpan library.
    >> This makes it possible to check if the error is due to using RequestDisk in the script.
  - Added ZSTDRec precompressor option separately in "COMPRESSOR_GUI.exe".

VERSION: 1.0.0.2 - Release based on CIU version 3.0.0.0.u8/3.0.0.1.b5 (like the previous version)
  - Fixed size of the game that did not work above 4 GB (Include Calc.exe).
  - Added option Rezizable to set resizable style (Supported only with Inno Setup 6).
  - Fixed errors when compiling with Inno Setup 5.
  - Fixed Transparency of the logo when compiled with Inno Setup 5.
  - Fixed the use of PMT for RAZOR and MPZ that was not working before.
  - Fixed Inno Setup 6 messages DiskSpaceGBLabel, DiskSpaceMBLabel in Portuguese (Brasil) language.

VERSION: 1.0.0.1 - Release based on CIU version 3.0.0.0.u8/3.0.0.1.b5
  - Updated decompressor RAR (UnRAR.dll) from v5.80 to v5.90

  - Added support for "PMT - Parallel Multithreaded Encoder/Decoder" for "RAZOR" and "MPZ" compressor.
    >> PMT is a 4x4 like algorithm to make everything run parallelly.
    >> You can run any compressor/encoder that supports stdio/stdin/stdout or even nothing.
    >> The program can make a single threaded compressor multithreaded by using blocks, just like 4x4.
    >> For more information visit: https://fileforums.com/showthread.php?t=103230

VERSION: 1.0.0.0 - Release based on CIU version 3.0.0.0.u7/3.0.0.1.b4

https://i.imgur.com/zvZzisW.png
https://i.imgur.com/7gkIBn6.png
https://i.imgur.com/T2dsWUX.png
https://i.imgur.com/htvHIIN.png
https://i.imgur.com/vVJp5pG.png

P.S: The current version of the "Light Installer Script" must be used together with the "DiskSpan_GUI" (by Cesar82) that comes with the source code.

INFO: Download DiskSpan_GUI (Last Version) and extract the "COMPRESSOR" folder to the Light Installer Script SRC folder (Along with InstallerScript.iss).

Cesar82 02-04-2020 16:23

LIGHT INSTALLER - Tools
 
2 Attachment(s)
Light Installer script can be compiled with Inno Setup 5.57 or newer.
I recommend using Inno Setup 6 repack (Updated to v6.05).
To compress the game files use the "UltraArc/DiskSpan" compressor in the attachment to this post.
Others tools can use the same tools available on the CIU thread.
https://www.fileforums.com/showthread.php?t=102510

Cesar82 02-04-2020 16:23

LIGHT INSTALLER - Previous Version
 
10 Attachment(s)
Previous version of Light Installer.
Light Installer version 1.0.0.1/1.0.0.2 is compatible with the UltraArc/DiskSpan tools from the file "_Tools (2020-04-24) .7z" (Removed)
Light Installer version 1.0.0.3 is compatible with the UltraArc/DiskSpan files from post #2.
Code:

UltraARC 2900 R7 FULL (DISK SPAN R3) [2020-06-11].7z
P.S:
- Light Installer version 1.0.0.4 has a "CRC check" error when performing the extraction when using XTool or ZTool.
- Light Installer version 1.0.0.5 there are errors when using RazorTools tools (only for specific ones for a game).
- Light Installer version 1.0.0.8 compatible with DiskSpan_GUI 1.0.0.5 in post #2.

Files moved from the main post:
Code:

Light Installer Script 1.0.0.0 (296 views)
Light Installer Script 1.0.0.1 (194 views)
Light Installer Script 1.0.0.2 (200 views)
Light Installer Script 1.0.0.3 (825 views)
Light Installer Script 1.0.0.4 (128 views)
Light Installer Script 1.0.0.5 (201 views)
Light Installer Script 1.0.0.6 (268 views)
Light Installer Script 1.0.0.7 (247 views)
Light Installer Script 1.0.0.8 (1004 views)
Light Installer Script 1.0.0.9 (501 views)


ff20 03-04-2020 03:47

Thanks, Cesar82

This might be the toolset I was looking for ^^

btw, what could be the cause of all this false-positives?

https://www.virustotal.com/gui/file/...ec8d/detection

Cesar82 03-04-2020 10:40

Quote:

Originally Posted by ff20 (Post 485113)
Thanks, Cesar82

This might be the toolset I was looking for ^^

btw, what could be the cause of all this false-positives?

https://www.virustotal.com/gui/file/...ec8d/detection

This TOTAL VIRUS (no good) returns many false positives.
I use Kasperky Internet Security (Shareware) here.
The file "Light Installer 1.0.0.0 SRC.7z" has no type of virus.
https://i.imgur.com/yq4QKvz.jpg
Maybe it is because some of the internal libraries have UPX compression (To reduce the size).
If you want, after extracting the .7z file, individually test each file or the folder with the file and let me know which of the internal files is returning a false positive.
You may be able to remove UPX compression if this is the case.

pincoball 22-05-2020 09:45

I've been trying to use Light Installer on a set of archives splitted by DiskSpan (total packed = 12GB, unpacked = 35GB) when it comes to extract them during installation it remains stuck at "Extracting temporary files..."

Then I compared it with ASIS (and the version of DiskSpan dll it comes with) and it works flawlessly.

What I strangely noticed in Light Script (and your modificed DiskSpan dll) while remaining stuck at the caption said before, it just copy the archives slices (data.bin.001, etc.) in the temp folder %TEMP%\is-[random code].tmp while ASIS doesn't. Moreover I wasn't be able to reproduce the problem with smaller archives compressed with same method

So what I ask is if it is some sort of bug and also if I can revert to the original DiskSpan that comes with ASIS (simply changing the declarations of functions didn't seems to work)

KaktoR 22-05-2020 09:57

I also get this freeze. Seems like the installer is freeze for a few seconds/minutes. Just wait, it will work.

Cesar82 22-05-2020 20:19

Light Installer 1.0.0.2
 
Quote:

Originally Posted by KaktoR (Post 485956)
I also get this freeze. Seems like the installer is freeze for a few seconds/minutes. Just wait, it will work.

Updated Light Installer to v1.0.0.2 (REUPLOADED)
I updated the file in the first post. I think it's working now.

Cesar82 22-05-2020 21:18

Quote:

Originally Posted by pincoball (Post 485955)
I've been trying to use Light Installer on a set of archives splitted by DiskSpan (total packed = 12GB, unpacked = 35GB) when it comes to extract them during installation it remains stuck at "Extracting temporary files..."

Then I compared it with ASIS (and the version of DiskSpan dll it comes with) and it works flawlessly.

What I strangely noticed in Light Script (and your modificed DiskSpan dll) while remaining stuck at the caption said before, it just copy the archives slices (data.bin.001, etc.) in the temp folder %TEMP%\is-[random code].tmp while ASIS doesn't. Moreover I wasn't be able to reproduce the problem with smaller archives compressed with same method

So what I ask is if it is some sort of bug and also if I can revert to the original DiskSpan that comes with ASIS (simply changing the declarations of functions didn't seems to work)

If possible, let me know which game you compressed and which method you used.
Did you assume that you are copying Data1.001 data files, etc. to the temporary folder? This should not happen.
Remember that version 1.0.0.1 and 1.0.0.2 is necessary to use CIU Tools 3.0.0.0.u8 (The previous tools may not work).
It is not possible to use the ASIS DiskSpan without redoing much of the code and would also not support the Pause button (While unpacking is paused, time is paused as well).

I updated a new file in the first post...
Try now.

pincoball 23-05-2020 02:57

Thank you! Now it seems to be working
FYI the method I used was
Code:

pzlib+srep:m1f:l512+4x4:b128mb:lzma:a1:mfbt4:64m:fb273:mc1000000:lc8 (Battlefield 3)
I didn't test it but I thought it was due to a couple of calling of CopyCompressorsEx function (that indeed you fixed) after extracting in temp folder of other files and thus not due to DiskSpan itself, but I am not pretty sure

Cesar82 23-05-2020 03:28

Quote:

Originally Posted by pincoball (Post 485965)
Thank you! Now it seems to be working
FYI the method I used was
Code:

pzlib+srep:m1f:l512+4x4:b128mb:lzma:a1:mfbt4:64m:fb273:mc1000000:lc8 (Battlefield 3)
I didn't test it but I thought it was due to a couple of calling of CopyCompressorsEx function (that indeed you fixed) after extracting in temp folder of other files and thus not due to DiskSpan itself, but I am not pretty sure

Yes the problem was in the CopyCompressorsEx lines.
This function is to include external compressors only needing to include an external folder and inform it in Records.ini or Setup.ini (If you don't use records.ini).
Before I was copying everything that was in the same folder as Setup.exe to a temporary folder (Now I fixed it).
Just remove the lines that would have corrected.
Thank you for reporting the error.

I will soon share a new version of the Light installer with the new Cls-DiskSpan.dll library by Razor12911.

Emorian 25-05-2020 19:44

Hi,

How do I incorporate the Records.ini file so that it is not next to it?

Cesar82 25-05-2020 20:13

Quote:

Originally Posted by Emorian (Post 486010)
Hi,

How do I incorporate the Records.ini file so that it is not next to it?

This is not necessary, you can use the [ExtractSettings] section of Setup.ini instead of Records.ini

Example of how to convert sections from Records.ini to [ExtractSettings] from Setup.ini (Note the colors).
Code:

[Record1]
Type=Freearc_Original
Source={src}\Data1.bin.001
Output={app}
Disk=1

[ExtractSettings]
ArcFile1={src}\Data1.bin.001;DestDir:{app};Type:ARC;Disk:1


Emorian 25-05-2020 20:33

UltraArc: MSC+SREP+LZMA, Result = Data-1.bin in OutPutDir..
How do I add this to the Setup.ini file?
(Or even a file created with Diskspan?)

Cesar82 25-05-2020 20:45

Quote:

Originally Posted by Emorian (Post 486012)
UltraArc: MSC+SREP+LZMA, Result = Data-1.bin in OutPutDir..
How do I add this to the Setup.ini file?
(Or even a file created with Diskspan?)
Code:

ArcFile1=Data-1.bin;DestDir:{app};Type:ARC;Disk:1
This is good?

Yes, that's it.
Just specify the first file in Setup.ini when using DiskSpan (Data.bin.001).
DiskSpan used in current version v1.0.0.2 is still the old version of DiskSpan.dll and only supports naming .001, .002, etc.
Code:

ArcFile1=Data1.bin.001;DestDir:{app};Type:ARC;Disk:1


All times are GMT -7. The time now is 15:46.

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