PDA

View Full Version : Tools for Repacking


Masquerade
08-01-2022, 01:05
An index for all things compression related. Tools for FreeArc and tools to take you beyond FreeArc. Modding tools to help you decrypt and unpack game archives.

########
ATTENTION
########
Do not request resources from Krinkels.org forum to be uploaded here since it is against their forum rules and most certainly DO NOT MESSAGE ME ASKING ME TO SEND YOU KRINKELS RESOURCES - please read this forum post (https://krinkels.org/threads/dobavlenie-novoj-gruppy-i-uslovija-perexoda-v-nejo-ili-pochemu-ja-ne-mogu-skachivat-bez-ogranichenij.4191/).
Внимание! Если вы получили статус "Пользователи" и будете Ð¿Ñ€ÐµÐ´Ð¾ÑÑ‚Ð°Ð²Ð»ÑÑ ÑŒ материал тем, кто его ещё не получил (по их просьбам через ЛС), то тут же будете лишены данного статуса навсегда.

Attention! If you received the status of "Users" and will provide material to those who have not yet received it (at their request via PM), then you will immediately lose this status forever.

FreeArc Tools

[Compressor] 7-Zip [Igor Pavlov] (https://www.fileforums.com/showpost.php?p=495382&postcount=9)
[Compressor] BinkPack [ProFrager] (https://krinkels.org/resources/bpk.263/)
[Compressor] Bink Compressor Patch [Razor12911 / ProFrager] (https://www.fileforums.com/showpost.php?p=495914&postcount=61)
[Compressor] Brunsli [Google] (https://www.fileforums.com/showpost.php?p=495375&postcount=5)
[Compressor] BCM [Encode] (https://encode.su/threads/1087-BCM-0-11-A-high-performance-BWT-compressor)
[Compressor] BSC [Ilya Grebnov] (https://github.com/IlyaGrebnov/bsc-m03)
[Compressor] CLS-BCMMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Compressor] CLS-BROTLI [Shegorat] (https://krinkels.org/resources/cls-brotli.354/)
[Compressor] CLS-LZ4 [Razor12911] (https://www.fileforums.com/showthread.php?t=98009)
[Compressor] CLS-LZ4 [Shegorat] (https://krinkels.org/resources/cls-lz4.413/)
[Compressor] CLS-LIZARD [Shegorat] (https://krinkels.org/resources/cls-lizard.414/)
[Compressor] CLS-LZO [Shegorat] (https://krinkels.org/resources/cls-lzo.387/)
[Compressor] CLS-UHARC [Single Threaded] [Razor12911 / Carldric Clement] (https://www.fileforums.com/showpost.php?p=481058&postcount=11)
[Compressor] CLS-Precomp [Razor12911] (https://www.fileforums.com/showthread.php?t=97938)
[Compressor] CLS-ZLIB [Shegorat] (https://krinkels.org/resources/cls-zlib.349/)
[Compressor] CLS-ZPAQ [Shegorat] (https://krinkels.org/resources/cls-zpaq.353/)
[Compressor] CLS-ZSTD [Razor12911] (https://www.fileforums.com/showthread.php?t=98121)
[Compressor] CLS-ZSTD [Shegorat] (https://krinkels.org/resources/cls-zstd.357/)
[Compressor] DLZ [ProFrager] (https://krinkels.org/resources/dlz.262/)
[Compressor] Media Streams Compressor [ProFrager] (https://krinkels.org/resources/msc-media-streams-compressor.4/)
[Compressor] Lepton [Dropbox] (https://www.fileforums.com/showpost.php?p=497967&postcount=91)
[Compressor] LOLZ [ProFrager] (https://krinkels.org/resources/lolz.264/) / Uploaded here on FileForums (https://www.fileforums.com/attachment.php?attachmentid=23745&d=1546181019)
[Compressor] LZMA [Igor Pavlov] (https://www.fileforums.com/showpost.php?p=495383&postcount=10)
[Compressor] MCM [Mat Chartier] (https://www.fileforums.com/showpost.php?p=495377&postcount=7)
[Compressor] MPZ [Eugene Shelwien] (https://www.fileforums.com/showpost.php?p=495376&postcount=6)
[Compressor] OGGRE [ProFrager] (https://krinkels.org/resources/oggre.259/)
[Compressor] PackJPG Wrapper [78372] (https://www.fileforums.com/showthread.php?t=103803)
[Compressor] RAZOR Archiver [Christian Martelock] (https://encode.su/threads/2829-RAZOR-strong-LZ-based-archiver)
[Compressor] RAZOR Archiver [STDIO Patched for v1.01] [Christian Martelock / Razor12911] (https://www.fileforums.com/showthread.php?t=103298)
[Compressor] RAZOR Archiver [STDIO Patched for v1.03.7] [Christian Martelock / Razor12911] (https://www.fileforums.com/showpost.php?p=495381&postcount=8)
[Compressor] Squid [Shegorat / Ilya Muravyev] (https://krinkels.org/resources/squid.362/)
[Compressor] TAK: (T)om's lossless (A)udio (K)ompressor (https://www.fileforums.com/showpost.php?p=496189&postcount=72)


[Decryption Tool] CLS-UE4D [Shegorat] (https://krinkels.org/resources/cls-ue4d.401/)
[Decryption Tool] FIFA 19 CAS Decryption Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=102461)
[Decryption Tool] Death Stranding Decryption Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=103699)
[Decryption Tool] Project CARS 2/3 BFF Decryption Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=102524)
[Decryption Tool] CLS-TTGD [Shegorat] (https://krinkels.org/resources/cls-ttgd.334/)
[Decryption Tool] TearDownDecrypt.NET (https://www.fileforums.com/showpost.php?p=495954&postcount=66)
[Decryption Tool] Unreal Engine 4 Decryption Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=103145)


[Multithreading Wrapper] BCMX [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103644)
[Multithreading Wrapper] BSCX [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103659)
[Multithreading Wrapper] CLS-BSCMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-CRUSHMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-FP8 [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103868)
[Multithreading Wrapper] CLS-FP8MT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-MCM [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103806)
[Multithreading Wrapper] CLS-MCMMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-MPZMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-MTX [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103664)
[Multithreading Wrapper] CLS-NZ [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103732)
[Multithreading Wrapper] CLS-NZMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-PACKETMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-PRECOMP [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103690)
[Multithreading Wrapper] CLS-PRECOMPMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-PrecompMT [Razor12911] (https://www.fileforums.com/showthread.php?t=97961)
[Multithreading Wrapper] CLS-RZMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-UHARC [Razor12911] (https://www.fileforums.com/showthread.php?t=98005)
[Multithreading Wrapper] CLS-UHARCMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-ZCMMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] CLS-ZSTD [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103865)
[Multithreading Wrapper] CLS-ZSTDMT [BLACKFIRE69] (https://www.fileforums.com/showthread.php?t=103345)
[Multithreading Wrapper] MPZX [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103639)
[Multithreading Wrapper] MTX - The Universal Accelerator [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103853)
[Multithreading Wrapper] PMT - Parallel Multithreaded Encoder/Decoder [78372] (https://fileforums.com/showthread.php?t=103230)
[Multithreading Wrapper] PrecompX [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103511)
[Multithreading Wrapper] RazorX [BLACKFIRE69] (https://fileforums.com/showthread.php?t=103577)


[Precompressor] Anvil Forge Recompressor [Edison007] (https://krinkels.org/resources/afr-anvil-forge-recompressor.256/)
[Precompressor] Anvil Forge Recompressor [STDIO Patched] [Edison007 / Razor12911] (https://krinkels.org/resources/afr-anvil-forge-recompressor.256/)
[Precompressor] CLS-RED4 [Shegorat] (https://krinkels.org/resources/cls-red4.344/)
[Precompressor] FIFA 19 CAS Precompression Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=102461)
[Precompressor] LZOrec [Razor12911] (https://www.fileforums.com/showthread.php?t=102615)
[Precompressor] LZXrec [Razor12911] (https://www.fileforums.com/showthread.php?t=102675)
[Precompressor] Metro Exodus Precompression Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=103563)
[Precompressor] OodleRec [Razor12911] (https://www.fileforums.com/showthread.php?t=102453)
[Precompressor] pZlib v3 Final [Razor12911] (https://www.fileforums.com/showthread.php?t=98672)
[Precompressor] Saints Row The Third Remastered Precompression Tool [Razor12911] (https://www.fileforums.com/showthread.php?t=103546)
[Precompressor] Unreal Engine (3) LZO Recompressor [ProFrager] (https://krinkels.org/resources/uelr.260/)
[Precompressor] UELR v0.1.1e [Edison007 / ProFrager] (https://krinkels.org/threads/uelr.3645/post-35622)
[Precompressor] [OLD] XTool - Successor of ZTool [Razor12911] (https://www.fileforums.com/showthread.php?t=101729)
[Precompressor] XTool 2020 [Razor12911] (https://www.fileforums.com/showthread.php?t=102832)
[Precompressor] XTool 2020 [Database Maker] [Razor12911] (https://www.fileforums.com/showthread.php?t=104109)
[Precompressor] XTool 2020 [Plugins] [Razor12911] (https://www.fileforums.com/showthread.php?t=103876)
[Precompressor] ZSTDrec [Razor12911] (https://www.fileforums.com/showthread.php?t=102599)
[Precompressor] ZTool [Razor12911] (https://www.fileforums.com/showthread.php?t=99379)


CLS-BSC [Shegorat] (https://krinkels.org/resources/cls-bsc.386/)
[Unpacker] CLS-PrecompInside [ProFrager] (https://krinkels.org/resources/precompinside.1/)
[Unpacker] CLS-SREP [Razor12911] (https://www.fileforums.com/showthread.php?t=97976)
[Unpacker] CLS-SREP [ProFrager] (https://krinkels.org/resources/cls-srep.261/)
[Unpacker] [OLD] CLS-SREPInside [ProFrager] (https://krinkels.org/resources/srepinside.2/)


[U]Non-FreeArc Tools

arc_unpacker v0.11-0-gff3b9d9 (https://www.fileforums.com/showpost.php?p=495405&postcount=26)
Attack On Titan Linkdata Unpacker (https://krinkels.org/resources/aot_linkdata.337/)
Atelier PAK Decrypt (https://www.fileforums.com/showpost.php?p=495386&postcount=13)
Bank Dumping Tool (https://www.fileforums.com/showpost.php?p=497285&postcount=81)
Bincat (https://www.fileforums.com/showpost.php?p=495399&postcount=21)
CascView (https://www.fileforums.com/showpost.php?p=497742&postcount=89)
Cethleann - The Koei Swiss Army Knife (https://forum.xentax.com/viewtopic.php?t=21679)
Collection of Gibbed Tools (https://www.fileforums.com/showpost.php?p=495512&postcount=35)
Command Line RGSS Decryptor (https://github.com/usagirei/RGSS-Decryptor)
COWABUNGA (https://www.fileforums.com/showpost.php?p=499145&postcount=98)
Crysis 3 PAK Decryption Tool (https://www.fileforums.com/showpost.php?p=495401&postcount=23)
DATOneArchiver (https://www.fileforums.com/showpost.php?p=495597&postcount=50)
Dunia Engine LZO Recompressor [Edison007] (https://krinkels.org/resources/dunia-engine-recompressor.277/) / Uploaded here on FileForums (https://fileforums.com/showpost.php?p=493768&postcount=4)
Dunia Tools (https://www.fileforums.com/showpost.php?p=495402&postcount=24)
FModel (https://www.fileforums.com/showpost.php?p=497720&postcount=88)
God Of War SBP Tool (https://www.fileforums.com/showpost.php?p=495953&postcount=65[/url)
Gust Tools (https://www.fileforums.com/showpost.php?p=495400&postcount=22)
HDiffPatch (https://www.fileforums.com/showpost.php?p=495372&postcount=3)
How to get RSA key for encrypted CryEngine games (https://web.archive.org/web/20210723205314/https://atom0s.com/forums/viewtopic.php?f=11&t=223)
HPK Archiver (https://www.fileforums.com/showpost.php?p=495394&postcount=19)
HunexFileArchiveTool (https://github.com/LinkOFF7/HunexFileArchiveTool)
IGATool (https://www.fileforums.com/showpost.php?p=497961&postcount=90)
ITBTools (https://www.fileforums.com/showpost.php?p=497690&postcount=86)
JojoDiff (https://www.fileforums.com/showpost.php?p=495385&postcount=12)
KaktoR Oodle Library Collection (https://www.fileforums.com/showpost.php?p=499062&postcount=97)
KVSExtractor (https://www.fileforums.com/showpost.php?p=497141&postcount=79)
KVSToolbox (https://www.fileforums.com/showpost.php?p=497063&postcount=77)
LA 0.4b Lossless Audio Compressor (https://www.fileforums.com/showpost.php?p=496671&postcount=74)
MagesPack (https://www.fileforums.com/showpost.php?p=495406&postcount=27)
Modifed Gust PAK Tool for Atelier Sophie 2 (https://www.fileforums.com/showpost.php?p=496040&postcount=69)
Monster Hunter Stories 2 ARC Decryption Tool (https://www.fileforums.com/showpost.php?p=497452&postcount=84)
Northlight Tool (https://www.fileforums.com/showpost.php?p=495390&postcount=17)
Par Manager / Par Tool (https://www.fileforums.com/showpost.php?p=495442&postcount=29)
PhxTools (https://www.fileforums.com/showpost.php?p=495930&postcount=62)
QuickBMS (https://www.fileforums.com/showpost.php?p=495387&postcount=14)
RAD Video Tools (https://mega.nz/file/VlgVGCJb#w6DFHBLgz-fOykV0oLPhCGGKol4uzu1Swzbpl8DmiOA)
Raw binary file injector (https://www.fileforums.com/showthread.php?t=101697)
Recode FLAC to MP3 with FFMPEG (https://www.fileforums.com/showpost.php?p=495576&postcount=47)
RPKG Tool for HITMAN 1/2/3 (https://www.fileforums.com/showpost.php?p=495493&postcount=31)
Sad Offset Finding Tool (https://www.fileforums.com/showpost.php?p=497140&postcount=78)
Sad Hash Checker (https://www.fileforums.com/showpost.php?p=497536&postcount=85)
sakunaTool (https://www.fileforums.com/showpost.php?p=495371&postcount=2)
Scaleform Video Encoder (https://mega.co.nz/#!glh3HAzK!AAAAAAAAAABJm4RKlV3tmwAAAAAAAAAASZuESpV d7Zs)
Swiss File Knife [SFK] (http://www.stahlworks.com/dev/swiss-file-knife.html)
Skullgirls GFS extract (https://www.fileforums.com/showpost.php?p=499852&postcount=101)
The Alien Cube PAK Decryption Tool (https://www.fileforums.com/showpost.php?p=495798&postcount=56)
The Duper v1.4.01 (https://www.fileforums.com/showpost.php?p=495407&postcount=28)
Tools for decompressing ZenStudios ".pxp" archives (https://www.fileforums.com/showpost.php?p=496593&postcount=73)
TTGames BMS Script [Modified] (https://www.fileforums.com/showpost.php?p=495388&postcount=15)
[OLD] Unity Assets Bundle Extractor (https://github.com/DerPopo/UABE)
Unity Assets Bundle Extractor Avalonia (https://www.fileforums.com/showpost.php?p=495373&postcount=4)
Unity Bundle Tool (https://www.fileforums.com/showthread.php?t=104855)
Unpakke (https://www.fileforums.com/showpost.php?p=495592&postcount=49)
UnrealKey (https://www.fileforums.com/showpost.php?p=495529&postcount=45)
VGMToolbox (https://sourceforge.net/projects/vgmtoolbox/files/vgmtoolbox/VGMToolbox%20r1040/)
Watch Dogs [disrupt-r49_b38_2] (https://www.fileforums.com/showpost.php?p=495403&postcount=25)
WAV/WEM Extractor (https://www.fileforums.com/showpost.php?p=496769&postcount=75)
WAVExtractor_v2 (https://www.fileforums.com/showpost.php?p=497316&postcount=82)
WemTool (https://www.fileforums.com/showthread.php?t=104859)
Wolfenstein SPK + MPK Extractor (https://mega.nz/file/s9JE3RYL#sysFHCP13x-b0gbJkMf2CkUjjrVM6aB9tJiCybgbn74)
WolvenKit (https://www.fileforums.com/showpost.php?p=495391&postcount=18)
WWise PCK BMS Script (https://www.fileforums.com/showpost.php?p=495389&postcount=16)
XDelta (https://www.fileforums.com/showpost.php?p=495384&postcount=11)
XVI32 (https://www.fileforums.com/showpost.php?p=495952&postcount=64)


Misc.

Forza Horizon 3 Filename Decipher Tool (https://www.fileforums.com/showpost.php?p=496146&postcount=71)
LEGO Worlds: No DAT Patch for Build 3833060 (https://www.fileforums.com/showpost.php?p=495612&postcount=52)
TTMagic | TTGames Universal Anti-Anti-DAT Check Patch (https://www.fileforums.com/showthread.php?p=495698#post495698)


Data Sheets

God of War (https://www.fileforums.com/showpost.php?p=496052&postcount=70)
Mad Max (https://www.fileforums.com/showpost.php?p=495513&postcount=36)
Sekiro: Shadows Die Twice (https://www.fileforums.com/showpost.php?p=495514&postcount=37)
Weird West: Build 8447248 (https://www.fileforums.com/showpost.php?p=496398&postcount=72)

Masquerade
08-01-2022, 01:11
sakunaTool


Used for Sakuna: Of Rice and Ruin
Extract arc files with sakunaTool.exe to remove LZ4 compression
Rebuild arc file with sakunaTool then use patch program like XDelta to restore it to the original arc file

https://github.com/LinkOFF7/sakunaTool

By LinkOFF7 & Visntse

Masquerade
08-01-2022, 01:24
HDiffPatch [Also known as HDiffZ]


Make a patch between two files (convert an old file to a new file).
HDiffZ is slower at patch creating than XDelta, however the patches made by this program are smaller than XDelta and apply in a similar time.

Example Usage
hdiffz-x64 -c-lzma2-9 -C-no <old file> <new file> <patch file>

to make a patch
hpatchz-x64 <old file> <patch file> <newfile>

to apply a patch to the old file, making a new file

https://github.com/sisong/HDiffPatch

By sisong

Masquerade
08-01-2022, 01:28
Unity Assets Bundle Extractor Avalonia


Useful because it can decompress Unity Asset Bundles.

https://github.com/nesrak1/UABEA

By nesrak1

Masquerade
08-01-2022, 02:09
Brunsli


You can use brunsli with FreeArc to compress JPEG images.

Example Usage:
[External compressor:brunsli]
header = 0
solid = 0
packcmd = cbrunsli $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = dbrunsli $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

https://github.com/google/brunsli

By Google - compiled version attached to this post was compiled by me.

Masquerade
08-01-2022, 02:17
MPZ [Also known as MPZAPI]


Compressor for MP3 audio files.
You can use MPZ in $$arc$$ mode or as an STDIO compressor.

Example Usage:
[External compressor:mpz]
header = 0
packcmd = {compressor} c <stdin> <stdout>
unpackcmd = {compressor} d <stdin> <stdout>
[External compressor:mpz]
header = 0
packcmd = {compressor} c $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = {compressor} d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

By Eugene Shelwein

Masquerade
08-01-2022, 02:30
MCM

General compressor. Good on binary files (exe/dll).

Example Usage:
[External compressor:mcm]
header = 0
packcmd = {compressor} -x7 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = {compressor} d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp
https://encode.su/threads/2127-MCM-LZP
https://github.com/mathieuchartier/mcm

By Mat Chartier

Masquerade
08-01-2022, 06:56
Razor Compressor [v1.03.7 Patched for STDIO usage]


Original version shared by Razor12911 (https://www.fileforums.com/showthread.php?t=103298) was patched for RZ v1.01. It's possible to import the library to RZ v1.03.7 with CFF explorer and everything works.

Example Usage:
[External compressor:rzs]
header = 0
packcmd = rz-1.03.7-stdio.exe a -y -d 128m $stdio$ <stdin> <stdout>
unpackcmd = rz-1.03.7-stdio.exe e -y $stdio$ <stdin> <stdout>

Razor Archiver by Christian Martelock (https://encode.su/threads/2829-RAZOR-strong-LZ-based-archiver)
RZ STDIO patch by Razor12911 (https://www.fileforums.com/showthread.php?t=103298)

Masquerade
08-01-2022, 08:11
7-Zip


Open source archiver with support for multiple compression algorithms (deflate, LZMA2 etc...)

Example Usage:
[External compressor:7z]
header = 0
packcmd = {compressor} a -txz -an -mcrc=0 -m1=lzma2:d64m:mf=bt4:mc=1000000:lc=4:lp=0 -mmt=4 -mx9 -si -so <stdin> <stdout>
unpackcmd = {compressor} x -txz -mmt2 -an -y -si -so <stdin> <stdout>

By Igor Pavlov
7-Zip Website (https://7-zip.org/)

Masquerade
08-01-2022, 08:17
LZMA


Open source LZMA archiver from the LZMA SDK.

Example Usage:
[External compressor:LZMA]
header = 0
packcmd = {compressor} e -a1 -si -so <stdin> <stdout>
unpackcmd = {compressor} d -si -so <stdin> <stdout>

By Igor Pavlov

Masquerade
08-01-2022, 08:45
XDelta


Make a patch between two files (convert an old file to a new file).
Extremely fast and makes small patches. Quick to apply patches too.
Open source.

Example Usage:
xdelta-x64.exe -v2 -S lzma -9 -e -s <old file> <new file> <patch file>

xdelta-x64.exe -v2 -d -f -s <old file> <patch file> <newfile>

https://github.com/jmacd/xdelta

By Joshua MacDonald

Masquerade
08-01-2022, 08:52
JojoDiff [Also known as JDiff / Jojo's Binary Diff]


Patcher just like XDelta and HDiffZ. Also, open source.

Example Usage:
jdiff.exe -j -vvv <old file> <new file> <patch file>

jdiff.exe -u -vvv <old file> <patch file> <newfile>

http://jojodiff.sourceforge.net/

By Joris Heirbaut

Masquerade
08-01-2022, 08:57
Atelier PAK Decrypt


Utility to decrypt and unpack PAK files from the GUST engine.
Note that some of the Koei Tecmo games that use the encrypted GUST engine contain Japanese filenames. In this case, you can't just run the games extracted. Other games such as Atelier Ryza 2 can be run extracted because all file paths and names in the archives are in English.

Example Usage:
a17_decrypt.exe <input pak file>

a18_decrypt.exe <input pak file>

https://github.com/shizukachan/atelier_pak_decrypt

By shizukachan

Masquerade
08-01-2022, 09:04
QuickBMS


One of the most powerful tools anyone has made. This can be used for all kinds of purposes including extracting game archives, replacing data in archives with null bytes and decryption.
You need the correct BMS script for the game in question to parse the game files.

http://aluigi.altervista.org/quickbms.htm
http://aluigi.altervista.org/quickbms_list.php

By Luigi Auriemma

Masquerade
08-01-2022, 09:11
TTGames BMS Script [Modified]


Modified version of TTGames BMS script by Luigi Auriemma for compatibility with some LEGO games that the public script struggles with.
You will still need a patched EXE to run the games in an extracted state. Older games do not need an EXE patch.

Masquerade
08-01-2022, 09:15
WWise PCK BMS Script


Unpack WWise PCK archives with QuickBMS. This script extracts with file names and folder paths.

By Nicknine / bnnm

Masquerade
08-01-2022, 10:58
Northlight Tool


Extraction utility for the following games:

Alan Wake (PC/X360)
Alan Wake American Nightmare (PC/X360)
Quantum Break (PC, possible XOne)
Control (PC, possible XOne/PS4)
Alan Wake Remastered (PC, possible XOne/PS4)

Useful because you can extract Bink videos. For example, I extracted Bink videos from CONTROL and then you can compress them with BPK afair.


https://forum.xentax.com/viewtopic.php?t=21047
By Evin

Masquerade
08-01-2022, 11:05
WolvenKit CLI


Command line extraction utility for REDEngine games (e.g. The Witcher 3: The Wild Hunt, Cyberpunk 2077).
Example usage, extracting Bink videos from Cyberpunk 2077 - BPK doesn't work for them, but this way you can extract the credits video. Gives file names and paths unlike Aluigi's BMS script.
CLI version works significantly easier than GUI version.

https://github.com/WolvenKit/Wolvenkit

Masquerade
09-01-2022, 03:00
HPK Archiver


HPK Archiver for Haemimont Engine game files.
Unpacking the archives will remove LZ4 compression and you can make new archives with the ability to XDelta from old ones.

https://github.com/nickelc/hpk

By nickelc

Masquerade
09-01-2022, 03:03
SOS-FoMT-LZS


You can use this tool to remove compression from LZS archives, such as game files from Soul Nomad and the World Eaters.

https://github.com/JokerDKha/SOS-FoMT-LZS

By JokerD

Masquerade
09-01-2022, 06:08
Bincat


Bincat is a simple tool to join together files in a directory into a single file.
Limited in some respects because it does not run recursively so you can only concatenate files if they are all in the same folder.
Very niche tool with very interesting uses. In my repacks, I have used this to join together several decompressed LZ4 streams in the engine used by the WRC games (PPKG files) into one big file. You can then compress the big file with LZ4 and HDiffZ it. Hopefully I will explain here one day the process of extracting the streams, decompressing them and then building the new file with Bincat.

http://aluigi.altervista.org/mytoolz/bincat.zip

By Aluigi

Masquerade
09-01-2022, 06:14
Gust Tools


Various tools for modding of Gust engine games (think Koei Tecmo).
You will be particularly interested in gust_pak.exe because it can extract ecnrypted Koei Tecmo PAK archives leaving a JSON file and decrypted files. You can then use gust_pak.exe to rebuild the archive from the JSON file. They are so similar you can XDelta the new file to make it the old file and have a 100% CRC perfect repack. The delta files are only a few kb in size, so I didn't even bother using HDiffZ in this case. It's not worth the long patch generation time.

https://github.com/VitaSmith/gust_tools

By VitaSmith

Masquerade
09-01-2022, 06:18
Crysis 3 PAK Decryption Tool


Decrypt PAK archives for Crysis 3 to Zip files. Please note the game does not run in a decrypted state.

Masquerade
09-01-2022, 06:27
Dunia Tools


You can use this to unpack FAT/DAT files from Dunia engine games. The following games are supported:

Far Cry 2
Far Cry 3
Far Cry 3 Blood Dragon
Far Cry 4
Far Cry Primal
Watch_Dogs
Watch_Dogs 2

Useful if you want to extract audio or Bink videos to compress them better.

https://www.nexusmods.com/farcryprimal/mods/5/
https://mega.nz/file/M5IgRJLJ#3aOH8_2oN6nEmXBdQ4Oj1wRy6H5AOEFJzOvERhJe7 Tw

By L Fino

Masquerade
09-01-2022, 06:35
Watch Dogs [disrupt-r49_b38_2]


Tool by Rick Gibbed to unpack and decompress Watch Dogs game archives.

https://mega.nz/file/dhQGUbqB#Y4SEYxYJlZab8PDCs6DgTO7-_XGrRU9RaCIFvigNhms

By Rick Gibbed

Masquerade
09-01-2022, 07:59
arc_unpacker v0.11-0-gff3b9d9


Unpacker for all kinds of Visual Novels.


https://github.com/vn-tools/arc_unpacker
https://rawgit.com/vn-tools/arc_unpacker/master/GAMELIST.htm

Masquerade
09-01-2022, 08:03
MagesPack


Unpacker + repacker for games made in the Mages Engine (Steins;Gate, Chaos;Child).

https://github.com/DanOl98/MagesPack

By DanOl98

Masquerade
09-01-2022, 08:07
The Duper v1.4.01


You can use this to remove duplicate files from your game. This means there is less to compress. Makes a handy batch file to re-copy all of the duplicated files.

THE DUPER v 1.4.01
===================
This app it's used to compare files and the result it's a 2 .bat files
-Dupe.bat y remove.bat

How to use:
-------------
Unpack this zip in a folder and copy the 3 .exe where you want analiyze the files, and execute dcmp.exe and wait, when the program finish you found 2 .bat files

If you Execute remove.bat, in this case you delete the duped files
When you removed the duped files in the installation program make a "call" to the file dupe.bat and you recover the files

Don't forgett to delete the files list_tmp.txt ref_tmp.txt, both are a temps from the analisys


This program it's under license FREEWARE. DON'T PAY FOR THAT
AT NO MOMENT ONE TAKES RESPONSIBILITY OF ANY DAMAGE TO YOUR COMPUTER, OR HARDWARE OR SOFTWARE, LIKE ANY LOST ONE OF DATA


By KapitalSin

:( Sad8669
16-01-2022, 03:06
Tools for Yakuza PAR archives


Used to unpack .par files.


Creation of .par files with specifed files.


Supports SLLZ compression (Including SLLZ V2 used in Yakuza Kiwami 2).


https://github.com/Kaplas80/ParManager

By Kaplas80 &
SutandoTsukai181

I don't know if i can post too, delete this if not.

Masquerade
16-01-2022, 04:02
All contributions are appreciated :D

I held off on posting this because the par structure of Yakuza games is slightly complex in that there's par archives within par archives so it's not an easy one to recompress.

@all Please feel free to add anything to this thread you think is useful, the whole purpose of this thread is to encourage everyone to learn a bit more about how to compress even smaller.

KaktoR
20-01-2022, 11:34
RPKG Tool for HITMAN 1/2/3


With this you can unpack and rebuild game archives for HITMAN 1/2/3
Rebuilding game archives is CRC perfect (from what I tested out of 5 archives from Hitman 3 v3.70).
Possibility to merge patch files into main archives to save several gigs of space (not tested and not crc perfect ofcourse)


Usage:
Unpack rpkg file
rpkg-cli.exe -extract_from_rpkg "<path>\<filename>"

Unpack all rpkg files
rpkg-cli.exe -extract_from_rpkgs "<path to folder containing RPKGs>"

Repack rpkg file
rpkg-cli.exe -generate_rpkg_from <foldername>

https://github.com/glacier-modding/RPKG-Tool
Latest hash lists: hitmandb.notex.app/latest-hashes.7z

Masquerade
20-01-2022, 21:53
@KaktoR
What are the speeds like for this tool now? I recall it being very slow at extracting and packing files.

KaktoR
21-01-2022, 00:39
HDD speeds (my m2 SSD is nearly full, so can't test)
chunk0.rpg (13.5 GB)
Unpack: 100% Done in 1181.58s
Repack: Scanning folder time 10min + 100% Done in 1141.25s

Edit:
Note: Disabled AV (Windows Defender) to speed up the whole process (it will give you a good speed boost).

M2 SSD
11:03:10 - Start
G:\test>rpkg-cli.exe -extract_from_rpkg "G:\chunk0.rpkg"
Extract from RPKG file: G:\chunk0.rpkg
Extract: All hash files with filter ""
Valid RPKGv2 file magic signature found.
RPKGv2 file chunk0.rpkg is not a patch file.
Importing index from RPKGv2 file: chunk0.rpkg
Importing RPKG file data: 100% Done in 2.5325s
Extracting from RPKG: 100% Done in 227.422s
11:07:01 - Stop

11:07:45 - Start
G:\test>rpkg-cli.exe -generate_rpkg_from "G:\Test\chunk0"
Using RPKG meta file: G:\Test\chunk0\chunk0.meta
Valid RPKGv2 file magic signature found.
RPKGv2 file G:\Test\chunk0\chunk0.meta is not a patch file.
Scanning folder: Done
Writing to temporary RPKG file: chunk0.rpkg.tmp
Generating RPKG file: 100% Done in 427.501s
Writing RPKGv2 offset index: 100% Done in 0.245895s
Writing RPKGv2 info index: 100% Done in 0.444143s
Merging RPKGv2 file and temporary RPKG files...
Merged RPKGv2 file and temporary RPKGv2 file in 130.196s
Successfully generated RPKGv2 file: chunk0.rpkg
11:17:34 - Stop

CRC Checks
Original CD516CCC
Repacked CD516CCC

Masquerade
22-01-2022, 13:14
Collection of Gibbed Tools: http://svn.gib.me/builds/

Masquerade
22-01-2022, 14:42
Data Sheet for Mad Max [GOG v1.0.3]


Use this BMS script to unpack the game archives specified below then you can patch out the flagged files using SFK.
http://aluigi.altervista.org/bms/justcause2.bms
KB2i files are Bink videos and can be compressed with BPK
FSB5 files are FMOD banks that contain vorbis audio. These don't compress well so you can patch these out to speed up lolz a bit since there's less data for it to compress.
853ad14e.KB2i is unneeded by the game so you can rip it if you want. The other two videos are needed and the game will crash if those videos are not available. They are intro videos.

MAD MAX - Offsets in Decimal

game2.arc

143560704 - 206051659 - def0d575.KB2i

643588096 - 766688731 - 39844701.KB2i

game37.arc

325599232 - 531816827 - 853ad14e.KB2i

game0.arc

42659840 - 862431583 - 03fc1a91.FSB5

game3.arc

580550656 - 605097151 - 9925af7e.FSB5

200591360 - 484501599 - 89bd0bdc.FSB5

game1.arc

152014848 - 419433599 - ef5ed197.FSB5

0 - 102791775 - 692d0738.FSB5

105039872 - 150999199 - 9cbf649e.FSB5

Masquerade
22-01-2022, 14:49
Data Sheet for Sekiro: Shadows Die Twice [Steam Build 5794815]


All the files below are present inside Data1.bdt and are duplicates of everything within the sound folder.
You can cut the size of your repack by several GBs just by patching out the duplicated files and then using SFK to patch all of these files back in using the existing sound files.
This is an improvement over the method shown by Panker1992 - his method involved patching out entire blocks of audio whereas here, each individual file get patched out so that you can separate language audio and remove duplicate data.


Data1.bdt - Offsets in Decimal

SPANISH

2056686058 - 2062779625 - vm25_ese

1698264554 - 1704638281 - vm17_ese

1460658010 - 1470921785 - vm13_ese

421122474 - 431546121 - vm10_ese

1590043290 - 1604286969 - vm15_ese

1848422746 - 1877408601 - vm20_ese

913828218 - 1033695257 - vm11_ese

JAPANESE

1264734490 - 1403977305 - vm11_jaj

1933972634 - 1967974169 - vm20_jaj

1631120666 - 1647248569 - vm15_jaj

1491509082 - 1503211769 - vm13_jaj

451123018 - 461999273 - vm10_jaj

2073733546 - 2080483977 vm25_jaj

1716761674 - 1723486569 - vm17_jaj

ITALIAN

1156029210 - 1264734489 - vm11_iti

1907205562 - 1933972633 - vm20_iti

1618851610 - 1631120665 - vm15_iti

1481838010 - 1491509081 - vm13_iti

441860042 - 451123017 - vm10_iti

1710847146 - 1716761673 - vm17_iti

2068629770 - 2073733545 - vm25_iti

GERMAN

2045503818 - 2050799369 - vm25_ded

1686058026 - 1692775721 - vm17_ded

401814186 - 411867369 - vm10_ded

1440963354 - 1451168953 - vm13_ded

1563944922 - 1578159449 - vm15_ded

1791914362 - 1822154841 - vm20_ded

683703002 - 803188505 - vm11_ded

FRENCH

1033695258 - 1156029209 - vm11_frf

1877408602 - 1907205561 - vm20_frf

1604286970 - 1618851609 - vm15_frf

1470921786 - 1481838009 - vm13_frf

431546122 - 441860041 - vm10_frf

1704638282 - 1710847145 - vm17_frf

2062779626 - 2068629769 - vm25_frf

ENGLISH

803188506 - 913828217 - vm11_enu

1822154842 - 1848422745 - vm20_enu

1578159450 - 1590043289 - vm15_enu

1451168954 - 1460658009 - vm13_enu

411867370 - 421122473 - vm10_enu

2050799370 - 2056686057 - vm25_enu

1692775722 - 1698264553 - vm17_enu

MISC

484789978 - 588394585 - rm11

588443114 - 674049417 - sm11

2009624634 - 2045349689 - sm25

1967977706 - 1999163081 - xm20

1723490106 - 1754630297 - xm17

1536736730 - 1563711897 - sm15

374582266 - 400861241 - sm10

1503214762 - 1528145225 - xm13

1403980298 - 1410161641 - xm11

1661564874 - 1685963561 - sm17

1771126490 - 1790800185 - sm20

462001162 - 476119849 - xm10

361765642 - 374563017 - rm10

2080485930 - 2093097161 - xm25

1759064554 - 1771113481 - rm20

1647250458 - 1658755929 - xm15

1430398602 - 1440771625 - sm13

2001824282 - 2009604249 - rm25

676485146 - 683697369 - vm11

1530594410 - 1536710153 - rm15

panker1992
22-01-2022, 17:52
Data Sheet for Sekiro: Shadows Die Twice [Steam Build 5794815]



You dont need to patch files back in sekiro.exe can load them as lose files.

either keep the already extracked and remove with hex editor. or delete lose files and keep the compressed ones

dixen
22-01-2022, 22:44
RPKG Tool for HITMAN 1/2/3
This tool remove encrypt from RPKG?

Masquerade
22-01-2022, 23:53
You dont need to patch files back in sekiro.exe can load them as lose files.

either keep the already extracked and remove with hex editor. or delete lose files and keep the compressed ones

Patch back in for CRC perfection. :D

Masquerade
22-01-2022, 23:54
This tool remove encrypt from RPKG?

Yes, decrypts + decompresses. The intention of the tool is to enable people to mod the game.

KaktoR
23-01-2022, 02:47
All of the files contain wem audio and lots of other stuff which I didn't checked yet (and probably never will be becuase of over 1 million files). I assume that unpack for all files on SSD is over in probably 20 minutes, while repacking on a SSD is finished in probably 25/30 minutes (disabled AV).

I already did a test for merging all the patch files into their parent archives, which works great and reduce the size by ~6GB, unfortunatelly the game crash if you start a level. Maybe "packagedefinition.txt" or some hex editing is the key but don't know anything about it.

However I added a test on a SSD on my previous test (https://fileforums.com/showpost.php?p=495496&postcount=33)

Masquerade
23-01-2022, 02:56
FYI, wemtool will not work on the Hitman 3 files because they do not use .wem extensions. I did try to make a custom version for Hitman 3 but there was some error and I can't quite remember it.

@KaktoR you can decrypt PackageDefinition.txt using h6xtea. I have included an archive below using files from my personal Hitman 3 installation showcasing this tool and a decrypted PackageDefinition.txt

KaktoR
23-01-2022, 03:01
WemTool work on them. You just have to rename file extension to WEM (WWES and WWEM files).

*.GFXV = USM video?
CRIUSF_DIR_STREAM�fmtver�filename�filesize�datasiz e�stmid�chno�minchk�minbuf�avbps�video.usm�Intro__ 00000.bmp�:Intro_ENG.FL.wav

Gehrman
24-01-2022, 00:27
UnrealKey (https://github.com/devinacker/UnrealKey)is a tool for automatically finding the AES-256 decryption keys for Unreal Engine 4 encrypted pak files.

Pass the path to a game's executable as an argument to UnrealKey.exe, and it will launch the game and attempt to detect the loading and decryption of encrypted pak files. If successful, the decryption key(s) will appear in the output, usually within a few seconds of launching the game.

Example output
[11976] starting TetrisEffect.exe
[ 9604] starting "C:\Program Files\Epic Games\TetrisEffect\TetrisEffect/Binaries/Win64/TetrisEffect-Win64-Shipping.exe" TetrisEffect
[ 9604] Reading pak info for \\?\C:\Program Files\Epic Games\TetrisEffect\TetrisEffect\Content\Paks\Tetri sEffect-WindowsNoEditor.pak (encrypted)
[ 9604] Reading encrypted pak index for TetrisEffect-WindowsNoEditor.pak
[ 9604] Detected buffer->index copy successfully
[ 9604] Detected index decryption successfully, finding key now...
[ 9604] Key: 0x0635D5F4B20E2CF1708524223DB7F1C77E7C49C556C5B875 A90132E88E91F734
[11976] process exited with code 0x0

Summary:
--------

File: \\?\C:\Program Files\Epic Games\TetrisEffect\TetrisEffect\Content\Paks\Tetri sEffect-WindowsNoEditor.pak
Key: 0x0635D5F4B20E2CF1708524223DB7F1C77E7C49C556C5B875 A90132E88E91F734
Limitations
Currently, only 64-bit Windows games are supported.

Games using Steam DRM should work (without needing to manually create a steam_appid.txt file), as long as the Steam client is open and logged in (and the game is actually in your library). If you're having trouble with a particular game, try running it through Steamless first.

Games using anti-cheat software will most likely not work, since this tool doesn't make any attempt to circumvent it.

This has not been tested with a large number of games yet. If you have a UE4 game that uses encrypted pak files and UnrealKey doesn't seem to detect the decryption keys correctly, please open an issue and include the entire output from the program (but also please be sure to note the above as well).

shazzla
25-01-2022, 00:12
Anyone tried Ace combat assault horizon with Unrealkey.exe?

FitGirl
25-01-2022, 03:43
Ace Combat has it's own encryption scheme outside of standard UE4 scheme.

Masquerade
27-01-2022, 12:14
Recode FLAC to MP3 with FFMPEG

for /r %%f in (*.FLAC) do ffmpeg -i "%%f" -ab 320k -map_metadata 0 -id3v2_version 3 "%%~df%%~pf%%~nf.mp3"
Original solution here: https://stackoverflow.com/questions/26109837/convert-flac-to-mp3-with-ffmpeg-keeping-all-metadata#26109838

or for direct usage in CMD:

for /r %f in (*.FLAC) do ffmpeg -i "%f" -ab 320k -map_metadata 0 -id3v2_version 3 "%~df%~pf%~nf.mp3"

Hexagon123
29-01-2022, 00:27
http://www.nullsecurity.org/unpakke

Used to repack Rayman Legends, and other games.

Use 0.4b for CLI

Masquerade
29-01-2022, 08:03
DATOneArchiver


DATOneArchiver in it's current state (v1.0) is a complete toolset for extracting, modifying, and creating TT Games DAT archive files for these games:
Lego Star Wars: The Video Game
Lego Star Wars II: The Original Trilogy

DATOneArchiver is a command-line based tool written in .NET.


Currently does not support compression of LZ2K as used in later LEGO games.

https://github.com/yodadude2003/DATOneArchiver

By yodadude2003

Hexagon123
29-01-2022, 10:23
DATOneArchiver


DATOneArchiver in it's current state (v1.0) is a complete toolset for extracting, modifying, and creating TT Games DAT archive files for these games:
Lego Star Wars: The Video Game
Lego Star Wars II: The Original Trilogy

DATOneArchiver is a command-line based tool written in .NET.


Currently does not support compression of LZ2K as used in later LEGO games.

https://github.com/yodadude2003/DATOneArchiver

By yodadude2003

Happens in The Chronicles of Narnia: The Lion, The Witch, and the Wardrobe, Bionicle Heroes, or any earlier game released before 2007.

Masquerade
31-01-2022, 10:03
LEGO Worlds: No DAT Patch for Build 3833060


Change the byte at location 4247CA from 74 to EB in LEGO_Worlds_DX11.exe.
This will allow the game to run with unpacked, decompressed DAT archives.
Thanks to acidicoala for working with me on this and to our mutual friend m0xf for the original method.
Unpack the DAT archives using the BMS script linked here: https://www.fileforums.com/showpost.php?p=495388&postcount=15

Before:
https://i.ibb.co/LgXJ7n5/1.png

After:
https://i.ibb.co/7jss45c/2.png

Just a taster of what's to come ;)

L33THAK0R
04-02-2022, 16:31
do you happen to know what the significance behind the byte change is? A few months ago I (unsuccessfully) attempted to figure out the patching process but didn't have much luck even after extensive analysis of the executable with Ghidra, I did however note the byte change but alas was unable to determine the significance.

:( Sad8669
04-02-2022, 21:03
HxD is a powerful tool. Some of the files comes with encryption from developers to prevent modders from modding and stuff.

No matter how stronger the encryption, they can't break the file, and a file type is recognized by their headers. An example,

Link (https://fileforums.com/showpost.php?p=495542&postcount=2765)

Masquerade
04-02-2022, 23:51
do you happen to know what the significance behind the byte change is?

I plan to write a full post about our findings with acidicoala but to answer your question in short:

Lol, I can already see what's going on. EB is hex for JMP (unconditional jump) opcode, while 74 is opcode for JE (jump if equal)

Masquerade
11-02-2022, 11:35
The Alien Cube PAK Decryption Tool


Decrypt PAK archives for The Alien Cube to ZIP files.
Game runs as normal in a decrypted state.
You can use the included batch file to auto decrypt the game and delete encrypted paks.

By atom0s

Project page here (https://zenhax.com/viewtopic.php?f=9&t=15953).

Masquerade
17-02-2022, 12:49
BankDumper


A little tool I wrote in C# to dump an FMOD bank into an FSB by stripping away the header info before FSB5.
On its own, this tool is neither special or useful. But, it's part of a much larger process of correctly compressing FMOD audio banks using MSC and OGGRE.

https://github.com/Masquerade64/BankDumper

panker1992
18-02-2022, 07:07
[WIP] BankDumper


A little tool I wrote in C# to dump an FMOD bank into an FSB by stripping away the header info before FSB5.
On its own, this tool is neither special or useful. But, it's part of a much larger process of correctly compressing FMOD audio banks using MSC and OGGRE.

What needs doing?

Fix for banks that contain multiple FSB headers. Currently this only works for banks that contain a single FSB header.



Can you make something that can process audio inside pack files and bank files
they both hold wem files which oggre can compress

also i am working on something this community will love :D 90% done

mausschieber
18-02-2022, 08:02
also i am working on something this community will love :D 90% done

yes a Designer where usefull for the community
Since Gupta no longer continues with his designer
thanks

Masquerade
18-02-2022, 08:28
Can you make something that can process audio inside pack files and bank files
they both hold wem files which oggre can compress

Already have a working processor for Ogg + Wav FMOD banks/fsbs, but not ready for public usage yet.

Razor12911
18-02-2022, 21:37
Some cls I created after my first use of bpk... which was on Watch Dogs videos and it produced some error and from what I understand is that some videos cause bpk to bug out so this cls-bpt (bpk patch) just tries to filter out the videos that cause these errors. (You do not gain ratio from these videos as they are just skipped)

If the code used in cls-bpk.dll is the same as bink_pack.exe then this should work without problems (same goes for the decoder).

The principle of cls-bpt is bk2 videos are scanned and, both encoded and decoded by bink_pack.exe and bink_unpack.exe respectively, if either one of them fail then the data is not passed through the original cls-bpk.
This will avoid the "motion data" error message and a possible crash afterwards.

Given the involvement of bink_pack.exe and bink_unpack.exe, this means that every single video is at least encoded twice and decoded once when compressing and this will probably more than half the speed performance than when using bpk originally however when decompressing, the speed remains the same :)

Required files when compressing
bink_pack.exe
bink_unpack.exe
cls-bpk.dll
cls-bpt.dll

Required files when decompressing
cls-bpk_u.dll
cls-bpt.dll

You can get bpk from here (https://krinkels.org/resources/bpk.263/).

Notes

Only use this cls when you are having issues with bpk as there is no telling if bpt will produce errors of its own or if it will affect ratio.
This only focuses on bk2 videos.

Hexagon123
20-02-2022, 15:07
Used to extract encrypted *.ERA files in Halo Wars: DE.

https://github.com/HaloMods/HaloWarsDocs/releases/tag/v.1.0.7

:( Sad8669
22-02-2022, 07:01
God of War - Sound Banks
-------------------------------
No.| Name of the file | Blocks|
-------------------------------
1.lvl_stn000.sbp | 0 - 18528 |
2.lvl_helr000.sbp | 0 - 16736 |
3.lvl_peak000.sbp | 0 - 21600 |
4.lvl_hel000.sbp | 0 - 14688 |
5.lvl_alf000.sbp | 0 - 44128 |
6.lvl_foot000.sbp | 0 - 7008 |
7.lvl_riv000.sbp | 0 - 22368 |
8.lvl_stn950.sbp | 0 - 5472 |
9.lvl_cal700_templeflip.sbp | 0 - 6240 |
10.chr_kratos.sbp | 0 - 45152 |
11.lvl_muspelheim.sbp | 0 - 3424 |
12.lvl_jot000.sbp | 0 - 2912 |
13.lvl_nid000.sbp | 0 - 1632 |
14.lvl_cal000.sbp | 0 - 29792 |
15.lvl_cal500_runevault.sbp | 0 - 7264 |
16.lvl_xpl300_stronghold.sbp | 0 - 2912 |
17.lvl_cal800_snakebelly.sbp | 0 - 2144 |
18.chr_son.sbp| 0 - 7520 |
19.chr_dragon_peakspass.sbp | 0 - 8288 |
20.lvl_xpl450_huldramines.sbp | 0 - 2400 |
21.lvl_cal130_templeint.sbp | 0 - 3680 |
22.lvl_xpl200_funeral.sbp | 0 - 2912 |
23.glb_perm.sbp| 0 - 32864 |
24.lvl_xpl400_huldramines.sbp | 0 - 2400 |
25.chr_jotunn.sbp | 0 - 8800 |
26.chr_magni.sbp | 0 - 4192 |
27.chr_valkyrie.sbp | 0 - 9312 |
28.lvl_jot_cal300.sbp | 0 - 352 |
29.lvl_xpl850_dungeonforest | 0 - 2400 |
30.chr_traveler.sbp| 0 - 8288 |
31.lvl_riv925.sbp | 0 - 2144 |
32.chr_dark_one_shared.sbp | 0 - 8544 |
33.chr_draugr.sbp | 0 - 8288 |
34.chr_golem.sbp | 0 - 6496 |
35.chr_stone_mason.sbp | 0 - 1120 |
36.vo_glb_troll_efforts.sbp | 0 - 2144 |
37.chr_baldur.sbp | 0 - 6240 |
38.chr_worldsnake.sbp | 0 - 1376 |
39.lvl_for200_house.sbp | 0 - 1632 |
40.lvl_xpl100_httk.sbp | 0 - 1120 |
41.lvl_cal590_runevaultelevator.sbp | 0 - 1120 |
42.chr_wulver.sbp | 0 - 5216 |
43.chr_witch_shared.sbp | 0 - 3168 |
44.chr_dragon_baldur.sbp| 0 - 2400 |
45.lvl_peak100.sbp | 0 - 3424 |
46.chr_projection.sbp | 0 - 2400 |
47.mech_gondola_lift.sbp| 0 - 864 |
48.lvl_peak200.sbp | 0 - 1888 |
49.chr_troll_shared.sbp | 0 - 5984 |
50.lvl_for350_exittunnel.sbp | 0 - 864 |
51.lvl_riv325.sbp | 0 - 1888 |
52.lvl_chisel_room.sbp | 0 - 2144 |
53.veh_boat.sbp | 0 - 1888 |
54.chr_flyer_shared.sbp | 0 - 2656 |
55.vo_glb_dark_ones_efforts.sbp | 0 - 4704 |
56.lvl_for660_templeinterior.sbp | 0 - 1376 |
57.mx_alfheim.sbp | 0 - 5216 |
58.mag_temporal_light.sbp | 0 - 1888 |
59.vo_glb_valkyrie_efforts_gnr.sbp | 0 - 352 |
60.chr_dragon_xpl.sbp | 0 - 4704 |
61.chr_crawler.sbp | 0 - 4192 |
62.chr_helwalker.sbp | 0 - 5472 |
63.mech_bell_puzzle.sbp | 0 - 1376 |
64.chr_wolf.sbp | 0 - 3936 |
65.lvl_riv200.sbp | 0 - 1120 |
66.chr_troll_guardian.sbp | 0 - 3680 |
67.vo_glb_valkyrie_efforts_rot.sbp | 0 - 352 |
68.vo_glb_witch_efforts.sbp | 0 - 1888 |
69.vo_glb_valkyrie_efforts_olr.sbp| 0 - 352 |
70.chr_modi.sbp | 0 - 2144 |
71.vo_glb_valkyrie_efforts_kaa.sbp | 0 - 352 |
72.lvl_riv480.sbp | 0 - 1632 |
73.mech_waterwheel.sbp | 0 - 608 |
74.vo_glb_troll_banter.sbp | 0 - 1376 |
75.lvl_xpl600_masontrail.sbp | 0 - 864 |
76.vo_glb_bandit_undead_efforts.sbp | 0 - 2144 |
77.vo_glb_brawler_undead_efforts.sbp | 0 - 2144 |
78.vo_glb_valkyrie_efforts_sig.sbp | 0 - 352 |
79.vo_glb_fanatic_undead_efforts.sbp | 0 - 2144 |
80.vo_glb_valkyrie_efforts_eir.sbp | 0 - 352 |
81.vo_glb_valkyrie_efforts_hld.sbp | 0 - 352 |
82.vo_glb_dark_ones_banter.sbp | 0 - 4448 |
83.vo_glb_valkyrie_efforts_gnd.sbp | 0 - 352 |
84.lvl_riv350.sbp | 0 - 1120 |
85.lvl_for900_exitclimb.sbp | 0 - 864 |
86.chr_troll_fire.sbp | 0 - 1888 |
87.brk_hive.sbp | 0 - 1632 |
88.lvl_red_storm.sbp | 0 - 352 |
89.vo_glb_valkyrie_efforts_gei.sbp | 0 - 352 |
90.vo_glb_traveler_banter.sbp | 0 - 864 |
91.chr_brok.sbp | 0 - 1376 |
92.chr_sindri.sbp | 0 - 1376 |
93.lvl_xpl980_beachwaterfall.sbp | 0 - 608 |
94.loot_chests.sbp | 0 - 2144 |
95.trap_block_crusher.sbp | 0 - 864 |
96.lvl_cal130_templeint_doors.sbp | 0 - 1376 |
97.wpn_club.sbp | 0 - 1888 |
98.lvl_xpl900_islandarch.sbp | 0 - 608 |
99.wpn_grenade_rune_stone.sbp | 0 - 1376 |
100.brk_bramble.sbp | 0 - 864 |
101.lvl_cal120_airlock.sbp | 0 - 1376 |
102.brk_stone_modular.sbp | 0 - 1632 |
103.chr_troll_ice.sbp | 0 - 2656 |
104.trap_scorn_pole.sbp | 0 - 608 |
105.lvl_cal250_foothillslh.sbp | 0 - 864 |
106.mech_elevator_stone_large.sbp | 0 - 608 |
107.mag_hel_drain.sbp | 0 - 1376 |
108.lvl_cal100_hub.sbp | 0 - 1376 |
109.mx_prologue.sbp | 0 - 5472 |
110.chr_troll_stone.sbp | 0 - 1632 |
111.lvl_for550_brokenforest.sbp | 0 - 864 |
112.vo_glb_witch_banter.sbp | 0 - 1376 |
113.lvl_peak740.sbp | 0 - 864 |
114.mech_pulley_chain.sbp | 0 - 608 |
115.mag_black_breath.sbp | 0 - 608 |
116.wpn_bifrost_bomb.sbp | 0 - 1632 |
117.trap_saw_blades.sbp | 0 - 1120 |
118.mech_bridge_wood.sbp | 0 - 864 |
119.vo_glb_traveler_efforts.sbp | 0 - 1376 |
120.mx_stn_boss.sbp | 0 - 1888 |
121.vo_glb_bandit_undead_banter.sbp | 0 - 1376 |
122.vo_glb_fanatic_undead_banter.sbp | 0 - 1120 |
123.chr_witch10_pestilence.sbp | 0 - 1376 |
124.mx_peakspass.sbp | 0 - 5216 |
125.chr_brawler.sbp | 0 - 864 |
126.brk_wood_tree.sbp | 0 - 352 |
127.mx_caldera.sbp | 0 - 10848 |
128.trap_scorn_stone.sbp | 0 - 864 |
129.mat_snow.sbp | 0 - 352 |
130.mech_spindle_wood.sbp | 0 - 864 |
131.mat_wood.sbp | 0 - 352 |
132.chr_flyer00_fighter.sbp | 0 - 1120 |
133.chr_boar.sbp | 0 - 1376 |
134.wpn_blades_special_spin.sbp | 0 - 4448 |
135.brk_treasure.sbp | 0 - 608 |
136.trap_fire_column.sbp | 0 - 864 |
137.mat_water.sbp | 0 - 352 |
138.chr_witch20_helwalker.sbp | 0 - 864 |
139.brk_fire_pot.sbp | 0 - 864 |
140.lvl_xpl910_islandshipwreck.sbp | 0 - 608 |
141.mech_crank_wheel_metal.sbp | 0 - 2144 |
142.mech_dragon_leash.sbp | 0 - 352 |
143.loot_rift_pocket.sbp | 0 - 864 |
144.wpn_axe_special_throwdown.sbp | 0 - 608 |
145.door_chisel_room.sbp | 0 - 864 |
146.door_stone_double_door.sbp | 0 - 1120 |
147.mat_ice.sbp | 0 - 352 |
148.wpn_blades_special_mines.sbp | 0 - 1376 |
149.brk_ice.sbp| 0 - 608 |
150.mech_fast_travel.sbp | 0 - 864 |
151.wpn_axe_special_spin.sbp | 0 - 352 |
152.lvl_for800_trollarena.sbp | 0 - 352 |
153.mech_elevator_wood.sbp | 0 - 608 |
154.mat_dirt.sbp | 0 - 352 |
155.wpn_blades_special_grapple_ram.sbp | 0 - 2912 |
156.wpn_axe_special_horizontal_wave.sbp | 0 - 608 |
157.wpn_blades_special_flurry_stab.sbp | 0 - 1632 |
158.wpn_blades_special_triple_slam.sbp | 0 - 1888 |
159.door_gate_metal_spread.sbp | 0 - 1376 |
160.wpn_axe_special_beam | 0 - 864 |
161.mx_riverpass.sbp | 0 - 6240 |
162.door_spikes_puzzle.sbp | 0 - 864 |
163.mx_muspelheim.sbp | 0 - 4704 |
164.mech_rotary_turnstile_puzzle.sbp | 0 - 352 |
165.chr_treasure_goblin.sbp | 0 - 864 |
166.mat_global.sbp | 0 - 608 |
167.lvl_xpl940_beachcave.sbp | 0 - 864 |
168.amb_emit_crows.sbp | 0 - 608 |
169.mat_grass.sbp | 0 - 352 |
170.brk_tent.sbp | 0 - 608 |
171.trap_metal_spikes.sbp | 0 - 608 |
172.door_freya_double_spread.sbp | 0 - 1376 |
173.mx_stonemason.sbp | 0 - 4192 |
174.brk_metal.sbp | 0 - 2400 |
175.wpn_blades_special_weapon_buff.sbp | 0 - 1120 |
176.lvl_for250_chiselsite.sbp | 0 - 352 |
177.wpn_axe_special_flurry_chop.sbp | 0 - 608 |
178.mech_zipline.sbp | 0 - 608 |
179.amb_emit_seagulls.sbp | 0 - 864 |
180.wpn_blades_special_twirl_barrage.sbp | 0 - 1120 |
181.trap_roots.sbp | 0 - 352 |
182.mech_gate_stone.sbp | 0 - 864 |
183.wpn_blades_special_fire_clap.sbp | 0 - 1120 |
184.wpn_blades_special_flurry_spin.sbp | 0 - 1376 |
185.wpn_axe_special_ground_slam.sbp | 0 - 352 |
186.loot_odins_ravens.sbp | 0 - 608 |
187.loot_idols.sbp | 0 - 608 |
188.wpn_axe_special_hailstorm.sbp | 0 - 608 |
189.brk_clay_vase.sbp | 0 - 1120 |
190.brk_wood_barrel_float.sbp | 0 - 352 |
191.wpn_blades_special_hop_slam.sbp | 0 - 352 |
192.lvl_riv475.sbp | 0 - 352 |
193.wpn_blades_special_shield_rush.sbp | 0 - 608 |
194.door_rune_vault_lift.sbp | 0 - 864 |
195.wpn_sword.sbp | 0 - 1376 |
196.wpn_blades_special_fire_wave.sbp | 0 - 608 |
197.door_gate_metal_lift.sbp | 0 - 608 |
198.fs_footstep_events.sbp | 0 - 3936 |
199.door_wood_double_door.sbp | 0 - 352 |
200.lvl_for400_intersection.sbp | 0 - 352 |
201.wpn_blades_special_flint_shotgun.sbp | 0 - 608 |
202.chr_flyer10_possessor.sbp | 0 - 352 |
203.wpn_axe_special_rake.sbp | 0 - 608 |
204.door_metal_lift_gate_forest.sbp | 0 - 864 |
205.mat_stone.sbp | 0 - 352 |
206.vo_glb_brawler_undead_banter.sbp | 0 - 864 |
207.mx_baldur2.sbp | 0 - 608 |
208.wpn_blades_special_meteor_slam.sbp | 0 - 864 |
209.brk_stone_statue.sbp | 0 - 352 |
210.mag_realm_roots.sbp | 0 - 352 |
211.mag_rune_reading.sbp | 0 - 1120 |
212.mech_keystone.sbp | 0 - 608 |
213.chr_dark_oneelite00.sbp| 0 - 352 |
214.wpn_axe_special_shield_rush.sbp | 0 - 608 |
215.mag_dispel_dragon_pedestal.sbp | 0 - 608 |
216.mech_lever_dial.sbp | 0 - 608 |
217.chr_witch00_spawner.sbp | 0 - 864 |
218.lvl_for600_spire.sbp | 0 - 352 |
219.mat_metal.sbp | 0 - 352 |
220.mag_dispel_orb.sbp | 0 - 352 |
221.mat_mud.sbp | 0 - 352 |
222.wpn_axe_special_quick_clear.sbp | 0 - 352 |
223.amb_emit_fish.sbp | 0 - 608 |
224.door_templeflip.sbp | 0 - 1376 |
225.wpn_axe_special_vertical_wave.sbp | 0 - 608 |
226.mx_helheim.sbp | 0 - 4448 |
227.lvl_cal720_lowercenterroom.sbp | 0 - 608 |
228.lvl_cal140_templeext.sbp | 0 - 608 |
229.wpn_axe_special_grind_toss.sbp | 0 - 608 |
230.wpn_blades_special_cross.sbp | 0 - 864 |
231.brk_draugr_statue.sbp | 0 - 352 |
232.lvl_stn200.sbp | 0 - 352 |
233.chr_kratos_cavecrawlslide.sbp | 0 - 608 |
234.brk_bone.sbp | 0 - 864 |
235.fs_claws_media.sbp | 0 - 352 |
236.chr_quest_giver.sbp | 0 - 608 |
237.vo_glb_valkyrie_efforts.sbp | 0 - 3424 |
238.lvl_xpl960_beachship.sbp | 0 - 352 |
239.amb_emit_flags.sbp | 0 - 352 |
240.door_httk.sbp | 0 - 352 |
241.wpn_axe_special_weapon_buff.sbp | 0 - 352 |
242.door_stone_huldramines_double_door.sbp | 0 - 608 |
243.mx_foothills.sbp | 0 - 2144 |
244.trap_spear_spikes.sbp | 0 - 608 |
245.mech_rbr_tower.sbp | 0 - 1120 |
246.mat_flesh.sbp | 0 - 352 |
247.lvl_for500_forestentry.sbp | 0 - 352 |
248.door_viking_funeral.sbp | 0 - 608 |
249.wpn_axe_two_handed.sbp | 0 - 864 |
250.door_alfheim_double_door.sbp | 0 - 864 |
251.mech_block_push_crystal_cart.sbp | 0 - 352 |
252.mech_block_push_stone.sbp | 0 - 352 |
253.mx_jotunheim.sbp | 0 - 864 |
254.wpn_axe_special_sweep.sbp | 0 - 608 |
255.brk_dragon_statue.sbp | 0 - 352 |
256.mech_puzzle_timer.sbp | 0 - 608 |
257.door_forest_double_door.sbp | 0 - 864 |
258.lvl_global.sbp | 0 - 1120 |
259.mech_lever_metal.sbp | 0 - 352 |
260.foly_snowblind_shield.sbp| 0 - 352 |
261.wpn_axe_special_rail_toss.sbp | 0 - 352 |
262.amb_emit_crabs.sbp | 0 - 352 |
263.phy_metal.sbp | 0 - 608 |
264.lvl_for650_bridge.sbp | 0 - 608 |
265.lvl_cal170_library.sbp | 0 - 608 |
266.lvl_peak140.sbp | 0 - 352 |
267.mx_forest_opening.sbp | 0 - 608 |
268.mat_coins.sbp | 0 - 352 |
269.amb_emit_frogs.sbp | 0 - 608 |
270.mx_xpl100_httk.sbp | 0 - 1888 |
271.door_metal_prison_cell.sbp | 0 - 608 |
272.brk_loot_bag.sbp | 0 - 352 |
273.mat_temporal_bridge.sbp | 0 - 352 |
274.door_wood_freya_house.sbp | 0 - 608 |
275.mx_global.sbp | 0 - 352 |
276.lvl_xpl475_huldramineslh.sbp | 0 - 608 |
277.init.sbp | 0 - 352 |
278.wpn_axe_special_glaive_storm.sbp | 0 - 352 |
279.chr_light_ones.sbp | 0 - 608 |
280.mx_niflheim.sbp | 0 - 1632 |
281.mx_xpl200_funeral.sbp | 0 - 1376 |
282.lvl_riv600.sbp | 0 - 864 |
283.brk_iceberg.sbp| 0 - 352 |
284.lvl_xpl150_httk.sbp | 0 - 608 |
285.door_stone_debris_lift.sbp | 0 - 608 |
286.mx_xpl850_dungeonforest.sbp | 0 - 1888 |
287.mx_snakebelly.sbp | 0 - 864 |
288.mx_xpl450_huldramines.sbp | 0 - 1120 |
289.mech_hel_wind_mobile_totem.sbp | 0 - 608 |
290.amb_emit_lizards.sbp | 0 - 352 |
291.mx_xpl300_stronghold.sbp | 0 - 1376 |
292.mx_xpl600_masontrail.sbp | 0 - 1376 |
293.phy_bone.sbp | 0 - 608 |
294.phy_clay.sbp | 0 - 608 |
295.amb_emit_squirrel.sbp | 0 - 352 |
296.amb_emit_rats.sbp | 0 - 352 |
297.mech_arena_marker.sbp | 0 - 352 |
298.mx_xpl400_huldramines.sbp | 0 - 1120 |
299.lvl_riv935.sbp | 0 - 608 |
300.mx_xpl650_masontrailcave.sbp | 0 - 1120 |
301.bf_bodyfall_events.sbp | 0 - 864 |
302.lvl_foot500.sbp | 0 - 608 |
303.chr_freya_magic.sbp | 0 - 352 |
304.door_stone_drainvault.sbp | 0 - 352 |
305.lvl_cal800_transition.sbp | 0 - 352 |
306.mx_sonsick.sbp | 0 - 608 |
307.chr_talking_ring.sbp | 0 - 1120 |
308.mech_triptych.sbp | 0 - 352 |
309.door_realm_portal.sbp | 0 - 352 |
310.mech_gate_metal_lift.sbp | 0 - 352 |
311.chr_bandit.sbp | 0 - 352 |
312.chr_dark_one00.sbp | 0 - 352 |
313.chr_freya.sbp | 0 - 352 |
314.door_realm_room.sbp | 0 - 352 |
315.lvl_foot100.sbp | 0 - 352 |
316.lvl_foot200.sbp | 0 - 352 |
317.lvl_foot300.sbp | 0 - 352 |
318.lvl_foot400.sbp | 0 - 352 |
319.lvl_for100 | 0 - 352 |
320.lvl_helr100.sbp | 0 - 352 |
321.lvl_riv085.sbp | 0 - 352 |
322.lvl_riv100.sbp | 0 - 352 |
323.lvl_riv225.sbp | 0 - 352 |
324.lvl_riv250.sbp | 0 - 352 |
325.lvl_riv430.sbp | 0 - 352 |
326.lvl_xpl225_funerallh.sbp | 0 - 352 |
327.lvl_xpl920_islandclimb.sbp | 0 - 352 |
328.lvl_xpl930_beachruins.sbp | 0 - 352 |
329.lvl_xpl950_beachmaze.sbp | 0 - 352 |
330.lvl_xpl970_beachtower.sbp | 0 - 352 |
331.mat_bone.sbp | 0 - 352 |
332.vo_glb_jotunn_banter.sbp | 0 - 352 |
333.vo_glb_jotunn_efforts.sbp | 0 - 352 |
334.lvl_for000.sbp | 0 - 20320 |
-----------------------------------------


Note : If you are using HxD, make sure to use 1 less decimal, For example

lvl_for000.sbp | 0 - 20320 |, then use | 0 - 20319 |

:( Sad8669
22-02-2022, 09:05
XVI32

http://www.chmaas.handshake.de/delphi/freeware/xvi32/xvi32.htm

It is just like any Hex Editor, but it supports command line usage.
One application of the XVI32 is GOW SBP Tool.

:( Sad8669
22-02-2022, 09:06
Usage :

Put the contents under "GodOfWar\exec\wad\pc_le\soundbanks" and run "GOW SBP Tool v1.0.bat"


It will remove all content before BKHD and make your .sbp compatible with QBMS script.


For more info, click here (https://fileforums.com/showpost.php?p=495542&postcount=2765).

Thanks for the hint.
Now find a way to do the hex editing for hundreds of files in a batch :p

KaktoR, is this what you wanted?

Masquerade provided some useful batch commands.

Note : All i did was give the idea of conversion and wrote the batch, XVI32 still does the job. I have provided the database for manual method one post above.

Masquerade
22-02-2022, 09:32
TearDownDecrypt.NET


Decryption tool for TDE files found in the game TearDown.

[External compressor:TearDownDecrypt.NET]
header = 0
solid = 0
packcmd = {compressor} $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = {compressor} $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

You don't need to use it with FreeArc. Since it's non-solid, it's just as good, if not better, to run it standalone with a batch file.
TearDownDecrypt.NET.exe <encrypted file> <decrypted file>
TearDownDecrypt.NET.exe <decrypted file> <encrypted file>

Thanks to lyhyl for some code used in this project.

:( Sad8669
23-02-2022, 08:48
Upon extracting audio from sound banks, you might encounter .dat files.
they are not named as .wav because their header isn't "RIFF".

You can convert it to a compatible .wem that works with WemTool.

Delete everything in HxD until you see "RIFF".

:( Sad8669
23-02-2022, 22:31
GOW SBP Tool Update v.1.1

Changes :
Fixed bunch of scripts which weren't properly converted.

More stuff to come.

I can't edit the main post for some reasons.

Masquerade
27-02-2022, 08:00
Modifed Gust PAK Tool for Atelier Sophie 2


I compiled this version based on the differences proposed to the source (https://github.com/VitaSmith/gust_tools/pull/58) by 20051231.
This will allow you to unpack and decrypt the archives for Atelier Sophie 2 and rebuild them. You can XDelta them to the original archives.

To unpack:
gust_pak -k dGGKXLHLuCJwv8aBc3YQX6X6sREVPchs "<input pak file>"
To repack:
gust_pak -k dGGKXLHLuCJwv8aBc3YQX6X6sREVPchs "<input_json_file>

:( Sad8669
28-02-2022, 09:00
God of War - .DAT Database
-------------------------------
No.| Name of the file | Blocks|
-------------------------------
1.lvl_stn000.sbp | 0 - 10 |
2.lvl_helr000.sbp | 0 - 51976 |
3.lvl_peak000.sbp | 0 - 18 |
4.lvl_hel000.sbp | 0 - 17 |
5.lvl_alf000.sbp | 0 - 14 |
6.lvl_foot000.sbp | 0 - 23 |
7.lvl_riv000.sbp | 0 - 15 |
8.lvl_stn950.sbp | 0 - 15 |
9.lvl_cal700_templeflip.sbp | 0 - 249536 |
10.chr_kratos.sbp | 0 - 17 |
11.lvl_muspelheim.sbp | 0 - 17 |
12.lvl_jot000.sbp | 0 - 17 |
13.lvl_nid000.sbp | 0 - 14 |
14.lvl_cal000.sbp | 0 - 23 |
15.lvl_cal500_runevault.sbp | 0 - 21 |
16.lvl_xpl300_stronghold.sbp | 0 - 10 |
17.lvl_cal800_snakebelly.sbp | 0 - 12 |
18.chr_son.sbp| 0 - 18 |
19.chr_dragon_peakspass.sbp | 0 - 20 |
20.lvl_xpl450_huldramines.sbp | 0 - 10 |
21.lvl_cal130_templeint.sbp | 0 - 19 |
22.lvl_xpl200_funeral.sbp | 0 - 12 |
23.glb_perm.sbp| 0 - 22 |
24.lvl_xpl400_huldramines.sbp | 0 - 2400 | [Wait for update]
25.chr_jotunn.sbp | 0 - 15 |
26.chr_magni.sbp | 0 - 22 |
27.chr_valkyrie.sbp | 0 - 17 |
28.lvl_jot_cal300.sbp | Does not have a RIFF |
29.lvl_xpl850_dungeonforest | 0 - 15 |
30.chr_traveler.sbp| 0 - 12 |
31.lvl_riv925.sbp | 0 - 17 |
32.chr_dark_one_shared.sbp | 0 - 16 |
33.chr_draugr.sbp | 0 - 23 |
34.chr_golem.sbp | 0 - 9 |
35.chr_stone_mason.sbp | 0 - 14 |
36.vo_glb_troll_efforts.sbp | 0 - 16 |
37.chr_baldur.sbp | 0 - 23 |
38.chr_worldsnake.sbp | 0 - 12 |
39.lvl_for200_house.sbp | 0 - 23 |
40.lvl_xpl100_httk.sbp | 0 - 23 |
41.lvl_cal590_runevaultelevator.sbp | 0 - 9 |
42.chr_wulver.sbp | 0 - 8 |
43.chr_witch_shared.sbp | 0 - 19 |
44.chr_dragon_baldur.sbp| 0 - 19 |
45.lvl_peak100.sbp | 0 - 22 |
46.chr_projection.sbp | 0 - 9 |
47.mech_gondola_lift.sbp| 0 - 22 |
48.lvl_peak200.sbp | 0 - 14 |
49.chr_troll_shared.sbp | 0 - 19 |
50.lvl_for350_exittunnel.sbp | 0 - 20 |
51.lvl_riv325.sbp | 0 - 18 |
52.lvl_chisel_room.sbp | 0 - 15 |
53.veh_boat.sbp | 0 - 17 |
54.chr_flyer_shared.sbp | 0 - 8 |
55.vo_glb_dark_ones_efforts.sbp | 0 - 14 |
56.lvl_for660_templeinterior.sbp | 0 - 14 |
57.mx_alfheim.sbp | 0 - 23 |
58.mag_temporal_light.sbp | 0 - 16 |
59.vo_glb_valkyrie_efforts_gnr.sbp | 0 - 10 |
60.chr_dragon_xpl.sbp | 0 - 22 |
61.chr_crawler.sbp | 0 - 12 |
62.chr_helwalker.sbp | 0 - 12 |
63.mech_bell_puzzle.sbp | 0 - 20 |
64.chr_wolf.sbp | 0 - 10 |
65.lvl_riv200.sbp | 0 - 10 |
66.chr_troll_guardian.sbp | 0 - 23 |
67.vo_glb_valkyrie_efforts_rot.sbp | 0 - 8 |
68.vo_glb_witch_efforts.sbp | 0 - 10 |
69.vo_glb_valkyrie_efforts_olr.sbp| 0 - 16 |
70.chr_modi.sbp | 0 - 20 |
71.vo_glb_valkyrie_efforts_kaa.sbp | 0 - 19 |
72.lvl_riv480.sbp | 0 - 16 |
73.mech_waterwheel.sbp | 0 - 20 |
74.vo_glb_troll_banter.sbp | 0 - 1136 |
75.lvl_xpl600_masontrail.sbp | 0 - 23 |
76.vo_glb_bandit_undead_efforts.sbp | 0 - 10 |
77.vo_glb_brawler_undead_efforts.sbp | 0 - 10 |
78.vo_glb_valkyrie_efforts_sig.sbp | 0 - 14 |
79.vo_glb_fanatic_undead_efforts.sbp | 0 - 10 |
80.vo_glb_valkyrie_efforts_eir.sbp | 0 - 14 |
81.vo_glb_valkyrie_efforts_hld.sbp | 0 - 21 |
82.vo_glb_dark_ones_banter.sbp | 0 - 2282 |
83.vo_glb_valkyrie_efforts_gnd.sbp | 0 - 20 |
84.lvl_riv350.sbp | 0 - 8 |
85.lvl_for900_exitclimb.sbp | 0 - 16 |
86.chr_troll_fire.sbp | 0 - 20 |
87.brk_hive.sbp | 0 - 15 |
88.lvl_red_storm.sbp | 0 - 23 |
89.vo_glb_valkyrie_efforts_gei.sbp | 0 - 8 |
90.vo_glb_traveler_banter.sbp | 0 - 16 |
91.chr_brok.sbp | 0 - 20 |
92.chr_sindri.sbp | 0 - 9 |
93.lvl_xpl980_beachwaterfall.sbp | 0 - 14 |
94.loot_chests.sbp | 0 - 13 |
95.trap_block_crusher.sbp | 0 - 14 |
96.lvl_cal130_templeint_doors.sbp | 0 - 19 |
97.wpn_club.sbp | 0 - 18 |
98.lvl_xpl900_islandarch.sbp | 0 - 11 |
99.wpn_grenade_rune_stone.sbp | 0 - 20 |
100.brk_bramble.sbp | 0 - 8 |
101.lvl_cal120_airlock.sbp | 0 - 10 |
102.brk_stone_modular.sbp | 0 - 18 |
103.chr_troll_ice.sbp | 0 - 23 |
104.trap_scorn_pole.sbp | 0 - 14 |
105.lvl_cal250_foothillslh.sbp | 0 - 22 |
106.mech_elevator_stone_large.sbp | 0 - 0 |[0 KB .DAT]
107.mag_hel_drain.sbp | 0 - 9 |
108.lvl_cal100_hub.sbp | 0 - 14 |
109.mx_prologue.sbp | 0 - 5472 |
110.chr_troll_stone.sbp | 0 - 22 |
111.lvl_for550_brokenforest.sbp | 0 - 8 |
112.vo_glb_witch_banter.sbp | 0 - 67 |
113.lvl_peak740.sbp | 0 - 10 |
114.mech_pulley_chain.sbp | 0 - 9 |
115.mag_black_breath.sbp | 0 - 17 |
116.wpn_bifrost_bomb.sbp | 0 - 21 |
117.trap_saw_blades.sbp | 0 - 20 |
118.mech_bridge_wood.sbp | 0 - 18 |
119.vo_glb_traveler_efforts.sbp | 0 - 19 |
120.mx_stn_boss.sbp | 0 - 0 | [ 0 KB .DAT]
121.vo_glb_bandit_undead_banter.sbp | 0 - 16 |
122.vo_glb_fanatic_undead_banter.sbp | 0 - 16 |
123.chr_witch10_pestilence.sbp | 0 - 19 |
124.lvl_for000.sbp | 0 - 20320 | [Wait for update]
-----------------------------------------

For more info, read here (https://fileforums.com/showpost.php?p=495965&postcount=67).

124 Files, because other banks are not worth it.
After 124 All .sbp < 1MB

Masquerade
09-03-2022, 09:58
Forza Horizon 3 Filename Cipher
l = a
` = b
^ = c
6 = d
q = e
v = f
{ = g
@ = h
$ = i
7 = j
s = k
b = l
g = m
8 = n
h = o
u = p
f = q
4 = r
~ = s
1 = t
= = u
' = v
m = w
] = x
! = y
, = z
y = _
_ = -
[ = 0
0 = 1
w = 2
k = 3
( = 4
2 = 5
j = 6
} = 7
; = 8
+ = 9

Forza Horizon 3 Filename Decipher Tool


A little tool I wrote in C# to make reading the folders and file names from FH3 significantly easier :)
Usage:
FH3FilenameDecipherTool.exe <input string>
Give encrypted input string to receive an output in plain English.

Masquerade
12-03-2022, 02:47
TAK: (T)om's lossless (A)udio (K)ompressor


You may already have heard about TAK through ProFrager's MSC, it passes WAVE audio to TAK for it to be compressed.
However, some audio MSC will skip over that TAK can still compress perfectly, so in this case you can use TAK directly with FreeArc to squeeze out even more compression.
You MUST use solid = 0 option since each WAVE audio file should be compressed individually.

[External compressor: tak]
header = 0
solid = 0
packcmd = {compressor} -e -p4m $$arcdatafile$$.wav $$arcpackedfile$$.tak
unpackcmd = {compressor} -d $$arcpackedfile$$.tak $$arcdatafile$$.wav
datafile = $$arcdatafile$$.wav
packedfile = $$arcpackedfile$$.tak

Masquerade
03-04-2022, 02:24
Data Sheet for Weird West: Build 8447248


Use this BMS script (https://bayfiles.com/n2LfifT1x6/) to unpack the videos from the game archive specified below then you can patch out the flagged files using SFK.
quickbms -f *.mp4 ue4_27.bms <path_to_pak-file> <path for extracted files>
PAK contains duplicated movies (some are at a higher bitrate than ones in the Movies folder).
Tutorial Movies are 1:1 copies so you can rip them from the pak entirely and patch them back in using source files in the Movies folder.


Nova-WindowsNoEditor.pak

5080471605 - 5114502224 - Ending_Sequence_1A.mp4

5114503221 - 5146680206 - Ending_Sequence_1B.mp4

5146681397 - 5155330003 - Ending_Sequence_2A.mp4

5155330101 - 5162727954 - Ending_Sequence_2B.mp4

5162729525 - 5172043972 - Ending_Sequence_3A.mp4

5172045877 - 5181516743 - Ending_Sequence_3B.mp4

5181517877 - 5191598168 - Ending_Sequence_4.mp4

5191600181 - 5203235932 - Ending_Sequence_5A.mp4

5203236917 - 5216004055 - Ending_Sequence_5B.mp4

5216004149 - 5227548347 - Ending_Sequence_6.mp4

5227548725 - 5245713959 - Ending_Sequence_7A.mp4

5246599221 - 5304486803 - LOGO_WEIRDWEST.mp4

5305372725 - 5455204968 - MotionSeq_Sec4_30fps_2.mp4 [HIGH BITRATE VERSION]

4865556533 - 4872815775 - BHJCharm.mp4

4872816693 - 4878736350 - BHJQuickThinker.mp4

4878737461 - 4883381367 - BHJRoundhouseKick.mp4

4883382325 - 4889067836 - BHJShrapnelMine.mp4

4889069621 - 4896328884 - DevoteeHealing.mp4

4896329781 - 4901731561 - DevoteeInunsStrength.mp4

4901732405 - 4908280363 - DevoteeYebsFire.mp4

4908281909 - 4914666523 - DevoteeYebsInvisibility.mp4

4914667573 - 4921055305 - OneiristAstralProjection.mp4

4921057333 - 4926179545 - OneiristShift.mp4

4926181429 - 4933202119 - OneiristSpiritWard.mp4

4939753525 - 4946361167 - PigmanPutridCloud.mp4

4946362421 - 4952838473 - PigmanRubberSkin.mp4

4952840245 - 4958091474 - PigmanShockwave.mp4

4958093365 - 4964214628 - PigmanUnstoppableCharge.mp4

4964214837 - 4970827548 - ProtectorCousinBear.mp4

4970827829 - 4976405451 - ProtectorSurefooted.mp4

4976406581 - 4985173975 - ProtectorThunderbirdStrike.mp4

4985174069 - 4992605780 - ProtectorWesternWind.mp4

4992606261 - 4997859761 - BladeAdrenaline.mp4

4997861429 - 5002371285 - BladeBloodThirsty.mp4

5002373173 - 5005867179 - BladeCharge.mp4

5005869109 - 5010539791 - BladeSpinningStrike.mp4

5010540597 - 5015911683 - BowAmbushArrow.mp4

5015912501 - 5021818233 - BowHeartFinder.mp4

5021818933 - 5027273866 - BowSplashArrows.mp4

5027274805 - 5031656724 - BowSwiftShots.mp4

5031657525 - 5037712601 - PistolFantheHammer.mp4

5037713461 - 5042342882 - PistolHighNoon.mp4

5042343989 - 5048047026 - PistolLightningRounds.mp4

5048047669 - 5054296753 - RifleBulletHail.mp4

5054298165 - 5057977082 - RifleRightBetweentheEyes.mp4

5057978421 - 5062541759 - RifleSentrySilencer.mp4

5062543413 - 5069114606 - ShotgunBothBarrels.mp4

5069115445 - 5073175978 - ShotgunExplosiveShells.mp4

5073176629 - 5080471118 - ShotgunRapidReload.mp4

5455206453 - 5618839007 - AncientTemple2.mp4

5618839605 - 5625845451 - Bow.mp4

5625845813 - 5632589377 - Devotee - Bless.mp4

5632589877 - 5717023098 - DODGE LEAP.mp4

5717024821 - 5780463952 - ELEMENTAL ARROWS.mp4

5780465717 - 5782927439 - Ghost.mp4

5782929461 - 5853563279 - INUN_STRENGTH.mp4

5853564981 - 5856068979 - LOGO_TUTORIAL_WEIRDWEST.mp4

5856069685 - 5862902122 - Oneirist - Teleport.mp4

5862903861 - 5867480207 - Pigman - Unstoppable Charge.mp4

5867481141 - 5875196886 - Protector - High Dexterity.mp4

5875198005 - 5982497945 - QUICK THINKER.mp4

5982498869 - 6037483670 - REINFORCED DOORS.mp4

6037485621 - 6086940883 - SHIFT.mp4

6086942773 - 6149461181 - SURE_FOOTED.mp4

6149462069 - 6189921608 - Tuto_Cover.mp4

6189922357 - 6234171129 - Tutorial_ hide_body.mp4

6234171445 - 6297738272 - Tutorial_Aiming.mp4

6297739317 - 6304717847 - Tutorial_Belt.mp4

6304718901 - 6359862419 - Tutorial_climb.mp4

6359863349 - 6388080751 - Tutorial_Combat.mp4

6388082741 - 6418310504 - Tutorial_Consumable.mp4

6418311221 - 6449844289 - Tutorial_crouch.mp4

6449846325 - 6458712956 - Tutorial_Elemental.mp4

6458714165 - 6476188248 - Tutorial_kick.mp4

6476189749 - 6512632418 - Tutorial_KnockOut.mp4

6512633909 - 6573591703 - Tutorial_Objectives.mp4

6573592629 - 6596961817 - Tutorial_Reload.mp4

6596962357 - 6634221598 - Tutorial_Sneak.mp4

6634223669 - 6640308616 - Tutorial_SwitchingWeapon.mp4

6640310325 - 6663968102 - Tutorial_Zoom.mp4

6663968821 - 6720291756 - UNSTOPPABLE_CHARGE.mp4

6720292917 - 6773539313 - USING THE ENVIRONMENT.mp4

6773540917 - 6916510222 - WEREWOLF.mp4

L33THAK0R
24-04-2022, 08:55
Disclaimer: These tools are largely proof-of-concept and decompress MOST assets for MOST of the titles using this archive type (titles developed by the aforementioned ZenStudios).

It's recommended to use the attached QuickBMS script, as this is more compatible with "*.pxp" archives.

Again I'd like to reiterate, these tools aren't useful at all for processing archives, to be re-compressed, but represent a groundwork for potential researchers to build off of.

kj911
03-05-2022, 06:38
LA 0.4b Lossless Audio Compressor from FreeArc

This programs slow! Compression ratio its average 35-50% percentage.

[External compressor:la]
header = 0
solid = 0
packcmd = {compressor} -high -noseek $$arcdatafile$$.wav $$arcpackedfile$$.la
unpackcmd = {compressor} $$arcpackedfile$$.la $$arcdatafile$$.wav
datafile = $$arcdatafile$$.wav
packedfile = $$arcpackedfile$$.la

Try it get ~30-35% faster compression? Edit Arc.ini file in:

packcmd = {compressor} $$arcdatafile$$.wav $$arcpackedfile$$.la

-noseek switches, not tested in normal mode. Compression ratio compare to TAK 2.3.1 version its gets 1% better ratio. (tested from 2h vhs audio file.)

Source: 1 380 802 638 byte
TAK -p4m: 330 493 043 byte (~450s)
LA normal: 326 997 420 byte (~2294s)
LA high, noseek: 327 872 609 byte (~1555s)

:( Sad8669
11-05-2022, 02:53
Usage:
Syntax: WAVExtractor <input file> <output path> [-r]

<input file> - The archive which contains WAV audio
<output path> - Path to store the extracted audio.



- Scans the input for WAV audio and extracts it to specified path.
- The audio may be a .WEM file, in which case you can use ww2ogg to convert it to playable OGGs.

Please report back bugs, Thank you.

:( Sad8669
19-05-2022, 00:31
A simple CLI tool to compute/verify hash of files present in specified directory.


Usage:
SHC <directory>
SHC <directory> <hashlist>

Algorithm used: SHA1

Files get lonely too, keep checking on them.


Please report back bugs, Thank you.

Masquerade
30-05-2022, 13:58
KVS Toolbox

To be used in "How to correctly process audio from KTSL2STBIN archives (https://www.fileforums.com/showthread.php?t=105174)" tutorial.

:( Sad8669
06-06-2022, 22:15
Syntax: SOF <extracted_stream> <main_data>


Drawbacks:

1. Slower than you would expect.
2. Files size of more than 2Gigabytes are not supported.


If you're sure that the stream is inside but the tool doesn't detect it, it's because i splitted the search in two to use two threads, so the file's one half might be left on the other side and not caught by the tool.

Note: That -1 difference in the screenshot is HxD way of working, if you want to use HxD always consider one less offset than original.

E.g Start offset : X, End offset : Y

for HxD, Block would be X to (Y - 1)

Please report back bugs, Thank you.

:( Sad8669
06-06-2022, 23:11
Syntax: KVSExtractor <audio_archive> <output_path>


-> Similiar to WAVExtractor.
-> Slightly slower than kvs_extractor.

CRC compared with kvs_extractor,

The Mismatch image is "64.kvs" last audio file in the archive, when compared with "64.kvs" from kvs_extractor. Upon checking, turns out "kvs_extractor" leaves 1 byte at the end of file (not that it matters when you use diff patch in the end).

Compiled in a Hurry, might have some old source code of WAVExtractor left, since i refactored the source code to look for "KOVS" header.

Edit: Hotfix uploaded.

:( Sad8669
07-06-2022, 00:41
Updated version of Masquerade BDT,

Update Notes:
-> Added Support for Multiple Headers
-> Added Support for WWise Audio Banks.


Syntax: BDT <input_bank> <output_directory> [.ext]


- You can specify the extension of your output files by substituting desired format in [.ext], let the "." remain and write your format like this,

Syntax Example: BDT example_bank.pck out .bnk


- If no extension is specified then all "*.dat" is assumed.

:( Sad8669
18-06-2022, 04:11
BDT_v2 (1.2)


- 2.5x ~ 3x faster.
- Implemented new algorithm with the help of insomnyawolf.
- Removed the ability to rename outfiles files, instead extension is automatically assigned based on the filetype.
- Library and .json file no longer needed.

:( Sad8669
21-06-2022, 21:24
Usage:
WAVExtractor <input_file> <output_path>

-> Uses insomnyawolf-Saif algorithm (An improvement of insomnyawolf's contribution)
-> Performance increase due to new detection method
-> Library and .json no longer needed.
-> Added double-check to make sure it's a wave file.
-> Note: Extraction algorithm is based on array and 2GB input is an internal limit
Please bear until a new way is found.


And thanks to Razor for the discussion of WAVE files i had with him.
Thank you, and do report back bugs.

:( Sad8669
01-07-2022, 00:55
Usage:


Compute:

SHC -algorithmType <directory>
-md5,-sha1,-sha256,-sha384


Verify:

SHC generatedHash.xtl

SHC_v2 (1.1):
- Added support for more algorithms.
- Added variables that account for missing, mismatch and valid files.
- Added a timer.
- Added Progress Bar that helps you keep up with the progress.
- Added summaryList that is produced when verifying is finished.

Masquerade
05-07-2022, 06:57
Monster Hunter Stories 2 ARC Decryption Tool


Based on source code from Fexty12573.
Thanks to Anadius for helping me understand a little bit of C++.


How to use?

MHST2_Arc_Decrypt.exe <infile>

This will output a decrypted archive!

The game runs with decrypted files.

:( Sad8669
10-07-2022, 11:15
SHC_v3 (1.2)

- Added a progress bar (insomnyawolf helped in earlier stages).
- Summary List now shows at the time it was created.
- Usage remains same

- GREEN = OK File!
- RED = Missing File!
- ORANGE = BAD File!

Please report back bugs, Thank you!

Masquerade
19-07-2022, 07:49
ITBTools

Simple tool to extract the resources stored in the custom DAT format used by the Into the Breach game.

https://github.com/frsrz/ITBTools

By frsrz

I compiled the source code and attached it to this post for convenience.

:( Sad8669
19-07-2022, 08:47
Usage:
WAVExtractor <input> <directory> [-verbose]

WAVExtractor (v1.3)

- Now supports input greater than 2 gigabytes. (Used an Extension Method i found on Ekey's Github)
- Added verbose mode that shows information about each stream that is being extracted.
- Added File progress for extraction.
- Fixed a minor stream detection issue.
- Added a logo.

Masquerade
21-07-2022, 11:38
FModel

https://fmodel.app/

FModel is a GUI tool for exploring and extracting PAK files from Unreal Engine 4 games.

This is especially useful for checking what compression algorithm is used on a game and also if the files inside the pak are encrypted. Sometimes, a Pak may need a key to be opened however only the table of content is encrypted - the actual game files are stored without encryption.

Masquerade
25-07-2022, 00:54
CascView

Tool for viewing and unpacking data from Blizzard Data archives.

A tool for browsing files and extracting data, called CascView is available, supporting all Blizzard games. CascView features browsing of local and online storages, searching files, extracting files, viewing BLP images and more. Note that CascView is not an editor - there is no support for modifying CASC storages and there are no plans for adding it. Due to the ever-changing nature of the storages, it would be extremely difficult and also a violation of Blizzard terms of use.

http://www.zezula.net/en/casc/main.html

http://www.zezula.net/download/cascview_en.zip

Masquerade
14-08-2022, 05:55
IGATool

https://github.com/Masquerade64/igtool

Used for unpacking IGA archives from Noesis Engine Visual Novel games. Unpack the IGA files into a subfolder of their name and the game will run normally.

This project was compiled with source code from zhanghai: https://github.com/zhanghai/igtools

Masquerade
14-08-2022, 09:55
Lepton


You can use lepton with FreeArc to compress JPEG images.

Example Usage:
[External compressor:lepton]
header = 0
solid = 0
packcmd = {compressor} -skipvalidate $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = {compressor} $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

https://github.com/dropbox/lepton

By Dropbox - compiled version attached to this post was compiled by me.

Masquerade
14-09-2022, 13:54
COWABUNGA

COWABUNGA is a decryption tool for assets.pie from TMNT: Cowabunga Collection.

cowabunga 0.1.0

USAGE:
cowabunga.exe <INPUT> <OUTPUT>

ARGS:
<INPUT>
<OUTPUT>

OPTIONS:
-h, --help Print help information
-V, --version Print version information

A tremendous thanks to Sowwyitsanalt for reverse engineering the decryption function in the game exectuable. The decrypted output file is a zip file so you can make a repack from there.

The game requires an encrypted archive to run, so input the zip file to receive an encrypted output.

dixen
15-09-2022, 01:27
The game requires an encrypted archive to run, so input the zip file to receive an encrypted output.
Hmmm..And how to do it?
Thank for tool

KaktoR
15-09-2022, 01:45
I would say like

cowabunga.exe decrypted_input encrypted_output

panker1992
16-09-2022, 12:06
can we have the same tool for elden ring ?? i want to remove sounds compress them more and put them back on

Masquerade
01-11-2022, 00:23
I've updated KaktoR's Oodle library collection to add a few more Oodle libraries I have stored on my hard drive.

Original post here (https://www.fileforums.com/showpost.php?p=498869&postcount=96).

Please note that the v numbers in the dll names do not indicate the "version" of Oodle used. neither do the core numbers since these can be easily renamed. Ofc to use these dlls with oo2rec or XTool you will need to remove the _v* after win64.

KaktoR
09-11-2022, 03:18
Here is a new oodle library collection.

New this time: Added real oodle library versions.

Included is "oodle_ver.exe" which Razor12911 build up in light speed to check the real library versions. Before I have checked them with hxd (just search for "2." and after some attempts you will find the real version).


Funny side note: We had several libraries, like oo2core_7 which is actually oo2core_9 and some others aswell like oo2core_4 which are actually another library version. But now you can check real version with ease. So it seems like some users have f*cked up when using oodle side project and forgot to rename them back to original before sharing (most likely).

If you are going to extend the collection, please also check the hash sum of the file. For example if you have another oo2core_9 library which has the same version and size as already included libraries, also check the hashsum. If hashsum is different you can include it aswell.

Library naming is as follow:

v2.1.x = oo2core_1_win64
v2.2.x = oo2core_2_win64
v2.3.x = oo2core_3_win64
v2.4.x = oo2core_4_win64
v2.5.x = oo2core_5_win64
v2.6.x = oo2core_6_win64
v2.7.x = oo2core_7_win64
v2.8.x = oo2core_8_win64
v2.9.x = oo2core_9_win64
...

However you can recheck versions here. Use the time frame of a game's development/release to at least tell which library was used for compression: http://www.radgametools.com/oodlehist.htm

I will add more libraries over time on this post. You can send them to me or just share it here. I would prefer it to send them to me with a private message to keep the topic clean.

Edit: Added a checksum.txt file which lists all crc32 hashes.

Masquerade
18-11-2022, 10:07
COWABUNGA [v0.2.0]

COWABUNGA is a decryption tool for assets.pie from TMNT: Cowabunga Collection & Atari 50.

[v0.2.0 - Added support for Atari 50]

cowabunga 0.2.0

Usage: cowabunga64.exe [OPTIONS] <INPUT> <OUTPUT>

Arguments:
<INPUT>
<OUTPUT>

Options:
-k, --key <KEY> [default: cowabunga] [possible values: cowabunga, atari]
-h, --help Print help information
-V, --version Print version information

A tremendous thanks to Sowwyitsanalt for reverse engineering the decryption function in the game exectuable. The decrypted output file is a zip file so you can make a repack from there.

The game requires an encrypted archive to run, so input the zip file to receive an encrypted output.

KaktoR
25-11-2022, 14:47
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97) version (2.9.2) taken from NFS Unbound (thanks to Razor12911).
Removed duplicates.

PS: As a reminder, if you have new libraries which are not included in the package, please share :)

Masquerade
12-01-2023, 03:35
Looking at these recent CPUs and all that multi-core madness, the BCM begged me for multi-threading support!

So, here you go - BCM V1.70 BETA!

What's new:

Added multi-threading support (done via WinAPI) - you can choose between 1 to 64 threads. The default is the number of logical processors in the system
divsufsort() is used for Suffix Array construction
Slightly updated CM model
CRC32 is stored for each block
Unfortunately, new BCM is NOT compatible with previous versions

Thanks to encode on encode.su

Full topic here (https://encode.su/threads/1739-BCM-The-ultimate-BWT-based-file-compressor?p=77632&viewfull=1#post77632).

Masquerade
17-01-2023, 00:07
Skullgirls GFS extract QuickBMS script by chrrox (source (https://forum.xentax.com/viewtopic.php?p=87094#p87094))

kj911
26-02-2023, 06:17
The Duper v1.4.01
...
You can use this to remove duplicate files from your game. This means there is less to compress. Makes a handy batch file to re-copy all of the duplicated files.


The attached source code and x86/x86_64 compiled Linux binaries....

By KaPiTaLSiN

Gehrman
08-03-2023, 01:31
Source (https://encode.su/threads/4025-HALIC-(High-Availability-Lossless-Image-Compression)?p=78267&viewfull=1#post78267)
[External compressor:Halic]
header = 0
packcmd = Halic_Rapid_v_0_6_1_Encode.exe F1 F2
unpackcmd = Halic_Rapid_v_0_6_1_Decode.exe F2 F1
packedfile = F2
datafile = F1
solid=0

Halic_Rapid_v_0_6_1_Encode.exe
(https://encode.su/attachment.php?attachmentid=10250&d=1677566843)
Halic_Rapid_v_0_6_1_Decode.exe (https://encode.su/attachment.php?attachmentid=10248&d=1677566843)

KaktoR
30-03-2023, 12:46
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97) versions 2.9.8 and 2.9.9

KaktoR
09-04-2023, 09:18
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97) versions 2.9.8 and 2.9.9

I have changed the folder structure a bit to be better used with xtool's library checker, so no new library.
Just letting you know.

LinXP
13-04-2023, 20:49
2 KaktoR
https://www.upload.ee/files/14977876/oodle.rar.html

Junior53
06-06-2023, 18:36
*.data & *.forge files extractor for Assassin's Creed I, II and some other games
using Scimitar engine.to find out more details about this tool (https://www.moddb.com/groups/assassins-creed-fans/downloads/forge-extractorreplacer-by-turfster)

kj911
15-06-2023, 08:14
Any members have more info called program, Repack Helper 0.17 or 0.17a/b released by LandyNP2?? Link, not linking to allowing to torrent sites, find try it Google...

"Description : Repack Helper is a repacker's assistant program.
Initially, it was conceived as a program for creating repacks with maximum compression with little loss.
This is its main difference from such a popular solution as FreeArc and its UltraArc variation. Therefore, you should not compare these programs.
The main task of Repack Helper is to prepare files for better compression.
And what to compress further, the repacker chooses himself.
The program has no graphical interface, is written in .BAT MS-DOS and is completely open source.
Any parameters are available for customization ."

Masquerade
01-08-2023, 03:13
Oodle core v2.9.10
https://www.upload.ee/files/15524315/oo2core_9_win64.dll.html

KaktoR
01-08-2023, 06:51
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97) version 2.9.10

Masquerade
04-08-2023, 14:19
How to recognize the compression algorithms with your eyes


Wayback Machine (https://web.archive.org/web/20230527234603/https://zenhax.com/viewtopic.php?t=27) since Zenhax is now offline.
Requires a Hex editor like HxD.

KaktoR
17-12-2023, 16:20
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
- version 2.5.3
- version 2.9.11

Edit: Added a second version of version 2.9.10 (attachment)

KaktoR
18-12-2023, 04:07
Not a "tool for repacking", but this comes in handy if you want to delete extracted files below certain size, for example if you use WemTool, which will give negative ratios if you have a ton of very small files (1kb up to 400kb from my experience) without doing it manualy, which can be annoying, especially if you extract a file and end up with 50k+ files. This is only usefull if you want to use xtool erase/decode function.

REM Set size in bytes
set size=416000
set foldername=E:\_QuickBMS\Voice.pak_extract

cd /D "%foldername%"

for /f "usebackq delims=;" %%A in (`dir /s /b /A:-D *.*`) do If %%~zA LSS %size% del "%%A"

Test (deleted all files below 50kb (50000)
sounds_sfx_orig.7z 1,25 GB (1.347.455.155 Bytes)
sounds_sfx_processed_all_wems.7z 1,22 GB (1.314.981.234 Bytes)
sounds_sfx_processed_bigger_wems.7z 1,19 GB (1.284.920.096 Bytes)

sirdystic
07-04-2024, 17:11
Seem to be missing Inno Setup XDELTA Patch Maker in that list:

https://www.softpedia.com/get/Programming/Patchers/Inno-Setup-XDELTA-Patch-Maker.shtml

- Have updated it to Inno Setup 6 and JoJoDiff 0.8.5 for my own use. Also fixed settings issue making it very slow applying large multipart patches (disabled solid archives).

panker1992
14-04-2024, 07:52
Hello dear Community, today i have assemple all my knowledge to come up with a tool i have been longing for.

CamV Converter is a total war engine video converter.

unfortunately because of the immense size of the project which is roughly 250mb
I have decided to post this on my Patreon which is FREE!!


https://www.patreon.com/posts/camv-converter-1-102327212?utm_medium=clipboard_copy&utm_source=copyLink&utm_campaign=postshare_creator&utm_content=join_link

KaktoR
08-06-2024, 02:17
List of some file signatures
https://www.garykessler.net/library/file_sigs.html

KaktoR
21-08-2024, 06:38
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
- version 2.6.0 (lib2)
- version 2.9.12

mousavizare
14-09-2024, 06:34
GOW SBP Tool Update v.1.1

Changes :
Fixed bunch of scripts which weren't properly converted.

More stuff to come.

I can't edit the main post for some reasons.
Hi tnx for sharing this script. Download link not working for me. Would you plz upload it on an external website?+

KaktoR
31-10-2024, 10:52
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
- version 2.9.2 (lib2) from "DA:Veilguard"

KaktoR
07-12-2024, 07:13
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
- version 2.9.12 (lib2) from "Indiana Jones and the Great Circle"

Shegorat
03-03-2025, 12:40
cls-zstd v.25.03.04.rev.1:

- Updated zstd sources to version 1.5.7.
- Improved error handling system.
- Minor code optimizations.

Shegorat
09-03-2025, 09:58
Changelog:

Code cleanup and optimization.
Improved error handling system.

Shegorat
09-03-2025, 10:03
Changelog:

Updated LZAV sources to version 4.7.
Improved error handling system.

KaktoR
31-03-2025, 02:30
OGG_File_Checker
Some small batch I wrote some weeks ago.

You can find the MESA tool here if you need it: https://www.patreon.com/posts/mesa-v-23-12-30-95531353

Example: Kingdome Come Deliverance 2, Music.pak
There are a total of 2816 OggS vorbis streams. 40 of them will cause OGGRE to crash or stuck in an infinite loop on decompression.

These bad files will be stored in a text file (Bad_Files.txt) and will be copied to _Bad_Files folder additionaly.

Additionaly this tool will create patch files (stored in Patch_Files folder) if you want to patch the bad files back to original files afterwards.


Checksum hashing is a bit slow especially if you have over 10k files (it will take a while). I didn't found a tool by now which works faster than xxhsum.

Thanks to Csar for a little help with checksum checking.

v2 changes: Subfolders are now supported. You can now copy/move entire game folder which includes OGG files and check them. Removed xdelta patch engine, only hdiff is supported now.

There are some example files included in v2.

Shegorat
23-06-2025, 08:45
cls-lizard v.25.03.16.rev.1

Improved error handling system.
Code cleanup and optimization.


-----------------------------

cls-unpackmp2 v.25.05.14.rev.1

Updated and unified the CLS core.
Optimized I/O performance.
Code cleanup and general optimizations.


-----------------------------

cls-ttgd v.25.06.23.rev.1

Implemented unified CLS core.
Optimized I/O operations.
Code cleanup and overall optimization.


P.S. You can get MESA here (https://www.patreon.com/posts/mesa-v-23-12-30-95531353), as all my projects is free for everyone

Shegorat
03-07-2025, 11:15
Changelog:

Integrated unified CLS core.
Optimized I/O operations.
Added and updated keys for approximately 50 games.

wareck
14-07-2025, 14:55
Hello
Sometimes, conversion is weird...
I used cls-ue4d v.25.07.03.rev.1 on Sifu (last version)

I know it works pretty well because I uncrypted .pak and remove some data in stream.
With an hex editor i can see that the files is fully uncrypted.
(I can compare extracted files with quickbms, exactly the same in the uncrypted file)

With ued4t 99% uncrypted, with unreal xtool plugin around 98%
If I work on file to compare extracted files there is some diff
This makes tools like xtool missing some stream

By the way the think I do not understand, is with partial uncrypt like with unreal plugin, the final compress ratio is better

like for my tests :
cls-ue4d+srep+lolz => 12gb
xtool:mue4+srep+lolz => 10gb
ue4dt+srep+lolz= 9.96gb

KaktoR
20-08-2025, 07:07
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
- version 2.8.14 (lib2) from "CODMW3 (steam)"

panker1992
26-08-2025, 12:51
This is a project i have been designing for the past year,

this is practically a brand new archiver, it has custom everything,

Brand new Header, like Freearc which with its utility has taken this forum for the past decade and more
this project's plan is to practically replace it.

I have added a ton of stuff, including the ability to use external algorithms and tools, and i have also included xtool 7.9 from Razor Github page into it as an internal means to precompress.

it comes with 2 modes,

Solid Block, and Blocked compression

you can rely on solid block to pack your games while a block compression can be used to maintain archives.

I plan to expand this with GUI and a DLL for Inno.

futureking
20-09-2025, 20:59
Microsoft is working on xtool-like tool (https://github.com/microsoft/preflate-rs)??

futureking
20-09-2025, 22:24
A rewrite of precomp-cpp for speed and modularity, supports stdin and stdout natively, https://github.com/nicolas-comerci/precomp-cpp

shazzla
21-09-2025, 01:17
Its not M$. Its just a guy who calls himself ms. ;)

futureking
21-09-2025, 01:54
Its not M$. Its just a guy who calls himself ms. ;)

No, I'm pretty sure it's microsoft.

shazzla
21-09-2025, 02:06
Interesting. Maybe u have right. ;)

kj911
09-10-2025, 09:36
Could someone write a "seemingly simple" CLS filter, a WIM format* (files store only compressed, aka hiddenly deduplicated) compressor with streaming functionality? (It would work exactly as if we were packing with the REP algorithm, as far as writing the ARC file is concerned, without temporary TEMP files) Many old games have a feature that a file exists in multiple copies, so we could avoid the classic "duped files removed before compression" and "Duping files... during the unpacking process" solutions.

*WIM-compression level: Store

This is available in 7-Zip, but a CLS filter would be a better solution. When preparing a set of WAV files of nearly 5GB in this way, it consumes only 10-12MB of memory, while compressing to 3.2GB. (This is how much less needs to be copied/written before running the next algorithm.) In other words, if we manually deleted all duplicate files, the starting state would be this much smaller before running the other algorithms. I know, this is not typical for today's games. In this case, REP/SREP is not a viable option if MSC were the next algorithm or, for example, XTOOL. (The size of the deflated data file would be smaller.)

We could also use ZPAQ, but it deduplicates at the file level, "with the -m0 or -m01 switches". In the example above, the prepared dataset will be around 3GB in size, but the final compression will be worse. (1.24GB vs. 1.35GB) With the -m0 switch, ~1.05GB, with -m01 it will consume ~150-170MB of memory during packaging. Compared to the 10-12MB used when 7-Zip/WIM compression.

KaktoR
19-10-2025, 09:47
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
- version 2.9.12 (lib3) from "Battlefield 6"
- version 2.8.7 from "Battlefield 2042"

panker1992
23-10-2025, 00:35
Oodle Version 2.9.14 Self compiled

Shegorat
09-12-2025, 07:05
Hi there. Just a quick note about updating my CLS. I'm too lazy to write a changelog, but you can find it on my Patreon. The changes are mostly aimed at improving stability.

KaktoR
20-01-2026, 13:31
OGG_File_Checker


I updated the tool to v2.
Subfolders are now supported. You can now copy/move entire game folder which includes OGG files and check them.
Removed xdelta patch engine, only hdiff is supported now.

KaktoR
09-02-2026, 03:20
Usage:
WAVExtractor <input> <directory> [-verbose]

WAVExtractor (v1.3)

- Now supports input greater than 2 gigabytes. (Used an Extension Method i found on Ekey's Github)
- Added verbose mode that shows information about each stream that is being extracted.
- Added File progress for extraction.
- Fixed a minor stream detection issue.
- Added a logo.

I modified the source code and recompiled it with Visual Studio.
Changes: WavExtractor now extracts the files as WEM extension instead of WAV.

This tool is still usefull because MESA cannot extract some archives (Shegorat already knows about this problem).

kj911
15-03-2026, 14:24
Very fresh new competitor from others projects. (FreeArc Next, Diskpan, UCC, etc...)

SYC - Modular Compression Tool

SYC is not a compressor it's a modular compression orchestrator that chains external tools (zstd, srep, xprecomp, zpaqfranz and more) into a single pipeline, producing .syc archives. Think of it as a conductor: it manages the workflow, archive format, encryption, and progress the actual compression is done by the external compressors you already have.

Includes a GUI wrapper (sycg) with real-time metrics, dark/white themes, custom icons, and InnoSetup integration. Supports solid mode (-tar), multi-part archives, AES-256/ChaCha20 encryption, CRC32/MD5 hashing, and builds for Windows 711 x86/x64 using Python 3.8.

Note: This project isn't meant to reinvent the wheel; it's more of a small personal project I created for my own needs that I'd like to share. I CAN'T WAIT TO HEAR YOUR IDEAS :D!!!

See this: https://encode.su/threads/4480-SYC-Modular-Compression-Tool

kj911
21-03-2026, 05:17
Separately as a new post!

YadeWira released packJPG Multithreaded versions few hours ago! Windows x86/64 and Linux64 binaries in available!

https://encode.su/threads/4482-packJPG-Multi-threaded

KaktoR
21-03-2026, 07:15
Great.

I just tested a bit. It looks like -th0 is actually much slower than without this option.

-th0
Compressed 9 files, 6,362,109 => 4,683,122 bytes. Ratio 73.61%
Compression time: cpu 0.00 sec/real 4.06 sec = 0%. Speed 1.57 mB/s
All OK

no -th option
Compressed 9 files, 6,362,109 => 4,683,122 bytes. Ratio 73.61%
Compression time: cpu 0.02 sec/real 2.12 sec = 1%. Speed 2.99 mB/s
All OK

-th6 is the same as -th0. Am I missunderstand this option?

Also you still have to use solid=0 option for freearc sadly.

Edit: I just saw this is the wrong toppic for such discusions.

YadeWira
21-03-2026, 10:15
Heres what I replied on the encode.su forum: To be honest, I havent tried it on FreeArc yet. Its not recommended to use the -th option with a single file, since it yields worse results in terms of compression and decompression times. In any case, you should create an option that generates a package (.pjgp?) containing all the already-compressed .jpg files or something similar. I dont know what you think."

wrathma
07-04-2026, 12:42
oodlescan

a simple oodle stream scanner i made. 99% of the logic is taken from xtool source code. built with gcc on windows x64. the only reason i made this and difference between this and Razor12911's oo2scan_7_win64 is that this one uses chunk based data loading. oo2scan_7_win64 tries to occupy the entire size of the file on memory to store and scan it from there, in cases where the data is huge it would fail. oodlescan copies small chunks from the file to memory and scans from there, eliminating the memroy allocation issue. i will add the source code here after some polishing :).

SYMM's Oodle Stream Scanner

- Scans files for Oodle streams

Usage: H:\test\ooscan\oodlescan.exe [options] <file>

Options:
-cN size of chunks (e.g. -c16M)
-v show valid streams only
-vv show valid and invalid streams
-h show this help message

edit: added source code

wrathma
10-04-2026, 16:33
prl

a simple and very lightweight (11kb binary, lzma 5kb) parallel batch processor. built with msvc x64. it lacks features but gets the job done.
source code moved to codeberg (https://codeberg.org/desymm/prl/)
Usage: H:\test\tools\build\prl.exe <input.bat> [thread_count]


edit: update v1
replaced semaphore with a threadpool.
replaced system() calls with CreateProcessA

wrathma
10-04-2026, 16:42
wem(un)pak

This is a more feature packed version of Masquerade's WemTool (https://www.fileforums.com/showthread.php?t=104859) that i made few months ago to compress wem files from Silent Hill f. As it was made with golang, the binary sizes are huge. I didnt want to port this entire thing ito c, so today i added a feature to generate a batch script to decompress the files. Then you can run the batch script in parallel with prl (https://fileforums.com/showpost.php?p=509818&postcount=146) or Mparallel (https://github.com/lordmulder/MParallel/). It follows same file naming standards as original WemTool. So you can use wempack to decompress WemTool compressed data. Attachments include source code.
Separate compressor and decompressor.
Ability to compare input and compressed sizes.
Works recursively.
Ability to specify compressor for hdiffz.
Ability to generate a batch script to decompress.
Better error handling and processing structure:
compressor : ww2ogg > oggre_enc > oggre_dec > hdiffz
decompressor : oggre_dec > hdiffz
If any of the steps fails, the tool skips that file automatically. Temporary files are deleted in every step of processing, WemTool processes all files and then removes temps at the very end, leaving a huge mess and sometimes filling up the disk.



SYMM's WEM packer

- Compresses .wem to .ww + .DIFFZ

Usage: wem-packer.exe [options] <directory>

Options:
-tN number of threads (e.g. -t4/defaults to cpu count)
-s skip if output (.ww + .DIFFZ) is larger than input (.wem)
-b keep original .wem files
-cX compressor for hdiffz, default = none.
-h show this help message

SYMM's WEM unpacker

- Decompresses .ww + .DIFFZ to .wem

Usage: wem-unpacker.exe [options] <directory>

Options:
-tN number of threads (e.g. -t4)
-b keep original .ww and .DIFFZ files
-n generate a batch script to decompress
-h show this help message


Credits:

Masquerade for the guide
Sisong for hpatchz/hdiffz
hsc64 for ww2ogg
Profrager for oggre

kj911
11-04-2026, 07:19
wrathma: This wempak tool, XP-compatible or Vista+ 32bit?? Some parts from Masquerade's WemTool, are yes running from XP.

wrathma
11-04-2026, 08:21
wrathma: This wempak tool, XP-compatible or Vista+ 32bit?? Some parts from Masquerade's WemTool, are yes running from XP.

the one above builds shouldnt work on 32bit systems, i have attached a 32bit builds for you. not sure if it will work correctly as i dont have a 32bit test system laying around. i replaced the 64bit hdiffz/hpatchz exe with 32bit ones, everything else is same.

KaktoR
12-04-2026, 09:29
wem(un)pak


Some small bug
Found 247 .wem files to pack (recursive)
Using 12 threads

[███████████████████████████████████████░] 246/247 (99.6%) ETA: 0s
All files packed successfully!

Also it would be good to give some information on how long the process took.

Another bug in decode mode
Found 389 .ww files to unpack (recursive)
Using 12 threads

[█████████████████████████████████████████████ ████░] 388/389 (99.7%)
All files unpacked successfully!
[█████████████████████████████████████████████ █████] 389/389 (100.0%)

Testing:
Surprised how fast this is compared to WemTool
input 339mb
output 316mb

wem-packer
encode 17sec
decode 5sec


wemtool
encode 50sec
decode 16sec

Both tools are running with all cpu threads.

Edit:
Impressive
input 5,12gb
output 4,82gb

wem-packer
encode 10m30s
decode 2m40s


wemtool
encode 30m20s
decode 13min

wempacker is 3x faster than wemtool

Suggestions:
Add -c option for hdiffz compression
Change skip -s option to skip files even if they are same size as input -> equal or greater then

Masquerade
13-04-2026, 12:02
Very nice tool wrathma and pleased someone has nulled the need for my bat2exe nightmare creation.

kj911
16-04-2026, 06:11
wrathma: Many questions!

wem-packer: Why are both "oggre_enc/oggre_dec" binaries needed? Also, how are they 9KB larger than the original files?
In the original "ww2ogg" package, there is another "packed_codebooks.bin" file. Could the lack of this cause problems in some cases?
There is a 64-bit version of this program on GitHub, I won't link it directly, find it and take a look, you'll get the hang of it!

There is also a "revorb (https://github.com/april/revorb)" project, isn't that better than "ww2ogg"? Instead of the HDiff package, would xdelta3 be a worse solution? (it runs natively on XP too.) HDiffPatch XP issues (https://github.com/sisong/HDiffPatch/issues/368) from GitHub. (Two x86_64/i686 XP binaries found the posts.)

Is there a way to configure the program, especially "hdiffz", to use very little memory when creating a diff file? (It should comfortably fit within the 512MB upto 1-2GB memory limit.) It is true that when applying a diff file as a patch, in principle a lot of memory is required.

You're obviously asking, why XP?? If everything is true, around 2005 (or earlier?) games that have *.wem files were released and regarding these files, it would be possible to make the repacks publishable/archivable back to XP.

There's a bug in the 32bit version! The "hdiffz" binary file in it is 64bit!

Yesterday, I managed to make all the binaries run on XP. Although, a full native XP-compatible HDiff/patchz binaries would be better case/idea.

In the case of v4.8.0, the "hpathcz.exe", with the simple NT6.0 -> NT5.1 trick, runs smoothly, while the larger "hdiffz.exe" file, I had to tinker a bit more with CFF Explorer + 3 extra DLL files required, to run it.

In the case of v4.11+ versions, the latter situation is present for both files.

The only task that remains to be solved is to create an EXE file that can be run natively under XP by the GO-compiler. (Why does this require the "bcryptprimitives.dll" file?)

KaktoR
16-04-2026, 09:09
Added new oodle library (https://fileforums.com/showpost.php?p=499062&postcount=97)
Some new libraries added. I don't know from where I have them since the last update. I am just collecting from games. I don't remember because I have not made notes about it.

artag
19-04-2026, 02:34
i don't know if this is the right place to ask, sorry if my english is bad:

wich is the safest and stable cls for precomp right now? (with stdio support) and which
precomp version should i use?

which is the safest cls for srep? (or maybe should i use srep without it). what version is the most stable until today ? 2.2, 3.93, 4.90?


can i remake my old repacks with xtool and forget about pzlib (for zlib streams of course) or pzlib should be used for old games or something like that?

i used lolz 21a7, is there a new updated version?

inno setup 6xxx is stable with isdone dll?

many thanks!

Masquerade
19-04-2026, 02:48
^^
For stdio precomp, you can use this version: https://fileforums.com/showthread.php?t=105410

CLS-SREP by ProFrager is still the best cls-srep for decompression. Use srep.exe for compression. 3.93b is alright for most data.

pzlib is obsolete, use xtool.

lolz v22c4b is the latest lolz version.

Inno Setup 6 does work with isdone, yes.

kj911
19-04-2026, 11:23
wrathma: There are problems with this GOLang miracle! Does it need an AVX/AVX2-compatible processor? Or do the compiled binaries only work flawlessly on the given machine? What if I remove the GO compiler from the machine, will the binaries compiled until then break?

The GO compiler (https://github.com/thongtech/go-legacy-win7)* used. (I also compiled THIS (https://github.com/syncguy/go-legacy-winxp) with it, on XP it prints out the Help nicely, that's all, when compiling (go.exe build source.go) it also prints out similar errors as what can be read below)

*Used last v1.26.2-1 i386 packages (https://github.com/thongtech/go-legacy-win7/releases/download/v1.26.2-1/go-legacy-win7-1.26.2-1.windows_386.zip) and separately compiled from sources. (This v1.24.4 from XP) from make EXEcutables.

The x32 binary you posted, writes these (under Win7 SP1 x64):
C:\wemtest>wem-packer.exe
Exception 0xc0000005 0x8 0x0 0x0
PC=0x0

internal/runtime/syscall/windows.asmstdcall(0x20)
internal/runtime/syscall/windows/asm_windows_386.s:37 +0x2a fp=0x3afa08
sp=0x3afa04 pc=0xd1029a
eax 0x8
ebx 0x117c630
ecx 0x0
edx 0x3afa38
edi 0x3afa0c
esi 0x3afa70
ebp 0x3afa0c
esp 0x3afa00
eip 0x0
eflags 0x10202
cs 0x23
fs 0x53
gs 0x2b

The x64 version also produces similar and longer errors. (Checked on two different Win7 x64 PCs.)
If you chain the compiled program to the given machine/Windows files, it is very bad and makes the given program and the compiler unreliable.
If the source code were rewritten to c/c++, how much better would it be? (With AI, I had a CPP produced, but the program is faulty, it could only serve as some guidance for porting to CPP.)

In its current state, the CPP file only produces "apparently" working programs after compilation!

So far, I have produced 3 different packages from it, but under XP it throws errors similar to the above, the program prints the prompt in the console window regardless. Under Win7 there are no more strange errors, but as it turned out, if you have to wait for IO errors, HDD or the CPU is too busy, then it will make errors, there is a possibility of making errors. On a laptop with a 2-core CPU, not foolproof, on an 8C/16T Xeon PC, it seems to be better. That is, it doesn't unpack the files, it doesn't run the "hpatchz.exe" file at first, or some other anomaly.

First version maked from Win7 via GO v1.26.2-1: Link (https://www.upload.ee/files/19265827/wempack_x86_Win7.7z.html)
Second version maked from Win7 via GO v1.24.4, hopefully targeted WinXP: Link (https://www.upload.ee/files/19265835/wempack_x86_xp.7z.html)

Masquerade: Do you still have the BAT2EXE program that you used to create the "WemTool.exe" file? Would you create it again? I'm attaching the patched/replaced/updated files. That way it will be 100% compatible with XP!

panker1992
19-04-2026, 14:46
i decided to pop some stuff after a long time, not only i updated my archiver to be a beast!

But i run a showcase to demonstrate the vast capabilities it can do!

i decided to run resident evil requiem precompression only

artag
19-04-2026, 23:16
^^
For stdio precomp, you can use this version: https://fileforums.com/showthread.php?t=105410

CLS-SREP by ProFrager is still the best cls-srep for decompression. Use srep.exe for compression. 3.93b is alright for most data.

pzlib is obsolete, use xtool.

lolz v22c4b is the latest lolz version.

Inno Setup 6 does work with isdone, yes.

sorry, for the srep cls, are you talking about this one?:

https://krinkels.org/resources/cls-srep.261/

or are you talking about srep inside?

i cant donwload from krinkels, can you or anybody provide the md5 of the cls
so i can find it on my folders? (I surely have it, but I must be sure that it is the right one.)

i have lolz v22c4b, is everybody using it? is it stable?

thanks again

wrathma
20-04-2026, 05:27
Some small bug
Found 247 .wem files to pack (recursive)
Using 12 threads

[███████████████████████████████████████░] 246/247 (99.6%) ETA: 0s
All files packed successfully!

Also it would be good to give some information on how long the process took.

Suggestions:
Add -c option for hdiffz compression
Change skip -s option to skip files even if they are same size as input -> equal or greater then
thanks for your detailed review KaktoR. the progress bar was shamelessly copied from stackoverflow and unfortunately it
doesnt work great with multithreaded operations. so i removed it and added a simple progress bar. should be fixed by now. also
added -c option for hdiffz. everything you pass after this will be passed directly to hdiffz -c-{here}. example -
wem-packer.exe -czstd-22 wemfolder -> hdiffz -c-zstd-22 ...


wem-packer: Why are both "oggre_enc/oggre_dec" binaries needed? Also, how are they 9KB larger than the original files?

There is also a "revorb (https://github.com/april/revorb)" project, isn't that better than "ww2ogg"? Instead of the HDiff package, would xdelta3 be a worse solution? (it runs natively on XP too.) HDiffPatch XP issues (https://github.com/sisong/HDiffPatch/issues/368) from GitHub. (Two x86_64/i686 XP binaries found the posts.)

Is there a way to configure the program, especially "hdiffz", to use very little memory when creating a diff file? (It should comfortably fit within the 512MB upto 1-2GB memory limit.) It is true that when applying a diff file as a patch, in principle a lot of memory is required.

The only task that remains to be solved is to create an EXE file that can be run natively under XP by the GO-compiler. (Why does this require the "bcryptprimitives.dll" file?)


both oggre encoder and decoder is required because sometimes doing oggre_enc and oggre_dec on a file gives different
files (crc error). but doing oggre_enc on the output of oggre_dec will always give same files. try this out yourself
on diffrent ogg files you will get it.
i have never used revord, i guess ww2ogg works so ill use it for now (rule of engineering, if it works dont touch it).

xdelta3 and hdiffz could be interchanged as they are basically doing the same thing. i have added a xdelta build for
you. keep in mind that xdelta produces a little bigger diff files compared to hdiffz. tho the difference is minor.
during my tests, the entire tool running on 20 threads didnt cross the 500 mb ram usage mark. stayed mostly on
380-400 mb of ram usage (wempak+hdiffz+oggre+ww2ogg). applying patch is easy while making patch is harder and takes
lot of ram. but when the files are small ram usage also goes down.

golang turned down support for windows xp long ago i forgot to mention that so this tool shouldnt really work on
windows xp. i dont even ship wemunpak on my repacks and neither should you. the binary is bloated with golang
bloat code. this is why i added a feature to make a batch file to run the entire decompression chain.
check the -n option. you can then ship the batch file with the tools (hpatchz+oggre) and a
parallel processor (prl (https://fileforums.com/showpost.php?p=509818&postcount=146) or mparallel (https://github.com/lordmulder/MParallel))

wrathma: There are problems with this GOLang miracle! Does it need an AVX/AVX2-compatible processor? Or do the compiled binaries only work flawlessly on the given machine? What if I remove the GO compiler from the machine, will the binaries compiled until then break?

The x64 version also produces similar and longer errors. (Checked on two different Win7 x64 PCs.)
If you chain the compiled program to the given machine/Windows files, it is very bad and makes the given program and the compiler unreliable.
If the source code were rewritten to c/c++, how much better would it be? (With AI, I had a CPP produced, but the program is faulty, it could only serve as some guidance for porting to CPP.)

In its current state, the CPP file only produces "apparently" working programs after compilation!


it doesnt need a avx/avx2 compatible processor to run. atleast the logic should
work on all processors. golang programs are compiled and they are standalone.
unlike python/nodejs you dont need a interpreter to be installed on the user end to run this.

honestly i dont see any reason to rewrite this tool into cpp/c. performance
difference would be minor or nonexistent, but this type of tool is not meant
to be coded in these low level languages. i have seen your cpp code, you mostly
copied my structure a to z but the encoding/decoding logic is not there. if you
complete this on c the binary sizes might be cut to half or even more. and it
would probably work on older systems. if you follow what i do, i pack the files
in a modern device and then ship the tools required with a batch file. well if
you want feel free to rewrite this tool in c/cpp.

KaktoR
20-04-2026, 06:36
Thanks for the update.

Found 1 .wem files to pack (recursive)
Using 12 threads

[0%] 0/1 Files processed, ETA: 0s
All files packed successfully in 0s!

It's just a visual bug, so nothing to deal with on tryhard level.

kj911
20-04-2026, 15:42
wrathma: Thanks for the detailed description!

Speaking of switches:

wem-packer: Here, using "-s" or "-s -b" does not cause any particular confusion, during compress, unlike the unpacker.

wem-unpacker: Do not use the "-b" switch here, otherwise it may happen that the first time it is run it will fail (referring to "hdiff/xdelta"), while the second time it will run without errors. It is better to use it without switches, except for the "-tN" switch.

This is related to the fact that the "original" *.wem file is also in the folder, which conflicts with one of the members of the hdiffz+oggre chain and should appear at the end of the process, as the new *.wem file. That is, wem-unpacker deletes the original *.wem file and exits here, without continuing to run the hdiffz+oggre chain to then finish the unpacking properly, as it should.

C:\>wem-packer.exe -s -b music_frontend
Found 4 .wem files to pack (recursive)
Using 2 threads with size check (keeping backups)


268707965.wem: output is bigger than input, skipped

681733649.wem: output is bigger than input, skipped

775589494.wem: output is bigger than input, skipped

All files packed successfully in 7s!
C:\>wem-unpacker.exe music_frontend
Found 1 .ww files to unpack (recursive)
Using 2 threads

[0%] 0/1 Files processed, ETA: 0s
Errors encountered:
108187332.ww: xdelta failed
Completed with errors in %s
0s
C:\>wem-unpacker.exe music_frontend
Found 1 .ww files to unpack (recursive)
Using 2 threads

[0%] 0/1 Files processed, ETA: 0s
All files unpacked successfully 4s!

wempack-xdelta package: This doesn't run under Win7 x64 either. (Has anyone tested it under Win7, are you using the uploaded files or only Win10/11?)

Running the GO compiler with these switches, I managed to produce somewhat smaller EXEs. It should be 100% compatible with Win7 (also with 32-bit editions, theoretically going back to Vista, up to the early 32-bit version of Win10.) although, all "embedded binaries" are XP-compatible.
go build -a -gcflags=all="-l -B" -ldflags="-w -s" -o myapp main.go

The uploaded CPP file would require a more experienced programmer than me, this was also transpiled with AI, from GO to C++.

UPD: Embedding binary files via alternative methods: https://github.com/samuelngs/binary-go workable from these "wem-(un)packer's" project?

wrathma
22-04-2026, 11:12
wempack-xdelta package: This doesn't run under Win7 x64 either. (Has anyone tested it under Win7, are you using the uploaded files or only Win10/11?)


that was my mistake. i compiled it with latest golang (v1.26.2) that doesnt
support windows 7. i tried to build it today with golang v1.20 on win10 and
the compiled exe works fine on windows 7. also one thing i noticed, that
xdelta or wemtool also doesnt work on windows xp (i might be missing out
something, check screenshots). i tried to compress the wem files in win 7 x64
vm it worked. then i generated a batch script and sent that to my win xp vm,
and then it gave me some errors that say xdelta wont work. unfortunately
thats something i cant fix.


Running the GO compiler with these switches, I managed to produce somewhat smaller EXEs. It should be 100% compatible with Win7 (also with 32-bit editions, theoretically going back to Vista, up to the early 32-bit version of Win10.) although, all "embedded binaries" are XP-compatible.
go build -a -gcflags=all="-l -B" -ldflags="-w -s" -o myapp main.go

UPD: Embedding binary files via alternative methods: https://github.com/samuelngs/binary-go workable from these "wem-(un)packer's" project?

i also used a similar build flag -
go build -ldflags="-s -w" -tags windows -trimpath -gcflags=all="-l -B" ...
i did not use -a because all it does is rebuild external packages (wempack doesnt
use any external packages). and for the alternative binary embedding method, i
dont see any reason touse it. i also used to use this binary-go library long ago but
recent golang updates made this one obsolete. now the functionality is built into
golang. this is what i use (you can see the first few lines of my code) -

//go:embed tools/ww2ogg.exe
var ww2ogg []byte

//go:embed tools/oggre_enc.exe
var oggre_enc []byte

it simply copies the raw data as a a binary stream while compiling the exe. and
when running the tool it simply copies the binary data from the exe to a temp
folder. see extractTools() from line 50-72 of wem-packer.go.

https://i.ibb.co/JwmrJvTM/Virtual-Box-win7x32-21-04-2026-16-50-07.png (https://ibb.co/zTQPvXg0)
https://i.ibb.co/YBwM5YWM/Virtual-Box-winxp-22-04-2026-23-48-37.png (https://ibb.co/4R3Gb9fG)
https://i.ibb.co/N2m1sqwL/Virtual-Box-winxp-23-04-2026-00-00-15.png (https://ibb.co/23s8yrXj)

kj911
23-04-2026, 04:19
Use the binary files I uploaded! I've sorted them and patched them so they can run under XP! (For use the 32bit wem-(un)packer releases.)

List: WemTool_XP_compat_files.7z (Although this pack was uploaded directly for Masquerade.) You can download the XP compatible "xdelta.exe" from the original site (https://github.com/jmacd/xdelta-gpl/releases) (marked "i686"). Or you can use the files below. (After running, copy them from the TEMP directory.) The my uploaded "mp.exe" XP-compatible.

wempack_x86_hdiff.7z
wempack_x86_xdelta.7z

If all *.exe files, fixed for XP, run without errors, then the batch script should run without errors when compressing and decompressing *.wem files. (I haven't even experimented with this yet.)

Win7 compatible GOLang (I already linked it earlier.): https://github.com/thongtech/go-legacy-win7

wrathma
25-04-2026, 01:16
If all *.exe files, fixed for XP, run without errors, then the batch script should run without errors when compressing and decompressing *.wem files. (I haven't even experimented with this yet.)


your patched exes works under xp environment. i think you can use
the batch script function of wem-unpacker with your fixed winxp
executables to decompress wem files under winxp environment.

currently im working on editing my prl tool (https://fileforums.com/showpost.php?p=509818&postcount=146) (a mparallel alternative)
to move to win32 system api calls instead of relying on crt libraries.
that way it can run natively on any post winxp system without needing
to install any msvcrt libraries. plus the file size will also shrink (it is still small).

wrathma
27-04-2026, 08:49
based on latest github/zstd-1.5.7 sources. needs thorough testing. use 1.5.7 (https://github.com/facebook/zstd/releases/tag/v1.5.7) to compress. examples -
> zstd_decompress.exe

Experimental ZSTD Decompressor by SYMM

usage: zstd_decompressor input output
replace input and/or output with - to use stdin/stdout


> zstd_decompress.exe input.zst output.exe
output.exe : 126607283 bytes

zstd_decompress.exe - - < input.zst > output.exe
<stdin>: 126607283 bytes written

on benchmarks its almost 2x slower than the official zstd binary release (1.5mb). still it is fast with almost 350MBps decompression speed for 4GB uncompressed data on my test system (4c8t i3) on nvme.

newfolder
04-05-2026, 11:16
Unity Precomp, the open source tool to precompress unity3d/bundle files, includes the binary and the source code in c

newfolder
08-05-2026, 13:51
Unity Decomp is a program that decompresses Unity bundle files, essentially expanding them so the expanded file is compatible with the Unity engine. This is ideal for people who want to optimize compression, since removing the lz4/lz4hc data allows you to use better compressors like 7-Zip, LOLZ, or FreeARC.

Includes the binary and the source code in c

wrathma
09-05-2026, 11:37
this is a standalone bz3 decompressor. based on latest iczelia/bzip3
commit 97a6da2 (https://github.com/iczelia/bzip3/archive/97a6da2e51087b513e5065424c751928256b3d7e.zip). use bzip3 v1.5.3 to compress. decompression
speed same as official bzip3 release.

tried to build with winxp support but failed. i dont think bzip3 source
codes support winxp at all. eventually got the standalone compiled
x86 exe down to 35kb (no ucrt/msvcrt dll dependency) but it wouldnt
work on win7 without ucrt. worked fine on 10+ tho. so had to add
ucrt. works on all win7+ systems even without any msvcrt installation.

attachment includes source code. to compile make a decompress/ dir
inside bzip3/ git repo and copy the attached CMakeLists.txt and
main_decompress.c and then build the project using cmake.

> bunzip3_x86.exe

bz3 decompressor by SYMM

usage: bunzip3 input output
replace input and/or output with - to use stdin/stdout


> bunzip3_x86.exe input.bz3 output.exe
output.exe : 824130 bytes

> bunzip3_x86.exe - - < input.bz3 > output.exe
<stdin>: 824130 bytes

kj911
12-05-2026, 09:30
BUNZIP3: A question arose, how can it not get an error if the "libsais" library is not included?

Please note that if you are unpacking these *.bz3 archives on a 32-bit machine, do not use a large block size and/or multiple threads, otherwise it will crash and/or exit silently, resulting in a 0-byte file.

Packed in "-b 511" switches:
x64 exe only one capable it! x86 version (include my XP-versions) still crashing!

Packed in 320MB's block size:
x64 exe: works.
x86: silently exit and will get 0 byte file.
x86_laa: only one capable ~2 million KB memory allocation from x64 Windows host, perfectly decompress.

Packed in 255MB's block size:
all x86 exe hopefully works, included all x32 systems.

Recommendedly use max. 255MB's block size or failsafely smaller values from targeting real 32bit systems. (ex: 64/128/192/224MB.)
These "-b 255" packed archives, I need ~1 600 000KB free memory allocation.
Tested from "enwik9" file.

wrathma
12-05-2026, 10:12
BUNZIP3: A question arose, how can it not get an error if the "libsais" library is not included?


if you see at the top of CMakeLists.txt youll find that it includes src/libbz3.c in the build command which imports libsais.h :)
btw i tried your winxp builds and it works fine on my vm, can you share how you did that ? did you use very old visual studio ?

kj911
12-05-2026, 14:02
The source code wouldn't compile by hand... (Neither with MinGW nor with w64devkit.)

The main solution was (if all files are in the correct right place), that I had to generate a MinGW-compatible "Makefile" from the "CMakeLists.txt" file using "cmake" in "w64devkit (https://github.com/skeeto/w64devkit/releases)". (last v2.6.0 or 2.7.0 with GCC15.2.0. I'm looking now, v2.8.0 has already been released.)

In principle it was this: cmake -G "MinGW Makefiles" "CMakeLists.txt"

After that, I just had to run "mingw32-make.exe" and the binary file was ready. (After that, I cut out the excess with "strip.exe".)
"*_laa.exe" was created by patching the original file with a small program called "4gb_patch (https://ntcore.com/4gb-patch/)".

w64devkit can also build XP-compatible EXEs. (With some luck.)

These lines changed to:
/SUBSYSTEM:CONSOLE,6.01 --> 5.01
not resolve and generate XP-compatible binaries?

Visual Studio?? As far as I know, it's very difficult to get this nowadays (let alone install it offline), not to mention the many GB of storage space required...

By any chance, you don't have the xp v141 package on your machine? There might be a couple of CAB compression sources. What does it actually do, compared to makecab? Rust, you don't have it installed by any chance?

wrathma
12-05-2026, 14:55
These lines changed to:
/SUBSYSTEM:CONSOLE,6.01 --> 5.01
not resolve and generate XP-compatible binaries?

By any chance, you don't have the xp v141 package on your machine? There might be a couple of CAB compression sources. What does it actually do, compared to makecab? Rust, you don't have it installed by any chance?

i have v141_xp msvc toolset. i tried atleast 20 times with different compiler/linker
args to try to add xp support. yes i also tried /SUBSYSTEM:CONSOLE,5.01 it doesnt
help much. as i have seen using it and not using it is the same. if it were to run on
winxp it would run without this. btw even if you have v141_xp toolset, cmake will
try to target latest toolset. you have to specify it before building like this.
cmake -G "Visual Studio 18 2026" -A Win32 -T v141_xp -B build

yeah it is heavy. visual studio is taking up almost 50gb on my system drive.
but thanks for the tip, i never knew using non msvc compiler could fix it.

kj911
12-05-2026, 16:25
CMake can, in principle, be configured to always use the given "toolkit" to compile the given source code. (ex: Ninja, MinGW, VisualStudio, etc...)

To be honest, I don't have much experience with these programs,.. If, the package is put together well, the desired/tested program can usually be produced, if there is source code for it.

Manual patching of EXEs does not always solve the problem of whether they can be run on XP? (If, Vista+ compatible EXEs are released after compilation.) If there are no significant number of Vista/7 kernel-specific calls in the binary file, then they usually work on XP as well.

wrathma
17-05-2026, 02:23
so this patched dll uses true stdio (no fileio) compression. directly
from ram to ram. it doesnt write anything to disk by itself.
as it is ram to ram, it will use more memory compared to fileio.

maximum memory usage during compression - input filesize +
output file size + compression memory. maximum memory
usage during decompression - decompression memory + ~4mb.

notes:

as i hooked multiple fileio functions of win32api, normal fileio
compression/decompression through razor is not possible (with
my patch). using fileio with my patch may lead to bsod. so i have
added some checks to prevent accidental fileio operations. to do
fileio operations use the original rz.exe.
you might see my patch reading/writing V_IN.SYMM or
V_OUT.SYMM files, those are just my handles for virtual memory
address. not actual files on disk.
its NOT interchangeable with Razor12911's patch or my old
"fake" stdio patch.


compiled with mingw-clang. will add the source code after some
cleaning. works fine with arc. added sample arc.ini. for usage
instructions see test.bat/arc.ini.

edit:
fixed a memory leak issue (idk how it slipped past me). removed
debug-specific checks that are not required now. some cosmetic
changes and removed unused debug code. also fixed a bug where
it would fail with freearc decompression.
during testing i found out that razor decompressor is sequential so
made this patch do sequential streamed decompression. so memory
usage is same as (+ ~4 mb) non stdio operations. optimized dll
size (115kb to 14 kb).

Dunnowho69
17-05-2026, 03:13
so this patched dll uses true stdio (no fileio) compression. directly
from ram to ram. it doesnt write anything to disk by itself.
as it is ram to ram, it will use more memory compared to fileio.

maximum memory usage during compression - input filesize +
output file size + compression memory. maximum memory
usage during decompression - input filesize + 8mb output chunks
+ decompression memory.

i had to hook multiple win32api system calls to fool razor archiver
to use a memory address instead of a file.

compiled with msvc. will add the source code after some cleaning.
works fine with arc. added sample arc.ini. for usage instructions
see test.bat/arc.ini.
If you don't mind, what's the difference between this and https://www.fileforums.com/showpost.php?p=495381&postcount=8 ? I use razor all the time that's why just asking if i should use this from now on :)

KaktoR
17-05-2026, 03:24
The difference is no temp file copy which simply means it is faster. Not compression itself but it simply doesn't make any temp files. If you use this to compress files on HDD it should make a clear difference in overall compression times. With the old stdio patch rz.exe will copy temp from HDD to HDD (same as lolz does). This step is obsolete. There is nothing faster than RAM copy.

kj911
17-05-2026, 04:05
The other day I noticed that the original Razor compressor (rz.exe) created a 32MB temporary file in the %TEMP% folder while testing a 7+ GB archive. Maybe because it would have run faster, testing/unpacking the compressed data, than the HDD speed.

Could someone port Razor to WinXP?? There is an early, v0-1 "draft" source code, heaven knows where it came from. The point is that the program can be compiled for XP, but it doesn't matter what kind of compiler. The MinGW version compresses EXEs worse than the "draft" EXE. This one runs on XP with a little patching. It only handles one file, it's not "fuzzsafe" or whatever they call it. The compression difference is 3-4% worse in favor of the v1.0x series, with a dictionary size of 64MB. There is also a decoder/decompressor compatible with the original RZ, but whether this can be ported to WinXP is a good question.

Masquerade
17-05-2026, 05:33
^^
Maybe you'd get a better answer asking on encode's forum.

wrathma
18-05-2026, 13:29
fixed a memory leak issue (idk how it slipped past me). removed
debug-specific checks that are not required now. some cosmetic
changes and removed unused debug code. also fixed a bug where
it would fail with freearc decompression.
during testing i found out that razor decompressor is sequential so
made this patch do sequential streamed decompression. so memory
usage is same as (+ ~4 mb) non stdio operations. optimized dll
size (115kb to 14 kb).

if anyone is using my patch i will highly suggest to update it
as some bugs and dead code unfortunately slipped past me
on my last build. a bsod-level issue was fixed. and overall
dll size dropped by almost 90%. will try to be more careful
from now.

If you don't mind, what's the difference between this and https://www.fileforums.com/showpost.php?p=495381&postcount=8 ? I use razor all the time that's why just asking if i should use this from now on :)
as KaktoR said, all it does is compress from ram to ram
eliminating the need to copy stdin to a temp file. if you
try using it on a hdd you will understand the difference.
decompression is same as Razor12911's build.
also a smaller dll wouldnt hurt i think (1.6mb vs 14kb) :D

Could someone port Razor to WinXP??
out of my skillset :(

newfolder
09-06-2026, 08:18
OodleForge v33.2 Threading Stability - OodleLZ Exact-Match Precompressor (open source)

wrathma
09-06-2026, 10:10
OodleForge v33 - OodleLZ Exact-Match Precompressor (open source), read the readme's

instead of -ssd -hddslow -hddfast you could add a in memory buffer. a set size of memory will be allocated at start (ex: 64mb). you first write processed output to this memory buffer and when its full you flush it directly to storage (1 write operation, works on a separate thread) and in the meantime allocate another memory buffer to start again. so instead of a 1gb file doing 4k+ write operations (with -hdd*) it will do only 16-17 write operations.

newfolder
09-06-2026, 10:36
instead of -ssd -hddslow -hddfast you could add a in memory buffer. a set size of memory will be allocated at start (ex: 64mb). you first write processed output to this memory buffer and when its full you flush it directly to storage (1 write operation, works on a separate thread) and in the meantime allocate another memory buffer to start again. so instead of a 1gb file doing 4k+ write operations (with -hdd*) it will do only 16-17 write operations.

You right, this changed the code 100%, amazing

Razor12911
11-06-2026, 04:05
OodleForge v33.1 The Memory Beast Edition - OodleLZ Exact-Match Precompressor (open source), read the readme's

It's good to see an alternative project in the works and given that it is open source, I would assume it is active development? If so, then I'd like to report a few issues I've discovered from the few tests I've conducted.

Issues

- A significant number of streams are left behind (not detected), scanner needs some improvements
- Even though there's only one game known to use of internal crc checks sendQuantumCRCs (The Crew 2), such data cannot be processed by this project
- spaceSpeedTradeoffBytes cannot be set by user and/or program does not check input for this change meaning games that this program cannot work on games that use the frostbite engine
- this project suffers from the same problem as xtool with leviathan and some hydra streams where they can be detected but not processed at all


The streams that are left behind can be however seen by this tool which can be found here (https://fileforums.com/showpost.php?p=509785&postcount=145), it's good that it is also open source as well, should help with development. :)

newfolder
11-06-2026, 07:33
It's good to see an alternative project in the works and given that it is open source, I would assume it is active development? If so, then I'd like to report a few issues I've discovered from the few tests I've conducted.

Thanks a lot for checking it out and for the detailed feedback really appreciate it coming from the XTool author!
The public repo is only ~2 days old (still v33.1), but I'm actively developing the Trinity Engine branch (Oodle + Unity LZ4 + Zlib + Preflate) with perfect AES roundtrips.
Scanner improvements are my top priority right now. Would love to hear more details about the missed streams or any test files you can share.
Open to collaboration!

https://github.com/johna124/Oodleforge