FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   Best Compression Methods for 'Specific' Games. Q&A (https://fileforums.com/showthread.php?t=99554)

Hexagon123 20-02-2024 22:47

Unity decryption
 
2 Attachment(s)
Code:

using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

namespace Dantora
{
        // Token: 0x02000253 RID: 595
        public class Crypt
        {
                // Token: 0x06000E77 RID: 3703 RVA: 0x0007A8A4 File Offset: 0x00078CA4
                public static string Encrypt(string text)
                {
                        RijndaelManaged rijndaelManaged = new RijndaelManaged
                        {
                                BlockSize = 128,
                                KeySize = 128,
                                Padding = PaddingMode.Zeros,
                                Mode = CipherMode.CBC,
                                Key = Encoding.UTF8.GetBytes("giVJrbHRlWBDIggF"),
                                IV = Encoding.UTF8.GetBytes("jCddaOybW3zEh0Kl")
                        };
                        ICryptoTransform transform = rijndaelManaged.CreateEncryptor();
                        MemoryStream memoryStream = new MemoryStream();
                        CryptoStream cryptoStream = new CryptoStream(memoryStream, transform, CryptoStreamMode.Write);
                        byte[] bytes = Encoding.UTF8.GetBytes(text);
                        cryptoStream.Write(bytes, 0, bytes.Length);
                        cryptoStream.FlushFinalBlock();
                        byte[] inArray = memoryStream.ToArray();
                        return Convert.ToBase64String(inArray);
                }

                // Token: 0x06000E78 RID: 3704 RVA: 0x0007A950 File Offset: 0x00078D50
                public static byte[] Encrypt(byte[] data)
                {
                        RijndaelManaged rijndaelManaged = new RijndaelManaged
                        {
                                BlockSize = 128,
                                KeySize = 128,
                                Padding = PaddingMode.Zeros,
                                Mode = CipherMode.CBC,
                                Key = Encoding.UTF8.GetBytes("giVJrbHRlWBDIggF"),
                                IV = Encoding.UTF8.GetBytes("jCddaOybW3zEh0Kl")
                        };
                        ICryptoTransform transform = rijndaelManaged.CreateEncryptor();
                        MemoryStream memoryStream = new MemoryStream();
                        CryptoStream cryptoStream = new CryptoStream(memoryStream, transform, CryptoStreamMode.Write);
                        cryptoStream.Write(data, 0, data.Length);
                        cryptoStream.FlushFinalBlock();
                        return memoryStream.ToArray();
                }

                // Token: 0x06000E79 RID: 3705 RVA: 0x0007A9E4 File Offset: 0x00078DE4
                public static string Decrypt(string cryptText)
                {
                        RijndaelManaged rijndaelManaged = new RijndaelManaged
                        {
                                BlockSize = 128,
                                KeySize = 128,
                                Padding = PaddingMode.Zeros,
                                Mode = CipherMode.CBC,
                                Key = Encoding.UTF8.GetBytes("giVJrbHRlWBDIggF"),
                                IV = Encoding.UTF8.GetBytes("jCddaOybW3zEh0Kl")
                        };
                        ICryptoTransform transform = rijndaelManaged.CreateDecryptor();
                        byte[] array = Convert.FromBase64String(cryptText);
                        byte[] array2 = new byte[array.Length];
                        MemoryStream stream = new MemoryStream(array);
                        CryptoStream cryptoStream = new CryptoStream(stream, transform, CryptoStreamMode.Read);
                        cryptoStream.Read(array2, 0, array2.Length);
                        return Encoding.UTF8.GetString(array2);
                }

                // Token: 0x06000E7A RID: 3706 RVA: 0x0007AA90 File Offset: 0x00078E90
                public static byte[] Decrypt(byte[] data)
                {
                        RijndaelManaged rijndaelManaged = new RijndaelManaged
                        {
                                BlockSize = 128,
                                KeySize = 128,
                                Padding = PaddingMode.Zeros,
                                Mode = CipherMode.CBC,
                                Key = Encoding.UTF8.GetBytes("giVJrbHRlWBDIggF"),
                                IV = Encoding.UTF8.GetBytes("jCddaOybW3zEh0Kl")
                        };
                        ICryptoTransform transform = rijndaelManaged.CreateDecryptor();
                        byte[] array = new byte[data.Length];
                        MemoryStream stream = new MemoryStream(data);
                        CryptoStream cryptoStream = new CryptoStream(stream, transform, CryptoStreamMode.Read);
                        cryptoStream.Read(array, 0, array.Length);
                        return array;
                }

                // Token: 0x04000BC6 RID: 3014
                private const string AesIV = "jCddaOybW3zEh0Kl";

                // Token: 0x04000BC7 RID: 3015
                private const string AesKey = "giVJrbHRlWBDIggF";
        }
}

Heroland (2019) Game is using Unity and it is encrypted with AES IV and compressed with LZ4.

Code:

using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;
using UnityEngine;

// Token: 0x02000B1A RID: 2842
public static class CryptoUtility
{
        // Token: 0x060049E1 RID: 18913 RVA: 0x00156E24 File Offset: 0x00155224
        public static byte[] Crypto(string key, byte[] src, bool encode = false)
        {
                string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(key);
                byte[] bytes = Encoding.UTF8.GetBytes(CryptoUtility.salt);
                Rfc2898DeriveBytes rfc2898DeriveBytes = new Rfc2898DeriveBytes(fileNameWithoutExtension + CryptoUtility.pw, bytes);
                rfc2898DeriveBytes.IterationCount = 1103;
                RijndaelManaged rijndaelManaged = new RijndaelManaged();
                rijndaelManaged.Padding = PaddingMode.Zeros;
                rijndaelManaged.Mode = CipherMode.CBC;
                rijndaelManaged.KeySize = CryptoUtility.KeySize;
                rijndaelManaged.BlockSize = CryptoUtility.BlockSize;
                rijndaelManaged.Key = rfc2898DeriveBytes.GetBytes(rijndaelManaged.KeySize / 8);
                rijndaelManaged.IV = rfc2898DeriveBytes.GetBytes(rijndaelManaged.BlockSize / 8);
                ICryptoTransform cryptoTransform;
                if (encode)
                {
                        cryptoTransform = rijndaelManaged.CreateEncryptor();
                }
                else
                {
                        cryptoTransform = rijndaelManaged.CreateDecryptor();
                }
                byte[] result = cryptoTransform.TransformFinalBlock(src, 0, src.Length);
                cryptoTransform.Dispose();
                return result;
        }

        // Token: 0x060049E2 RID: 18914 RVA: 0x00156EEC File Offset: 0x001552EC
        public static bool CryptoFile(string srcPath, string dstPath, bool encode = false, bool checkFS = false)
        {
                bool result;
                using (FileStream fileStream = File.OpenRead(srcPath))
                {
                        if (fileStream == null)
                        {
                                result = false;
                        }
                        else
                        {
                                byte[] array = new byte[fileStream.Length];
                                fileStream.Read(array, 0, (int)fileStream.Length);
                                if (checkFS)
                                {
                                        string text = Encoding.ASCII.GetString(array).Substring(0, 7);
                                        if (text != "UnityFS")
                                        {
                                                fileStream.Close();
                                                Debug.LogError("Not Asset Bunddle File[" + text + "]" + srcPath);
                                                return false;
                                        }
                                }
                                byte[] array2;
                                if (encode)
                                {
                                        Debug.Log("Encode\n" + srcPath + "\n" + dstPath);
                                        array2 = CryptoUtility.Crypto(srcPath, array, true);
                                }
                                else
                                {
                                        Debug.Log("Decode\n" + srcPath + "\n" + dstPath);
                                        array2 = CryptoUtility.Crypto(srcPath, array, false);
                                }
                                fileStream.Close();
                                using (FileStream fileStream2 = File.OpenWrite(dstPath))
                                {
                                        if (fileStream2 == null)
                                        {
                                                result = false;
                                        }
                                        else
                                        {
                                                fileStream2.Write(array2, 0, array2.Length);
                                                fileStream2.Close();
                                                result = true;
                                        }
                                }
                        }
                }
                return result;
        }

        // Token: 0x0400401D RID: 16413
        private static string pw = "c4GXA8FT";

        // Token: 0x0400401E RID: 16414
        private static string salt = "t4ChYLcH";

        // Token: 0x0400401F RID: 16415
        private static int KeySize = 128;

        // Token: 0x04004020 RID: 16416
        private static int BlockSize = 128;
}

Super Bomberman R (2017) game is using Unity and it is encrypted with Salt.

KaktoR 29-02-2024 03:45

No Man's Sky
v4.52

Code:

11:57:59 - Selected ARC/DS method for Data1a-01.bin was: xtool:mzlib:dd5+4x4:lzma
 11:57:59 - Selected ARC/DS method for Data1b-01.bin was: xtool:dd5+4x4:lzma
-------------------------------------------------------------------------------------------------------------------------------------------
 12:42:55 - Overall input size: 16.06 GB
 12:42:55 - Overall output size: 9.40 GB (Ratio 58.55%)
 12:42:55 - Overall conversion time: 00:44:54

NMSARC.audio.pak was unpacked and wwise files were processed, hence the big input. Saves you about 150mb.

Danziel123 29-02-2024 05:31

Maybe someone knows a compress method for Brothers - A Tale of Two Sons - Remake? Sorry, I can't upload the test file, because the file is too large to upload. Thank you:)

ScOOt3r 29-02-2024 07:30

Quote:

Originally Posted by Danziel123 (Post 503765)
Maybe someone knows a compress method for Brothers - A Tale of Two Sons - Remake? Sorry, I can't upload the test file, because the file is too large to upload. Thank you:)

i did this game and had 3 data files

data1- i used xtool:mermaid+srep+lolz
data2- movies (xbk2+srep)
data3- all miscellaneous files srep+lolz


total repack size was 13.0 im sure you can get better on the movie files a but xbk2 sucks for compression for me

ScOOt3r

Masquerade 29-02-2024 14:13

^^
Almost spot on, I would like to make some additions.

The 3GB pak file contains raw WWise audio. This can be packed with msc(tak)+razor.

Most of the game data is stored uncompressed, there is only an incredibly tiny amount of mermaid streams so using any precompressor will have little impact on the end result. These handful of mermaid streams and the start of UCAS archives are becoming more common in Unreal Engine 5 games.

The director's commentary video is KB2i so it can be packed / unpacked with cls-bpk.dll. Little point in using XTool for this task since bpk unpacks the video without data errors and there is no opportunity for multithreading.

The remaining videos are KB2n which is unsupported by bpk (the XTool configuration sutomatically filters these videos). I used the latest BCM (v2.03 at time of writing) by Ilya Muravyov after srep to squeeze a slight bit extra compression.

My size was 12.4GB for:

Primary: srep+lolz
Secondary: msc+razor
Tertiary: srep+bcm
Quaternary: bpk

And the Director's Commentary can be separated to give 10.5GB minimum size.

Danziel123 02-03-2024 07:59

Quote:

Originally Posted by Masquerade (Post 503768)
^^
Almost spot on, I would like to make some additions.

The 3GB pak file contains raw WWise audio. This can be packed with msc(tak)+razor.

Most of the game data is stored uncompressed, there is only an incredibly tiny amount of mermaid streams so using any precompressor will have little impact on the end result. These handful of mermaid streams and the start of UCAS archives are becoming more common in Unreal Engine 5 games.

The director's commentary video is KB2i so it can be packed / unpacked with cls-bpk.dll. Little point in using XTool for this task since bpk unpacks the video without data errors and there is no opportunity for multithreading.

The remaining videos are KB2n which is unsupported by bpk (the XTool configuration sutomatically filters these videos). I used the latest BCM (v2.03 at time of writing) by Ilya Muravyov after srep to squeeze a slight bit extra compression.

My size was 12.4GB for:

Primary: srep+lolz
Secondary: msc+razor
Tertiary: srep+bcm
Quaternary: bpk

And the Director's Commentary can be separated to give 10.5GB minimum size.

hello, if you don't mind, could you share the details of what files are included in the first, second and so on lists?

Masquerade 03-03-2024 03:52

^^
Everything you need to know, I have already explained.

Danziel123 07-03-2024 04:33

Maybe someone knows the compression method for the wwe 2k24 game? This is the file for testing
.cak: https://drive.google.com/file/d/1bEf...ew?usp=sharing
.pck: https://drive.google.com/file/d/1iIu...ew?usp=sharing
Thank you:)

Hexagon123 07-03-2024 05:07

Quote:

Originally Posted by Danziel123 (Post 503827)
Maybe someone knows the compression method for the wwe 2k24 game? This is the file for testing
.cak: https://drive.google.com/file/d/1bEf...ew?usp=sharing
.pck: https://drive.google.com/file/d/1iIu...ew?usp=sharing
Thank you:)

Likely encrypted?

KaktoR 07-03-2024 06:56

Quote:

Originally Posted by Danziel123 (Post 503827)
Maybe someone knows the compression method for the wwe 2k24 game? This is the file for testing
.cak: https://drive.google.com/file/d/1bEf...ew?usp=sharing
.pck: https://drive.google.com/file/d/1iIu...ew?usp=sharing
Thank you:)

pck is sound file (riff wavefmt). You can extract with wavextractor or quickbms+wwise.bms, then encode with wemtool (will give you 10mb on this file, 117mb -> 107mb).

cak files hydra/leviathan. xtool plugin is required.

Masquerade 18-03-2024 13:30

Handball 17

Code:

srep+lolz/$wav=msc+razor
Code:

--------------------------------|-----------
Component                      | Size
--------------------------------|-----------
Game (incl. English Commentary) |  720MB
+ French Commentary            | + 200MB
+ German Commentary            | + 230MB
--------------------------------|-----------
TOTAL                          |  1.1GB
--------------------------------|-----------


Danziel123 21-03-2024 00:30

Maybe someone knows the compression method for the alone in the dark (remake) game? This is the file for testing:
.pak: https://drive.google.com/file/d/1LUR...ew?usp=sharing
.ucas: https://drive.google.com/file/d/1i8s...ew?usp=sharing
.utoc: https://drive.google.com/file/d/12Q_...ew?usp=sharing
Thank you:)

FitGirl 21-03-2024 01:40

Oodle Kraken + Deflate

Danziel123 21-03-2024 02:58

Quote:

Originally Posted by FitGirl (Post 503929)
Oodle Kraken + Deflate

hello, sorry if my question is stupid. Is my compression method correct?
Quote:

xtool:mkraken:mreflate:dd3+4x4:b64mb:lzma:ultra:bt 4:fb273:lc8:mc1000000:64mb
Thank you:)

Masquerade 21-03-2024 11:15

^^
Yes.
Banks contain ogg audio.

Danziel123 21-03-2024 17:51

Quote:

Originally Posted by Masquerade (Post 503936)
^^
Yes.
Banks contain ogg audio.

thank you for your answer. Sorry if I ask again, maybe you know the best compression method for Horizon Forbidden West Complete Edition? Thank you;)
here is the example file:
.core: https://drive.google.com/file/d/130A...ew?usp=sharing
.core.stream: https://drive.google.com/file/d/1I_K...ew?usp=sharing

ScOOt3r 22-03-2024 09:47

@danziel123
The Method I used for Horizon Forbidden was xtool:kraken+srep+lolz on .core files
@71.8 Compression for a total size of 87.3 GB over 2 data files and 1 optional (digital extras)

-im sure there is a better method but i tried many

it took me several hours to compress as its a HUGE game..

Good Luck

ScOOt3r

KaktoR 22-03-2024 10:35

Use insomniac plugin

I wonder how tf you assume oodle is used...

IRAQIGHOST 24-03-2024 14:16

Quote:

Horizon Forbidden West
English and Arabic Language

Repack Size: 81 Gb
Final Size: 124 Gb

*.core
*.core.steam

Quote:

xtool:c32mb:minsomniac+srep_new:393b+LOLZ_ULTRA
I got CRC error with package.00.03.core
I don't know if there are more files get the same error
so I used this method
Quote:

xtool:c32mb:minsomniac+srep_new:393b+4x4:b96mb:lzm a:ultra:bt4:fb273:lc8:mc1000000:96mb

Yourname 25-03-2024 00:18

Unholy v30764
 
https://i.ibb.co/Vmb0cX4/Imgcover.png

Code:

Precomp Method for Data_1.bin: • [ xtool:c32mb:mzlib:dd3+srep64:m5f:a16:d1g+delta+exe2+nz64:m16g:br512m:bw512m:p16:t16 ] •

• [ Compressed 39 985 676 945 into 21 599 290 729 in 40m 30.01s, 16 MB/s (4.321 bpb) ] •
• [ Compressed 37 files, 31,702,819,613 => 21,599,290,730 bytes. Ratio 68.13% ] •
• [ Compression time: cpu 382.59 sec/real 3659.56 sec = 10%. Speed 8.66 mB/s ] •

Comp Method for Data_2.bin: • [ msc+srep64:m5f:a16:d1g+delta+exe2+nz64:m16g:br512m:bw512m:p16:t16 ] •

• [ Compressed 625 950 322 into 524 647 451 in 38.03s, 16 MB/s (6.705 bpb) ] •
• [ Compressed 59 files, 668,773,315 => 524,647,452 bytes. Ratio 78.45% ] •
• [ Compression time: cpu 3.53 sec/real 65.00 sec = 5%. Speed 10.29 mB/s ] •

Overall Input Size: • [ 30.15 GB ] •

Overall Output Size: • [ 20.6 GB (Ratio 68.33%) ] •

• [ Data Archiving Files Completed: Total Time: 1:07:48 ] •


Wanterlude 27-03-2024 05:38

SOUTH PARK: SNOW DAY! [v.70374]
27.3 gb > 16.77 gb

Unreal Engine 4 Plugin (by Razor)+zlib+dd5+lolz
Unreal Key=0x0892FE168A3B47FA0406BB6255A17DE7D1FBA7D651CD BC694728A31DFA99BA1B

Inst.time: 6 min [11400F]

-----

The Callisto Protocol (English VO Only) [Build 13179062]
75.8 gb > 55.8 gb

zlib+dd5+lzma2

Inst.time: 12 min [11400F]

KaktoR 01-04-2024 10:37

Quote:

Originally Posted by dixen (Post 503515)
Which version and settings for srep are you using for Cities Skylines 2? On second pass levelerror=XXXXXXXXX. Srep version and his settings doesn't matter. ZSTDRec or XTool - too.

While the old initial game version worked just fine, I got problems with the new game version 1.1.0.F1.

Then I thought maybe new xtool version was the problem (do not wanted to blame Razor for that lol) so then I tested all xtool versions back to 0.7.9, same error. But then I remembered a problem a while ago about this game with some srep errors, so then I tested just precompressing and srep afterwards. While xtool did not gave me any error messages about srep, I tested srep instead of xtool dedup with srep.exe and this error appears:

Code:

Compressing 176,993,820,246 bytes with "srep.exe" -hash- -m3f InFile OutFile
Errorlevel=-1073741819
100.0%
ERROR: general (de)compression error in srep

If using xtool's dd feature using srep.exe, I got no error message at all but compressed data was corrupted like this:
Code:

60 GB input  -> 7 GB output, Ratio 11.67%
I even tested all different srep versions I have but all the same. Then I remembered another game where srep had big problems aswell. So after testing a bit again further with the new game version, I found out you have just to use FA's internally old rep before using srep, which will look something like this then:
Code:

xtool:zstd+rep+srep+...
Log
Code:

Initial version (xtool:zstd:dd3+4x4:lzma)
Overall input size: 55,63 GB
Overall output size: 34,48 GB (Ratio 61.97%)

Version 1.1.0.F1 (xtool:zstd+rep+srep+4x4:lzma)
Overall input size: 59.34 GB
Overall output size: 36.59 GB (Ratio 61.66%)

Extraction time about 20 minutes.

I hope this helps.

Wanterlude 01-04-2024 14:28

Quote:

Originally Posted by KaktoR (Post 504043)
While the old initial game version worked just fine, I got problems with the new game version 1.1.0.F1.

Then I thought maybe new xtool version was the problem (do not wanted to blame Razor for that lol) so then I tested all xtool versions back to 0.7.9, same error. But then I remembered a problem a while ago about this game with some srep errors, so then I tested just precompressing and srep afterwards. While xtool did not gave me any error messages about srep, I tested srep instead of xtool dedup with srep.exe and this error appears:

Code:

Compressing 176,993,820,246 bytes with "srep.exe" -hash- -m3f InFile OutFile
Errorlevel=-1073741819
100.0%
ERROR: general (de)compression error in srep

If using xtool's dd feature using srep.exe, I got no error message at all but compressed data was corrupted like this:
Code:

60 GB input  -> 7 GB output, Ratio 11.67%
I even tested all different srep versions I have but all the same. Then I remembered another game where srep had big problems aswell. So after testing a bit again further with the new game version, I found out you have just to use FA's internally old rep before using srep, which will look something like this then:
Code:

xtool:zstd+rep+srep+...
Log
Code:

Initial version (xtool:zstd:dd3+4x4:lzma)
Overall input size: 55,63 GB
Overall output size: 34,48 GB (Ratio 61.97%)

Version 1.1.0.F1 (xtool:zstd+rep+srep+4x4:lzma)
Overall input size: 59.34 GB
Overall output size: 36.59 GB (Ratio 61.66%)

Extraction time about 20 minutes.

I hope this helps.

I just added the srep parameters that dixen18 helped and everything worked:
Code:

packcmd  = xtool.exe precomp -t100p -dd5 -spa0:l1024 - - <stdin> <stdout>

KaktoR 02-04-2024 05:11

^
Not for me, so I post an alternative if that does not work for someone :)

observer23232 02-04-2024 09:54

Hello does anyone know effective compression on Cities Skylines II ?

dixen 02-04-2024 10:00

Quote:

Originally Posted by observer23232 (Post 504052)
Hello does anyone know effective compression on Cities Skylines II ?

XTool:zstd оn *.cok files

It will require approximately 170 GB of free space for decompressed data and 90 GB for processing and compression.
To avoid a SREP error, use the -l1024 parameter

observer23232 03-04-2024 04:39

Quote:

Originally Posted by dixen (Post 504053)
XTool:zstd оn *.cok files

It will require approximately 170 GB of free space for decompressed data and 90 GB for processing and compression.
To avoid a SREP error, use the -l1024 parameter

Mate, please show me what parameters would you use?

i use
Code:

xzstd+srep:m3f:l1024+lolz:dtb1:d128:mtt0:mt4:mc1023
probably something wrong

dixen 03-04-2024 08:04

Quote:

Originally Posted by observer23232 (Post 504059)
Mate, please show me what parameters would you use?

i use
Code:

xzstd+srep:m3f:l1024+lolz:dtb1:d128:mtt0:mt4:mc1023
probably something wrong

That's right, but this does not guarantee that there will be no errors from SREP. I got the same error again even when using l1024

Danziel123 15-04-2024 00:33

maybe someone knows the best compression method for the game white day 2? This is the test file:
https://drive.google.com/file/d/19Hb...ew?usp=sharing
Thank you:)

KaktoR 15-04-2024 04:44

I will give you a hint.

Code:

Universal Oodle stream scanner

Created by Razor12911

[0] = Unknown/Invalid
[1] = Kraken/Hydra
[2] = Mermaid/Selkie/Hydra
[3] = Leviathan/Hydra

0001[1]| Pos: 00000049, Size: 503
0002[1]| Pos: 00000849, Size: 1470
0003[1]| Pos: 00001849, Size: 2474
0004[1]| Pos: 00002849, Size: 3324
0005[1]| Pos: 00004049, Size: 2241
0006[1]| Pos: 00005049, Size: 3794
0007[1]| Pos: 00006049, Size: 698
0008[1]| Pos: 0000634C, Size: 36258
0009[1]| Pos: 0000F859, Size: 19065
0010[1]| Pos: 000142D2, Size: 12070
0011[1]| Pos: 00017849, Size: 14203
0012[1]| Pos: 0001B049, Size: 1013
0013[1]| Pos: 0001BC39, Size: 97014
0014[1]| Pos: 0003372F, Size: 119039
0015[1]| Pos: 0005082E, Size: 172366
...
...
...

Code:

Streams: 4382 / 4382
Time: 00:00:26 (CPU 00:02:24)

Size: 374 MB >> 1.05 GB

Now see what oodle core library you have to use.

You can do it bro.

Danziel123 15-04-2024 05:36

Quote:

Originally Posted by KaktoR (Post 504179)
I will give you a hint.

Code:

Universal Oodle stream scanner

Created by Razor12911

[0] = Unknown/Invalid
[1] = Kraken/Hydra
[2] = Mermaid/Selkie/Hydra
[3] = Leviathan/Hydra

0001[1]| Pos: 00000049, Size: 503
0002[1]| Pos: 00000849, Size: 1470
0003[1]| Pos: 00001849, Size: 2474
0004[1]| Pos: 00002849, Size: 3324
0005[1]| Pos: 00004049, Size: 2241
0006[1]| Pos: 00005049, Size: 3794
0007[1]| Pos: 00006049, Size: 698
0008[1]| Pos: 0000634C, Size: 36258
0009[1]| Pos: 0000F859, Size: 19065
0010[1]| Pos: 000142D2, Size: 12070
0011[1]| Pos: 00017849, Size: 14203
0012[1]| Pos: 0001B049, Size: 1013
0013[1]| Pos: 0001BC39, Size: 97014
0014[1]| Pos: 0003372F, Size: 119039
0015[1]| Pos: 0005082E, Size: 172366
...
...
...

Code:

Streams: 4382 / 4382
Time: 00:00:26 (CPU 00:02:24)

Size: 374 MB >> 1.05 GB

Now see what oodle core library you have to use.

You can do it bro.

Use Kraken, right? but don't use something like :core_#.#.#? because I read your post on "How to use Diskspan GUI v2+" but I still don't understand

Cesar82 15-04-2024 06:19

Quote:

Originally Posted by Danziel123 (Post 504181)
Use Kraken, right? but don't use something like :core_#.#.#? because I read your post on "How to use Diskspan GUI v2+" but I still don't understand

In the diskspan gui "core_x.x.x" is a fake parameter that will be removed from the command line before compression.
This parameter is used to tell DiskSpan GUI which oodle library (oo2core_#_win64.dll) should be copied to the XTool folder before compression (The same oodle library will be included in Setup.dll).
If you don't know the supported versions, you can open the Oodle_Libs.7z file inside the "..\ADDONS\Libraries\Oodle" folder to find out which versions are currently supported as a fake parameter (The fake parameter is exactly the name of the folder inside the 7-Zip archive such as "core_2.6.3").
Usage example:
NOTES: In the first example, the "393b" parameter is also a fake parameter to inform which version of srep.exe will be used.
Code:

xtool:mkraken:core_2.7.6+srep_new:393b+LZMA-MT
xtool:mkraken:core_2.9.9+xtool:dd3+LZMA-MT
xtool:mkraken:core_2.9.5:dd3+LZMA-MT


Danziel123 15-04-2024 22:46

Quote:

Originally Posted by Cesar82 (Post 504182)
In the diskspan gui "core_x.x.x" is a fake parameter that will be removed from the command line before compression.
This parameter is used to tell DiskSpan GUI which oodle library (oo2core_#_win64.dll) should be copied to the XTool folder before compression (The same oodle library will be included in Setup.dll).
If you don't know the supported versions, you can open the Oodle_Libs.7z file inside the "..\ADDONS\Libraries\Oodle" folder to find out which versions are currently supported as a fake parameter (The fake parameter is exactly the name of the folder inside the 7-Zip archive such as "core_2.6.3").
Usage example:
NOTES: In the first example, the "393b" parameter is also a fake parameter to inform which version of srep.exe will be used.
Code:

xtool:mkraken:core_2.7.6+srep_new:393b+LZMA-MT
xtool:mkraken:core_2.9.9+xtool:dd3+LZMA-MT
xtool:mkraken:core_2.9.5:dd3+LZMA-MT


thanks for the explanation, but I tried putting the .pak file in oodle_ver but it got an error. How do I find out the correct libraby/compression method to use for this game based on posts from KaktoR? i know to use kraken but i don't know which one to use

KaktoR 16-04-2024 05:52

oodle_ver.exe is just for the libraries to know what library version the file is (drop any "oo2core_#_win64.dll" onto oodle_ver.exe will tell you the library version without looking manually with hex editor).

For game files to scan use "oo2scan_7_win64.exe" inside scanner folder from this link:
https://fileforums.com/showthread.php?t=102453
PS: With big files, it could take a while before the process starts. Simply drag&drop the file into "oo2scan_7_win64.exe".

You cannot know what library is used for the game if the game is not shipped with any oo2core library, but the release date of the game is a good start. However for newer titles I suggest starting with library v2.9.5 is a good idea (do not use library v2.9.6 at all because this library has a critical memory bug. This particullar library is just included for completition). If output/speed of processing is bad, increase or decrease library version until you find the matching library.

Danziel123 16-04-2024 18:59

Quote:

Originally Posted by KaktoR (Post 504200)
oodle_ver.exe is just for the libraries to know what library version the file is (drop any "oo2core_#_win64.dll" onto oodle_ver.exe will tell you the library version without looking manually with hex editor).

For game files to scan use "oo2scan_7_win64.exe" inside scanner folder from this link:
https://fileforums.com/showthread.php?t=102453
PS: With big files, it could take a while before the process starts. Simply drag&drop the file into "oo2scan_7_win64.exe".

You cannot know what library is used for the game if the game is not shipped with any oo2core library, but the release date of the game is a good start. However for newer titles I suggest starting with library v2.9.5 is a good idea (do not use library v2.9.6 at all because this library has a critical memory bug. This particullar library is just included for completition). If output/speed of processing is bad, increase or decrease library version until you find the matching library.

I'm starting to understand a little, sorry if I ask again, what application do you use to find out which library you are using can produce a good/bad ratio?

Masquerade 17-04-2024 00:15

^^
Xtool

Danziel123 17-04-2024 20:41

Hello, sorry if I ask again. how to compress ghostwire tokyo game? I have copied gwtokyo.xtl, gwtokyo.key & oo2core_7_win64.dll into the Resources\PRE\XTool_2020\Plugins folder and I checked in the DSG in the Xtool 2020 plugin section and ghostwire tokyo doesn't appear. Thank You

KaktoR 18-04-2024 08:03

I think you do not need them. Use unreal plugin with aes key + kraken + zlib + 512mb chunk size. And I think this game use a v2.8.x oodle library.

Danziel123 18-04-2024 20:05

Quote:

Originally Posted by KaktoR (Post 504223)
I think you do not need them. Use unreal plugin with aes key + kraken + zlib + 512mb chunk size. And I think this game use a v2.8.x oodle library.

can you help me to check this game? I have checked this using oo2scan_7_win64.exe and only the 4.28 gb size has kraken and I have also checked using xtool.exe and set the checker library to oodle ver v2.8.x & v2.9.x and nothing suitable

Masquerade 18-04-2024 23:07

You won't be able to scan for streams bevause this game's data is encrypted. KaktoR has told you everything you need to know.


All times are GMT -7. The time now is 12:04.

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