Bug#786501: game-data-packager: please add support for Commander Keen series
Alexandre Detiste
alexandre.detiste at gmail.com
Fri May 22 10:28:09 UTC 2015
Package: game-data-packager
Version: 41
Severity: wishlist
Tags: newcomer
The "Commander Genius" engine can be used to play
Commander Keen 1,2,3,4,5,6.
The "Refkeen" engine can be used to play
"Keen Dreams", aka "Keen 3.5".
----
unlzexe is needed to unpack some assets from Keen Dreams:
This c++ code compiles with a simple "g++ unlzexe.cpp"
https://github.com/gerstrong/Commander-Genius/blob/master/tools/unlzexe/unlzexe.cpp
This is a unix port of the original MSDOS program:
"UNLZEXE is distributed as PUBLIC DOMAIN."
"written by Mitugu(Kou) Kurizono , 05/17/90"
https://gitlab.com/unlzexe/unlzexe/blob/master/UNLZEXE.DOC
---
Then the decompressed EXE has to be cut in pieces,
as if it were some kind of tar archive.
https://github.com/NY00123/refkeen/blob/master/src/be_cross_fs.c
static const BE_EmbeddedGameFileDetails_T g_be_embeddedgameverfiles_kdreamse113[] = {
{"AUDIODCT.KDR", 1024, 0x8b6116d7, 0x2bc42},
{"AUDIOHHD.KDR", 340, 0x499e0cbf, 0x24480},
{"CONTEXT.KDR", 1283, 0x5a33439d, 0x245e0},
{"EGADICT.KDR", 1024, 0xa69af202, 0x2b446},
{"EGAHEAD.KDR", 12068, 0xb9d789ee, 0x1e720},
{"GAMETEXT.KDR", 413, 0xb0df2792, 0x24af0},
{"MAPDICT.KDR", 1020, 0x9faa7213, 0x2b846},
{"MAPHEAD.KDR", 11824, 0xb2f36c60, 0x21650},
{"STORY.KDR", 2526, 0xcafc1d15, 0x24c90},
{0}
};
struct {
const char *filename;
int filesize;
uint32_t crc32;
int offset; // Location of file/chunk in the EXE
} BE_EmbeddedGameFileDetails_T;
More information about the Pkg-games-devel
mailing list