Skip to main content

A library of tools to read various GameCube files

Project description

gcbrickwork

A library of tools to read various GameCube files and components, then parses them out into structured data.
Allows you to read, write, and update data via BytesIO streams, which can then be fed back into their original files.

Supported Files

File Name / Format Supported?
.prm / parameters / param ✅
.jmp / jump ~

~ indicates a type of file that is in progress

Type of files explained:

Parameter / PRM:

These types of files typically contain various data about a given actor / character in their respective game.
The actor / character it relates to is typically indicated by its file name.
The structure of these files break down in the following way:

  • First 4 bytes indicate the number of entries that exists within the file.
  • For each entry / field:
    • The first 2 bytes of an entry indicate some sort of hash.
    • The next 2 bytes indicate how long the string name is of the field / entry.
    • The next X bytes are read based on the previous 2 bytes values. Ex: If the name is supposed to be 6 bytes long, get the next 6 bytes to capture the entry / field's name.
    • The next 4 bytes will capture the byte size of the expected value. The following are the current known types:
      • Byte (single byte)
      • Short (two bytes)
      • Int / Float (Note: Due to how this data is parsed from bytes, there is no indicator for when something is an integer vs when something is a float. Instead, this library will pass the value back in hex, leaving it up to the user to decide if it is a float or not. You can decide this based on the name or how the data looks. Ex: Gravity would be a float)
      • Vector Data (12 bytes). This is usually just a Vector3 in c/c++, or just three floats in other words.
      • Color Data (16 bytes). This is usually 4 integers next to each other, representing Red, Green, Blue, and opacity.

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

gcbrickwork-0.0.1.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gcbrickwork-0.0.1-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file gcbrickwork-0.0.1.tar.gz.

File metadata

  • Download URL: gcbrickwork-0.0.1.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for gcbrickwork-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c35bf56b871fe8b14c6b3d473e69a8020dd5fe26ac7747bb071874807df5eb5c
MD5 8fa50d361b5da5b35a7daf1afa8d8a83
BLAKE2b-256 860a788cf7b5fd4516ed7ee40f41af496ca1a806df94f2832cf5ab2b30a5b4c4

See more details on using hashes here.

File details

Details for the file gcbrickwork-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: gcbrickwork-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for gcbrickwork-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 854e5b14af16a0c3a16a7c2ffa4b8e8d3190220134daa0119680376c3d37f5b8
MD5 4bb02bde90b5dcbfcc71108c602c8f1f
BLAKE2b-256 34e2b2bd39c242a4a6f1b9c0496a82a54e76ebb9c9b003ecfb4646035b0bebdc

See more details on using hashes here.

Supported by

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