Skip to content

Content IDs and Kinds

Liam Robinson edited this page Nov 8, 2026 · 1 revision

Content IDs and Kinds

Everything a mod can add or replace has a content id: <namespace>:<kind>/<path>, lower case, parts of a-z 0-9 _ . - separated by /.

Namespace Whose
ssx the game's disc
ava Project Avalanche's own content (markers, skies, the menu's files)
a package's name that package's additions

For example ssx:texture/character/textures/alex_board_00_diffuse is a board texture of the disc, and neon-pack:texture/neon_board a texture the package neon-pack adds.

Finding ids

  • In the game, a client script can list them: listContent("texture"), getContent(id).
  • With --mod-dev, the game's overlay lists your package's overrides and conflicts (Making a Mod).
  • The ids of the disc follow its file and record names: a texture's id is its path below the disc's folders without the extension, a drop's is the drop's name (ssx:drop/exp_alps_grandgolliat_drop_1_race).

Kinds

Kind Example id Files a package supplies Patch
texture ssx:texture/character/textures/alex_board_00_diffuse .png .jpg .jpeg .ktx2 .dds
model ssx:model/worlds/geometry/flag_pole_prayer_blua_lod0_geo .glb .gltf
object ssx:object/flag_pole_prayer_blua_gameobject object.toml (names its model)
material ssx:material/rock_basalt_mat .toml
character ssx:character/elise .glb .gltf .toml yes
gear ssx:gear/jacket/suit_default_elise .glb .gltf .toml yes
board ssx:board/board_elise_default .glb .gltf .toml yes
anim ssx:anim/anim_all/carv_regular_lean anim.toml (names its glTF), or a .glb / .gltf
trick <package>:trick/<name> trick.toml
drop ssx:drop/exp_alps_grandgolliat_drop_1_race .toml yes
event ssx:event/exp_antarctica_craddock_drop_7_survive .toml yes
map <package>:map/<name> map.toml, .glb .gltf yes
gamemode <package>:gamemode/<name> gamemode.toml
lighting ssx:lighting/day_sunny_lighting .toml yes
sky ava:sky/scattering .toml, .ktx2 .dds .png .hdr .exr
postfx ssx:postfx/<preset> .toml, .png yes
particles ssx:particles/fx/lynx/fx_airburst .toml, .png .dds .ktx2 yes
sound ssx:sound/sfx/boardsfx/jump .ogg .flac .wav, sounds.toml
music ssx:music/licensed/145 .ogg .flac .wav, music.toml
movie ssx:movie/<name> .webm (AV1 video, Vorbis sound)
ui ssx:ui/views/mainmenu .swf .gfx, .json
font ssx:font/na/din_engschrift_std .ttf .otf
string ssx:string/txt_main_menu_campaign_desc string tables strings/<language>.toml
tuning ssx:tuning/characterpropertiesasset/cp_max .toml yes
scoring ssx:scoring/scoringasset/scoring_air_trick_time .toml yes
marker ava:marker/ring marker.toml, .glb .gltf yes

The extension of each file in an [add] or [override] entry must be one of its kind's. Patch marks the data records a [patch] can change field by field (Resource Packages).

Kinds that change the ride

Some kinds change how the game plays, not only how it looks or sounds: tuning, scoring, event, drop, lighting, object, model, character, gear, board, anim and trick. A server can switch these off for its players' own mods (Client Mods on Servers).

Strings

String tables are files strings/<language>.toml (en, fr, de, es, it, ja) at the package root; no manifest line names them. A key TXT_… replaces the game's string of that key in that language; any other key is the package's own (<package>:string/<key>). A replacement must keep the original's placeholders (%1s, %2d …) and button tokens (^A^ …). At most 16 384 strings a table, a text 4 096 bytes.

Not yet

  • track (a disc track's terrain and objects, ssx:track/alps0101) and script (the game's own level scripts, ssx:script/…) entries are accepted in a package, but the game does not read them from packages yet: they have no effect. A map shows a disc track's distant mountains with its midground key instead (Making a Map). Scripts of your own go in [scripts], not in [add].

Clone this wiki locally