Skip to main content

Construct file definitions for the Retro Studios game engine files

Project description

Retro-data-structures

Construct type definitions for Retro Studios game

Format Prime 1 (Read) Prime 1 (Write) Prime 2 (Read) Prime 2 (Write) Prime 3 (Read) Prime 3 (Write)
PAK
MLVL
MREA ✗ [2]
MAPA
CMDL
ANCS
ANIM
CSKR
CINF
PART ✓ [1] ✓ [1]
HIER - - - -
STRG
SAVW
  • [1] All existing files parse, but not checked if exhaustive for what the game supports.
  • [2] Missing re-calculation of how sections are split between blocks.

Example Usage

from retro_data_structures.formats.pak_gc import PAK_GC


def read_file(path):
    with open(path, "rb") as f:
        return f.read()


PAK_GC.build_file({
    'named_resources': [
        {"asset": {"type": 'TXTR', "id": 201335801}, "name": 'TXTR_ElevatorIcon_1'},
        {"asset": {"type": 'TXTR', "id": 239414538}, "name": 'TXTR_ElevatorIcon'},
        {"asset": {"type": 'TXTR', "id": 564256465}, "name": 'TXTR_QuaterCurve'},
        {"asset": {"type": 'TXTR', "id": 568030977}, "name": 'TXTR_SaveStationIcon_1'},
    ],
    'resources': [
        {
            "asset": {"type": 'TXTR', "id": 201335801},
            "compressed": 1,
            "contents": {"value": read_file("ElevatorIcon_1.TXTR")},
        },
        {
            "asset": {"type": 'TXTR', "id": 201335801},
            "compressed": 1,
            "contents": {"value": read_file("ElevatorIcon.TXTR")},
        },
        {
            "asset": {"type": 'TXTR', "id": 201335801},
            "compressed": 1,
            "contents": {"value": read_file("QuaterCurve.TXTR")},
        },
        {
            "asset": {"type": 'TXTR', "id": 201335801},
            "compressed": 1,
            "contents": {"value": read_file("SaveStationIcon_1.TXTR")},
        },
    ]
}, "Game.pak")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

retro_data_structures-0.28.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

retro_data_structures-0.28.0-py3-none-any.whl (5.4 MB view details)

Uploaded Python 3

File details

Details for the file retro_data_structures-0.28.0.tar.gz.

File metadata

File hashes

Hashes for retro_data_structures-0.28.0.tar.gz
Algorithm Hash digest
SHA256 7541862ef9e649d2ce0b99261f196e4f0c2e47668f7907e76d289d0ae6933bf3
MD5 f4469aba3c8f826ff653cc98dd4671af
BLAKE2b-256 1cf0ef02d5e08c39c7dcbbdbe0f3cbedf3cb530e80fab38dbd32ecd62e1b8fd0

See more details on using hashes here.

File details

Details for the file retro_data_structures-0.28.0-py3-none-any.whl.

File metadata

File hashes

Hashes for retro_data_structures-0.28.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b837a6e81765a48b188fdd505a9d4f6ae19877ffb415f0bb7029a61db53935e1
MD5 4dc9a7397b9d450201a22e177957fff1
BLAKE2b-256 85eba61bb537ecff3a3faef5f8b22f0173da0685326d034cc1ae86c4bbce0e9a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page