mrcrowbar.lib.games.jill module

File format classes for the games Jill of the Jungle (DOS, 1992) and Xargon (DOS, 1994).

class mrcrowbar.lib.games.jill.JillLoader[source]

Bases: mrcrowbar.loaders.Loader

Loader for the game Jill of the Jungle (DOS, 1992).

class mrcrowbar.lib.games.jill.SHAFile(*args, **kwargs)[source]

Bases: mrcrowbar.blocks.Block

tileset_data
tileset_offsets
tileset_sizes
tilesets = <StoreRef: 0x00007f5d722074d0>
class mrcrowbar.lib.games.jill.Sound(*args, **kwargs)[source]

Bases: mrcrowbar.blocks.Block

SAMPLE_RATE = 6000
raw_data
class mrcrowbar.lib.games.jill.Text(source_data: common.BytesReadType | None = None, *, parent: Block | None = None, preload_attrs: dict[str, Any] | None = None, endian: EndianEncoding = None, cache_bytes: bool = False, path_hint: str | None = None, strict: bool = False, cache_refs: bool = True)[source]

Bases: mrcrowbar.blocks.Block

Base class for Blocks.

source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
path_hint
Cache a string containing the path of the current Block, relative to the root.
strict
Throw an exception if parsing a BlockField fails, instead of logging a warning and returning an Unknown. Defaults to False.
cache_refs
Pre-cache all the Refs. Defaults to True.
data
class mrcrowbar.lib.games.jill.Tileset(source_data: common.BytesReadType | None = None, *, parent: Block | None = None, preload_attrs: dict[str, Any] | None = None, endian: EndianEncoding = None, cache_bytes: bool = False, path_hint: str | None = None, strict: bool = False, cache_refs: bool = True)[source]

Bases: mrcrowbar.blocks.Block

Base class for Blocks.

source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
path_hint
Cache a string containing the path of the current Block, relative to the root.
strict
Throw an exception if parsing a BlockField fails, instead of logging a warning and returning an Unknown. Defaults to False.
cache_refs
Pre-cache all the Refs. Defaults to True.
colour_depth
flags
len_cga
len_ega
len_vga
num_rots
num_shapes
class mrcrowbar.lib.games.jill.VCLFile(*args, **kwargs)[source]

Bases: mrcrowbar.blocks.Block

raw_data
sound_freqs
sound_offsets
sound_sizes
text_lengths
text_offsets
class mrcrowbar.lib.games.jill.XargonLoader[source]

Bases: mrcrowbar.loaders.Loader

Loader for the game Xargon (DOS, 1994).