Skip to content

Yaml Asset Structure

MegaMech edited this page Mar 13, 2024 · 2 revisions

Yaml structure has two parts. The config and the body

The config has a few purposes:

  • Differentiate between compressed and uncompressed data.
  • Add #include lines to the top of the file.
:config:
  segments:     # Optional, for compressed segments
    - [0x0B, 0x821D10]
  header:       # For writing custom strings to the top of the file.
    code:       # Written into the .c file.
    - '#include <my_file.h>'
    header:     # Written into the .h file.
    - '#include <types.h>'
    - '#include <waypoints.h>'

To extract your first asset add it after the config like so:

my_asset_name:             # This root node can be named anything. It is not important.
   symbol: my_asset_name   # The name to use for the variable.
   type: gfx    # The data type name
   offset: 0x100 # The offset the data is located at
my_second_asset:
   symbol: my_second_asset
   type: vtx
   offset: 0x200
   count: 4 # Number of vertices in this array.

Notice how the vtx asset has an extra node? Any data type can add extra nodes as required. For instance, textures require extra info prior to asset extraction.

Clone this wiki locally