sonicretro / SonLVL

SonLVL
http://info.sonicretro.org/SonLVL
55 stars 27 forks source link

'Chameleon Compression' Support #102

Open AlexField442 opened 2 years ago

AlexField442 commented 2 years ago

Currently working on adding SonLVL support to the entirety of Sonic 2 Nick Arcade; Green Hill Zone's chunks use what I call 'Chameleon Compression' (due to it also appearing in Kid Chameleon, also by STI), which currently aren't supported by SonLVL.

More about it here (apparently it's LZSS-based).

geoo89 commented 2 years ago

Just for reference, C++ implementations: https://github.com/sonicretro/kid-chameleon-disasm/tree/master/tools/src The decompressor is basically Saxman's code, and both the compressor/decompresor could definitely do with some cleaning up... (A cleaned up version could maybe also go into https://github.com/flamewing/mdcomp and/or KENSSharp?)