Skip to content

GUI

gui.yml holds every menu title and icon in BoxStand, plus the marker shown over hidden stands.

stand-menu:
  title: "Armor Stand"
  visible-on:
    item: GLASS
    glow: true
    modeldata: 1001      # optional

Which gui.yml to use

The gui.yml that BoxStand creates by itself uses vanilla items and plain titles, so it works on any server.

For the custom icons and menu pictures, the BoxStand pack has one folder per item plugin. Use the one for your plugin:

Folder For
ItemsAdder Version ItemsAdder
Nexo Version Nexo
Oraxen Version Oraxen
CraftEngine Version CraftEngine
the gui.yml BoxStand writes itself No item plugin

Each folder holds that plugin's content and a BoxStand folder with a ready gui.yml and mannequins/. A server with no item plugin needs no folder for the icons: the gui.yml BoxStand writes on its own already uses vanilla items, and the Vanilla Version folder only carries the mannequin files. See Getting Started.

BoxStand does not check which item plugin is installed. It shows exactly what gui.yml says, so switching item plugins means switching to that plugin's gui.yml and mannequins/ too.

Item ids

An item plugin's id starts with the plugin's name. Every prefix has a two-letter short form.

Written like Short form Taken from
ARMOR_STAND Vanilla item
itemsadder:boxstand:pose ia:boxstand:pose ItemsAdder, item boxstand:pose
nexo:pose nx:pose Nexo, item pose
oraxen:pose ox:pose Oraxen, item pose
craftengine:boxstand:pose ce:boxstand:pose CraftEngine, item boxstand:pose
  • An id without one of these prefixes, like boxstand:pose, asks no plugin. The console warns about it on start.
  • If the plugin an id names is not installed, or has no item with that id, the icon shows a built-in vanilla item instead.
  • The same ids work in item and off-item in the mannequin files.

Empty slots

all-menus.empty-slot is the icon every empty item slot wears: the six equipment slots, the backpack and the balloon. It carries the slot's name, so an empty slot says what belongs in it. The names sit in messages.yml under slots, the balloon's in balloon.slot-name, and both carry their own colour - light grey as shipped.

It is drawn, never worn. Clicking it puts your item in as if the slot were empty, and it can never be picked up or end up on the stand.

A slot hidden by the arms toggle or by a mannequin keeps its marker as well. Those slots still take an item - it waits in the stand until the slot comes back - so they say what they are like every other one.

The versions for item plugins point it at a see-through icon, so those slots still read as empty. The file BoxStand writes uses a pale glass pane instead, because a server with no resource pack has nothing see-through to draw.

Bedrock players never see it. Their client has no pack icon to make it see-through, so they get the plain empty slots they have always had.

glow

glow: true puts the enchant glint on that icon.

The file BoxStand creates turns it on for the ON side of every toggle, because with vanilla items both sides are the same item and the glint is what tells them apart. The files for the item plugins leave it off everywhere: each state has its own icon there, so a glint would only add noise.

A part icon can glow too, but the part page already glints a part you have turned when it has no -edited icon.

modeldata

A custom model data number for a vanilla item, so a resource pack can give it your own texture. An item from an item plugin ignores it. Add it under any icon's item.

Titles

Each menu has a title. The versions for item plugins put the menu picture in the title with that plugin's tags, for example Nexo's:

stand-menu:
  title: "&f<shift:-1><glyph:boxstand_gui>&r<shift:-162>Armor Stand"

& colour codes work. The tags are read by the item plugin, not by BoxStand, so they only work with that plugin installed.

The whole file

The file BoxStand creates:

# Used in every menu
all-menus:
  background:           # empty and unusable slots
    item: WHITE_STAINED_GLASS_PANE
    glow: false
  spare:                # unused slots in the mannequin and preset pose pickers
    item: GRAY_STAINED_GLASS_PANE
    glow: false
  empty-slot:           # every empty item slot, named after the slot it sits in
    item: LIGHT_GRAY_STAINED_GLASS_PANE
    glow: false
  back:                 # the Back button
    item: ARROW
    glow: false

# The stand menu
stand-menu:
  title: "Armor Stand"
  paste:                # the paste slot, first slot of the menu
    item: YELLOW_STAINED_GLASS_PANE
    glow: false
  visible-on:
    item: ARMOR_STAND
    glow: true
  visible-off:
    item: ARMOR_STAND
    glow: false
  # gravity, arms, base-plate and lock have -on and -off icons the same way
  pose:
    item: ARMOR_STAND
    glow: false
  balloon-model:        # the same slot while a ModelEngine model hangs there
    item: NAME_TAG
    glow: false

# The mannequin picker
mannequin-menu:
  title: "Select Mannequin"

# The part menu
part-menu:
  title: "Select Part"
  select-pose:          # opens the preset poses
    item: YELLOW_STAINED_GLASS_PANE
    glow: false
  paste-pose:           # the pose paste slot, also on the preset pose picker
    item: YELLOW_STAINED_GLASS_PANE
    glow: false
  head:
    item: ARMOR_STAND
    glow: false
  head-edited:          # shown once the part has been turned, empty = the normal icon with a glint
    item: ""
    glow: false
  # body, left-arm, right-arm, left-leg and right-leg work the same way
  stand:
    item: ARMOR_STAND
    glow: false

# The preset pose picker
pose-menu:
  title: "Select Pose"

# The model name prompt
model-menu:
  title: "ModelEngine Model"
  info:                 # the help item
    item: BOOK
    glow: false
  name:                 # the name slot, clicked to put the model on the stand
    item: NAME_TAG
    glow: false

Upgrading from an older version

Older versions kept the titles and icons inside config.yml, and wrote ItemsAdder ids without a prefix. The first time the new version starts, it:

  • creates gui.yml with the titles and icons your config.yml had, then removes them from config.yml
  • adds itemsadder: in front of every old ItemsAdder id, in gui.yml and in your mannequin files

Nothing needs to be done by hand.