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]
CMDL
ANCS
ANIM
CSKR
CINF
PART ✓ [1] ✓ [1]
HIER - - - -
STRG
  • [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 import PAK


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


PAK.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.10.1.tar.gz (5.8 MB view details)

Uploaded Source

Built Distribution

retro_data_structures-0.10.1-py3-none-any.whl (359.1 kB view details)

Uploaded Python 3

File details

Details for the file retro-data-structures-0.10.1.tar.gz.

File metadata

File hashes

Hashes for retro-data-structures-0.10.1.tar.gz
Algorithm Hash digest
SHA256 3a7af612589ed73f63ce35e46d0a593d2ad05163af1a13690ac17a04da88bd9c
MD5 183a69448d275e8cde79624f8b3365be
BLAKE2b-256 f230bf1640eb059e9faed9823e4bb74cbe2e5e3c5234368cda0b0c110aabf152

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for retro_data_structures-0.10.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0e875b04ece5619fbfcaa1eec208741f2de5fb6465537cf0f9218fd3b3d11067
MD5 cd9d8790049c5a20fbd07f5fd60f6789
BLAKE2b-256 7478d2498fbd7e534b0166a9d6b2efe0e5fe8eab8814f157e36b8371913ad866

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