FileForums (
-   Conversion Tutorials (
-   -   DiskSpan GUI (

Cesar82 24-06-2021 12:08

DiskSpan GUI
3 Attachment(s)
DiskSpan GUI:
It is a tool developed to work together with CLS-DiskSpan.dll (by Razor12911) to create compressions using external compressors preconfigured in an ".ini" file.
Now only supports 64-bit compressors and cannot run on 32-bit systems either.

- With DiskSpan GUI it is possible to configure a collection of games with specific methods predefined for each game.
- You can create collections of up to 254 games and include up to 254 compressed files for each game.
- It is also possible to predefine several methods for each compressed file.
- Allows loading configurations with the best compression methods for a given game from a database created from information shared by users.
- It also allows the use of file inclusion and exclusion lists for each compressed file or for each game.
- It is also possible to use the "SPLIT" mode which splits the file after compression and before decompression it will be merged again.
This SPLIT mode is useful because it allows you to create masked compressions that are not supported by CLS-DiskSpan.dll.
But it is important to note that you will need extra free temporary disk space (the size of the largest compressed file) to merge the parts during installation.

To configure DiskSpan GUI, run "_Developer MODE.bat" file or hold "CTRL" key while running DiskSpan_GUI.exe and only release "CTRL" after DiskSpan GUI window appears.
After making the settings, click on the save button and wait for it to finish.
P.S: Do not run multiple instances in configuration mode because closing the last one will overwrite the settings.

- The list of supported installers is in #post3.
- Read the changelog to stay on top of the latest changes.
- Included along with DiskSpan GUI a simplified script example (ISDone modified script example).
With the example script ISDone users who want to include DiskSpan GUI support in their installers can more easily understand the necessary changes.

Cesar82 24-06-2021 12:09

For help go to How to use Diskspan GUI

Cesar82 24-06-2021 12:09

Supported Installers
DiskSpan GUI v2+ supported installers:
- Advanced Simple Installer Script (ASIS) (KaktoR)
- Custom Installer Ultimate (CIU) (Yener90/KaktoR)
- Light Installer Script (LIS) (Cesar82)
- Windows Phone Installer (WPI) (Razor12911/bunti_o4u)
- Black Box Script (BBS) (Razor12911/oo7)

Cesar82 24-06-2021 12:10

Post reserved 3

Cesar82 15-08-2021 01:57

DiskSpan GUI v2.0.0.1
Updated DiskSpan GUI to v2.0.0.1 in the first post.

- Added tools page to DiskSpan GUI.
  >> Currently only unpacking functionality for compressed conversions using DiskSpan GUI.
  >> But in the future the function to "Extract" Setup.dll or create Setup.dll from a folder with items or method lines may be implemented.
  >> The extraction is done using "IsDone.dll" and "UnArc.dll", simulating a normal installer with support DiskSpan GUI.
  >> To extract a conversion look for the library Setup.dll created by DiskSpan GUI but Setup.dll must be with the files of the conversion without the need for Setup.exe.
  >> You can also simply copy the DiskSpan GUI executable to the conversion folder and run it automatically load the "Setup.dll" file path.
- Added the CLS-SREP_NEW_x86.exe executable again to DiskSpan GUI to avoid some errors that happen randomly without this executable even on 64 bit system.
- Added "Unreal Engine ucas Database maker" and "Dunia/Disrupt Engine Database maker" to "DiskSpan GUI".
  >> Now the supported plugins database files are created from the end-user game folder before compression.
- Add new XTool plugin Cry Engine (R3)
  >> Supported game Crysis 3 (for now).
- Added back XTool plugin Ubisoft Dunia 2 Engine
  >> Far Cry New Dawn (beta)
  >> Watch Dogs 2 (R4)
  >> P.S: KaktoR has done some testing and seems to be working with the current dpo XTool version.
- Fixed issues with MTX methods and some other minor bugs.
- Updated DiskSpan GUI database with some new games presets (Thanks to KaktoR for all database updates 2021.07.26 .. 2021.08.14).

Cesar82 11-09-2021 00:08

DiskSpan GUI v2.0.0.2
Updated DiskSpan GUI to v2.0.0.2 in the first post.
Special thanks to @KaktoR for all the work testing compressions and creating the DiskSpan GUI database configurations.

- Updated DiskSpan GUI database with several new games presets (Thanks to KaktoR for all database updates 2021.08.23 .. 2021.09.10).
- Changed some of the parameters sent to "CallBefore/CallAfter" and others were replaced.
  >> See the new "CallBefore.bat/CallAfter.bat" to see the variable parameter changes.
- Fixed some selection errors in masked method creation tab.
- Fixed some bugs during unpacking using "Unpacker" tab (TOOL mode).
- Fixed some errors between communication between DiskSpan GUI and executable versions "CallBefore.exe" and "CallAfter.exe"
  >> Not compatible with previous versions of "CallBefore.exe" or "CallAfter.exe" so rebuild your executable using the new script.
  >> The library "dsgcall.dll" reworked and updates ".iss" script in "CallBefore CallAfter (Maker)" folder.
- Fixed some typos and changed mask examples in "DSG_Arc.ini" file.
- Fixed XDelta patch to work using masks (Temporary, will have changes).
  >> This function is temporary and will change in the next version, but if you want to use it it is only supported by the IsDone example scripts included with DiskSpan GUI
  >> To view example script code changes referents to xdelta3 patch find for: "DELTA_FILE :" without quotes.
  >> To be compatible you must build the patches using the xdelta executable like this: xdelta3.exe -e -9 -S djw -vfs "<OldFile>" "<NewFile>" "<OldFile>.diff"
  >> To use XDelta3 patch in DiskSpan GUI check the "XDelta Patch" checkbox in developer mode of the DiskSpan GUI.
  >> An additional section will then be created in the pre-configured "Records.ini" during compression of game.
  >> During installation 10% of the progress bar will be reserved for applying the XDelta3 patch and will be searched for all ".diff" files in the installation folder and then patched to the original files.
  >> The original file must have the same name as the ".diff" file truncated to the ".diff" extension (patchfile = "Test.txt.diff" >> originalfile = "Test.txt").
  >> The destination file will have the same name as the original (The original will be renamed before applying the patch).
  >> The other DiskSpan GUI compatible scripts will be changed to support the new XDelta patch mode only if someone needs it or in the next version of DiskSpan GUI because it will change the way to use it a little bit.

MartinezPL 27-09-2021 10:10

A little question.
How to create multiple small data.bins on ONE SINGLE DISK, instead one big one?
Maybe I doing something wrong but the end result always is multiple data.bins split to few DISKs intead all of the be on one DISK.

Cesar82 28-09-2021 08:23


Originally Posted by MartinezPL (Post 494126)
A little question.
How to create multiple small data.bins on ONE SINGLE DISK, instead one big one?
Maybe I doing something wrong but the end result always is multiple data.bins split to few DISKs intead all of the be on one DISK.

DiskSpan GUI splits the ARC files so they can be placed on DVD or BD.
It doesn't have a mode like SlicesPerDisk= using inno Setup's native compression.
The fewer parts the better the extraction will work, so putting more than one part on a disk is useless.

If you want you can choose the Custom size option from DiskSpan GUI and set the size you want and then after compressing move all files from all DISK_# folders to DISK_1 folder and change the Disk= key value of Records.ini to 1 in all sections.

Cesar82 10-10-2021 13:17

DiskSpan GUI v2.0.0.3
I lost all source code from DiskSpan GUI :mad::mad:.
So I decided to share the version I was working on.

You can safely use the version of the first post, but if bugs arise I won't be able to fix it.
Windows crashed here and all bytes of .iss script were reset (Maybe because I tried to save after crashing Windows).
I think there is no hope of restoring the script, I'll have to redo all the recent changes again.

- Fixed error when using "pOodle" method.
- Added checkbox in developer mode method lines to disable end user predefined method editing.
- Added checkbox Facompress in developer mode allowing to disable the use of Facompress libraries.
- Added 3 new tools to extract, compress or make "Setup DLL" by clicking "Tools" button.
- Added button to update the "Database" from the internet.
- Added full functionality for XDelta3 patching.
- Added XTool plugin Far Cry 6 (Ubisoft Dunia 2 Engine)
  >> The plugins is generated by Dunia/Disrupt Engine Database maker (Needs testing with the full game).
- Added new XTool plugin Deathloop (R1)
- Updated XTool plugin EA Frostbite Engine (R6)
  >> Added support to FIFA 2022, Battlefield 2042 (Open-Beta).
- Updated database maker "Dunia/Disrupt Engine Database maker (R2)"
- Updated compressor/decompressor "ZStandard" (ZSTD) from v1.4.5 to v1.5.0
- Updated the CallBefore.bat and CallAfter.bat sample files and ISDone Example script ".iss".
- Updated DiskSpan GUI database with several new games presets and new updates in old presets.
  >> Thanks to KaktoR for all database updates 2021.09.19 .. 2021.10.03.

Masquerade 11-10-2021 11:06


Originally Posted by Cesar82 (Post 494347)
I lost all source code from DiskSpan GUI :mad::mad:.

Don't know if you already have this on, but there's a setting in Inno which makes a copy of the script whenever you save the file.

Go to Tools > Options > Create Backups When Saving

Carldric Clement 13-10-2021 07:49


Originally Posted by Cesar82 (Post 494347)
I lost all source code from DiskSpan GUI :mad::mad:.

I've been many times lost all projects before since 2014 that I started to make Mini Compressor. Even when I'm not giving up until I've made a backup on GitHub or something really important. It's really difficult to decide to make it or not. But trust me, do not give up to make another version like my own apps Mini Compressor. :)

Cesar82 13-10-2021 18:56

Far Cry 6 / FIFA 22 (DiskSpan GUI + XTool Plugin)
The inclusion of the XTool Far Cry 6 plugin in the DiskSpan GUI has not been tested with the full game (English + Russian Languages).
Below are the results of the "full" game compression using DiskSpan GUI using XTool (mfc6 plugin) + SREP + LZMA-MT. ;)

20:35:29 - Selected ARC/DS method for Data1a-01.bin was: xtool:c32mb:mfc6+srep_new+4x4:b64mb:lzma:ultra:64m:bt4:fb273:lc8:mc1000000
22:40:58 - Overall input size: 79,15 GB
22:40:58 - Overall output size: 57,84 GB (Ratio 73.07%)
22:40:58 - Overall conversion time: 02:05:27
22:40:58 - Overall conversion discs: 14 DVD5

Installation time from "HDD" to "SSD (sata)" 8 minutes.
In my previous test the DiskSpan GUI wasn't including the lz4 library along with XTool, so it wasn't inflating the file.
But without inflating the file using SREP + LZMA-MT the final results were better than using the plugin.
Below are the results, this time using the plugin (now including the lz4 library).

04:30:01 - Selected ARC/DS method for Data1a-01.bin was: xtool:c32mb:mfc6+srep_new+4x4:b64mb:lzma:ultra:64m:bt4:fb273:lc8:mc1000000
07:04:20 - Overall input size: 79,15 GB
07:04:20 - Overall output size: 58,49 GB (Ratio 73.90%)
07:04:20 - Overall conversion time: 02:34:16
07:04:20 - Overall conversion discs: 14 DVD5

Installation time from "HDD" to "SSD (sata)" 11 minutes.
I did a precompression test in full game folder just using: xtool:c32mb:mfc6
I found the rate of inflation of the files as a whole so low.

 Creating Data1a-01.bin file, Please Wait...
Creating xtool plugin database...
common.dat: 18133 stream(s)
shadersobj.dat: 56888 stream(s)
fctber_disk.dat: 65873 stream(s)
fctber_disk_english.dat: 30 stream(s)
fctber_disk_hd.dat: 1036 stream(s)
fctber_disk_russian.dat: 30 stream(s)
fctber_dlc.dat: 30756 stream(s)
fctber_dlc_english.dat: 20 stream(s)
fctber_dlc_hd.dat: 632 stream(s)
fctber_dlc_russian.dat: 20 stream(s)
fctworlds.dat: 420766 stream(s)
fctworlds_english.dat: 2509 stream(s)
fctworlds_hd.dat: 3842 stream(s)
fctworlds_russian.dat: 2509 stream(s)
installpkg.dat: 230355 stream(s)
installpkg_english.dat: 76651 stream(s)
installpkg_hd.dat: 20110 stream(s)
installpkg_russian.dat: 76651 stream(s)
Database created successfully!
FreeArc 0.67 (March 15 2014) creating archive: Conversion_Output\Data1a-01.bin
Compressed 83 files, 84,990,661,326 => 96,315,178,638 bytes. Ratio 113.32%
Compression time: cpu 55.97 sec/real 2115.09 sec = 3%. Speed 40.18 mB/s
All OK
16:29:37 - Selected ARC/DS method for Data1a-01.bin was: xtool:c32mb:mfc6
17:05:00 - Overall input size: 79,15 GB
17:05:00 - Overall output size: 89,70 GB (Ratio 113.32%)
17:05:00 - Overall conversion time: 00:35:22
Test with only common.dat/common.fat files:
17:16:18 - Selected ARC/DS method for Data1a-01.bin was: xtool:c32mb:mfc6
17:16:28 - Overall input size: 652,40 MB
17:16:28 - Overall output size: 1,20 GB (Ratio 188.18%)
17:16:28 - Overall conversion time: 00:00:08

Informing those users who test using the DiskSpan GUI, I believe it is possible to enable XTool dedup from the command line by adding "-dedup" (without quotes) as a parameter.
In simple tests I used xtool:c32mb:mfc6:-dedup, but I had worse results than just using xtool:c32mb:mfc6

Precompression test frostbite3 plugin in full game "FIFA 22 Ultimate Edition" using DiskSpan GUI.

04:21:46 - Selected ARC/DS method for Data1a-01.bin was: xtool:c32mb:mfrostbite3,fifa22
 08:11:37 - Overall input size: 55,89 GB
 08:11:37 - Overall output size:103,61 GB (Ratio 185.38%)
 08:11:37 - Overall conversion time: 03:49:45
 08:11:37 - Overall conversion discs: 24 DVD5

KaktoR 17-10-2021 09:47

I updated the DB again.

(I can't replay to your messages for some reason and I can't reply to anything else :D).

mausschieber 17-10-2021 16:13


Originally Posted by Cesar82 (Post 494499)
You must change the database.ini file inside the zip file so that after updating it is not allowed to download again saying it is out of date.
change in end of file database.ini inside zip file to:


the update Funktion from give an error
the Database settings file isn't accessible from drive google

KaktoR 17-10-2021 22:44

Newest update contains the whole Database folder.

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

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, vBulletin Solutions Inc.
Copyright 2000-2020, FileForums @