AuroraLib.Compression
1.0.3
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package AuroraLib.Compression --version 1.0.3
NuGet\Install-Package AuroraLib.Compression -Version 1.0.3
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AuroraLib.Compression" Version="1.0.3" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add AuroraLib.Compression --version 1.0.3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: AuroraLib.Compression, 1.0.3"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install AuroraLib.Compression as a Cake Addin #addin nuget:?package=AuroraLib.Compression&version=1.0.3 // Install AuroraLib.Compression as a Cake Tool #tool nuget:?package=AuroraLib.Compression&version=1.0.3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
AuroraLib.Compression
Supports a wide range of compression algorithms mainly used in video games.
Supported Algorithms
Algorithm | Description |
---|---|
LZ10 | Nintendo LZ10 compression algorithm used in various games. |
LZ11 | Nintendo LZ11 compression algorithm used in various games. |
LZ77 | Nintendo LZ77 based on LZ10 algorithm used in some games. |
MIO0* | Nintendo MIO0 compression algorithm used in some Nintendo games. |
Yaz0* | Nintendo Yaz0 compression algorithm used in various games. |
Yaz1* | Identical to Yaz0 only with a different identifier. |
Yay0* | Nintendo YAY0 compression algorithm used in some Nintendo games. |
RLE30 | Nintendo RLE30 compression algorithm used in GameBoy games. |
PRS* | Sega PRS compression algorithm used in various Sega games. |
LZSega | LZSega based on LZSS compression used in some GameCube Sega games. |
CNX2 | Sega CNX2 algorithm, used in some Puyo Puyo. |
COMP | Sega COMP based on LZ11 algorithm, used in some Puyo Puyo. |
CXLZ | Sega CXLZ based on LZ10 algorithm, used in some Puyo Puyo. |
LZ00 | Sega LZ00 is based on LZSS algorithm with encryption. |
LZ01 | Sega LZ01 based on LZSS algorithm, used in some Puyo Puyo. |
AKLZ | A LZSS based algorithm used in Skies of Arcadia Legends. |
CNS | CNS compression algorithm, used in Games from Red Entertainment. |
CLZ0 | CLZ0 compression algorithm, used in Games from Victor Interactive Software. |
FCMP | FCMP based on LZSS algorithm, used in Muramasa The Demon Blade. |
GCLZ | GCLZ based on LZ10 algorithm, used in Pandora's Tower. |
LZ02 | LZ02 compression algorithm used in Mario Golf: Toadstool Tour. |
LZHudson | LZHudson based on LZSS compression algorithm used in Mario Party 4. |
LZShrek | LZShrek compression algorithm used in Shrek Super Slam. |
LZSS | LZSS compression algorithm used in many games. |
RefPack | RefPack compression algorithm used in EA games. |
GZip | GZip based on DEFLATE compression algorithm. |
ZLib | ZLib based on DEFLATE compression algorithm. |
AsuraZlb | AsuraZlb based on ZLib compression algorithm used in Simpsons The Game. |
ZLB | ZLB based on ZLib compression algorithm used in Star Fox Adventures. |
ALLZ | Aqualead LZ compression algorithm used by a handful of games. |
*
Big-endian and little-endian version are supported.
How To Use
Decompress a file with a specific algorithm.
using FileStream source = new("input.dat", FileMode.Open, FileAccess.Read, FileShare.Read);
using FileStream destination = new("output.dat", FileMode.Create, FileAccess.ReadWrite, FileShare.None);
new LZSS().Decompress(source, destination);
Compress a file with a specific algorithm.
using FileStream source = new("input.dat", FileMode.Open, FileAccess.Read, FileShare.Read);
using FileStream destination = new("output.dat", FileMode.Create, FileAccess.ReadWrite, FileShare.None);
new LZSS().Compress(source, destination);
Check if the file can be decompressed with a specific algorithm.
using FileStream source = new("input.dat", FileMode.Open, FileAccess.Read, FileShare.Read);
bool canDecompressed = new LZSS().IsMatch(source);
Credits
- Nickworonekin Puyo Tools inspired the LZ Decode and Encode code and reference for CNX2, LZ00, LZ01, LZ10, LZ11, PRS algorithms.
- Haruhiko Okumura reference his original C implementation of the LZSS algorithm.
- Daniel-McCarthy reference for MIO0, YAZ0, YAY0 algorithm.
- Niotso.wiki reference for RefPack algorithm.
- Sukharah reference for CLZ0 algorithm.
- Gamemasterplc reference for LZHudson algorithm.
- KirbyUK reference for LZShrek algorithm.
- Brolijah reference for ALLZ algorithm.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- AuroraLib.Core (>= 1.3.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on AuroraLib.Compression:
Repository | Stars |
---|---|
X-Hax/sa_tools
Sonic Adventure Toolset
|