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.27.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for retro_data_structures-0.27.0.tar.gz
Algorithm Hash digest
SHA256 ffbf09c229471824739720ba0dddf662b6e5886cd8b303eaade14baa0aaac90a
MD5 7661d4ff840b43e808d91dfb302d55f1
BLAKE2b-256 b30ab9a8526e42ed6385c28d5e62ed34984b86a1140fe774fabf563ed16591f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for retro_data_structures-0.27.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a4342a5ae827179acd88c29d581442d6527cd12a6345ac18c2cb9353df7fa88e
MD5 a212bae166c8030ffaca5e64989168ad
BLAKE2b-256 0d96940459384279a65383e5d3c9169a8d7e2f8d42087b26c9c6ff0f2bcbe2cb

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