Skip to content
‮(gorg) edited this page Jul 11, 2022 · 3 revisions

Icon

Icons are df ways of having a common way of representing menu items.
There are many values in tags but often be empty, and are just ignored when making the item.
DF appears to have variation based on where the icon is, so there could be some error. Tags names ending in ? are optional They follow the pattern

{
    material:             string,     // without `minecraft:` and in caps, the material name. eg `STONE`
    name:                 string,     // Seen unused in tags, since they already have names so this one isn't need.
    deprecatedNote:       string[],  // Only seen on action RngTeleport, which despite being legacy has a proper icon.
    description:          string[],
    example:              string[],
    worksWith:            string[],   // What item/actions it works with.
    additionalInfo:       string[],
    requiredRank:         "" | "Noble" | "Emperor" | "Mythic" | "Overlord" | "Dev", // Dev only used for action DebugStackTrace
    requireTokens:        boolean,
    requireRankAndTokens: boolean,
    advanced:             boolean,   // Advanced actions appear at the bottom, with a line in the lore noting it's advanced.
    loadedItem:           string,    // The item loaded into a crossbow. Uses the same material scheme as in the material tag. Used twice.
    tags?:                number,    // Probably only on actions, and probably is the count of tags on the action.
    arguments?:           Argument[] // Appears on actions
}

Argument

Used for storing information on an action's arguments, stored in the icon for some reason.
They follow the pattern

{
    type:        string,  // TO-DO list all possible types
    plural:      boolean, // If the argument can take multiple values in multiple slots
    optional:    boolean,
    description: string[],
    notes:       string[]
}
Clone this wiki locally