Commit Graph
6 Commits
Author SHA1 Message Date
MagicBotandClaude Opus 5.5 c9d1e4ca24 Report unread bytes and round-trip through JSON text in test czones
The CZone test now flags any record the parser does not read to the
end and passes the JSON through json.dumps/loads, as unpack and pack
do, before rebuilding the binary.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 11:04:53 -04:00
MagicBotandClaude Opus 5.5 b2e38bdc06 Support all .wpak files with a wpak target
Replaces the config target with wpak, which handles every known pak or a
single one named on the command line. Map icon .tga entries are stored
unencrypted (sb.exe 0xAACA60).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 11:55:10 -04:00
MagicBotandClaude Opus 5.5 a312c9270a Add Config.wpak unpack, pack and test
A .wpak is a zip whose entries are each Blowfish CFB-64 encrypted with
a zero IV and the client's hardcoded key (sb.exe 0x54DEC0). Pure Python
Blowfish, no new dependencies.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 11:22:52 -04:00
MagicBotandClaude Opus 5.5 9005de76d9 Number output files and folders instead of overwriting
Pack now writes <Name>.cache, or <Name>.cache.1, .2, ... if that file
already exists (replaces the fixed .cache.new name). Unpack writes each
target folder under ARCANE_DUMP the same way, e.g. COBJECTS.1. The
output folder is created only after the cache loads, so a missing cache
does not leave an empty numbered folder.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 13:43:40 -04:00
MagicBot 6bc7e3ecd8 Show progress bar when unpacking files. 2022-12-31 11:49:00 -05:00
MagicBot 942b33a252 mbEditorPro2.0 release 2022-12-25 08:47:00 -05:00