Trait Structure

Generalised structure of Traits

Trait Categories

Simple Trait

{
    // Optional value that represents the Trait Context if provided.
    // Possible usage is to show context specific data if multiple are provided
    context: string | undefined
    // Trait Type Identifier
    trait: string
}

Refer to PlanetTraits , RobotTraits for examples

Target Trait

Reference to other Planets / Robots for a specific

{
    context: string | undefined
    trait: string
    // Selector to which Objects it References
    selector: "robot" | "planet"
    // List of the Ids that are referenced
    target: Array<UUID>
}

Refer to PlanetTraits , RobotTraits for examples

Complex Trait

Traits that provide more Data that cant be provided as Simple Trait

{
    context: string | undefined
    trait: string
    // Additional Data provided
    data: TraitData
}

Refer to PlanetTraits , RobotTraits for examples

Reserved Trait Types

Some trait types are standardised by the api specification and should not be used for custom trait types specified by third partie implementation

Refer to PlanetTraits , RobotTraits for a list of predefined traits

Last modified February 4, 2025: fix go & npm dependencies (8ff1fa0)