Main Config
config.yml with its default values. Notes are added only where a key is not self-explanatory.
Two rules apply to the whole file:
item:takes a Bukkit material (ARMOR_STAND) or an ItemsAdder/Nexo id (boxstand:pose). An id this server cannot make falls back to the material. Addmodeldatabeside anitemfor a custom-model-data number.require-permission:turns on the permission written above it in the file. See Permissions.
gui
gui:
require-permission: false
background:
item: boxstand:blank_slot # fills empty and unusable slots
titles:
main: "..."
pose: "..."
mannequin: "Select Mannequin"
model: "..." # the model-naming prompt
buttons:
visible:
require-permission: false
item:
on-state: boxstand:visible_on
off-state: boxstand:visible_off
# gravity and base-plate: the same keys
# arms: adds show-hands (show held items while arms are off)
# lock: adds personal (only the locker may open the GUI)
# pose: one item, no on/off states
backpack
backpack:
require-permission: true
scale: 0.625 # 1.0 = a full block
offset:
y: 3.5885 # height above the stand's feet
balloon
balloon:
require-permission: true
click-part: chestplate # click this body part to fill the balloon
item:
scale: 0.625
small-head: false # hang it at a small stand's head size
model:
require-permission: true
scale: 1.25 # 1.0 = the model's own size
leash-bone: handle # which l_ bone the lead ties to
item: boxstand:balloon
info-item: boxstand:info # help item, must be an enchanted book
mob:
require-permission: true
scale: 1.25
baby:
require-permission: true
offsets
From the stand's feet: x side, y up, z front and back.
offsets:
position: { x: -1.25, y: 3.25, z: 0.0 } # the balloon
lead-end: { x: -1.25, y: 3.25, z: 0.0 } # far end of the lead
lead-start: { x: -0.25, y: 0.75, z: 0.0 } # lead meets the stand
rise-from: { x: -0.25, y: 0.75, z: 0.0 } # where a new one starts
motion
motion:
turn-speed: 0.12 # how fast it turns with the stand, 0-1
follow-speed: 0.1 # how fast it follows the stand, 0-1
drag-lean:
strength: 2.0 # lean away when dragged; 0 = never
max-degrees: 22.5
rise:
enabled: true # a new balloon floats up from rise-from
speed-share: 0.35 # part of follow-speed used while rising
culling:
enabled: true # freeze while nobody watches
radius-blocks: 32 # further than this, nobody is watching
always-radius-blocks: 5 # this close, everyone counts
sway: # side tilt; mobs never sway
item: true
model: true
tilt-degrees: 5.0
bob:
item: true
model: true
mob: true
distance-blocks: 0.25
speed: 0.05 # also the sway clock
model
model:
emissive-bone: emissive # bones with this word in the name are lit
mannequin
mannequin:
bones: # bone names a worn model copies the pose onto
head: head
body: body
left-arm: left_arm
right-arm: right_arm
left-leg: left_leg
right-leg: right_leg
base-plate: baseplate
A name no bone answers to is skipped.
paste-slot
The first slot of each menu: setup in the stand GUI (switches, mannequin, items) and pose in the part selector.
paste-slot:
setup: { require-permission: true, item: boxstand:paste }
pose: { require-permission: false, item: boxstand:paste }
pose
The rest pose
Where a stand sits when nothing has been turned yet.
pose:
# A mannequin stands in this animation's first frame.
# Empty = every stand uses the numbers below.
default-animation: idle
default: # degrees, used when there is no such animation
head: { x: 0, y: 0, z: 0 }
body: { x: 0, y: 0, z: 0 }
right-arm: { x: -15, y: 0, z: 10 }
left-arm: { x: -10, y: 0, z: -10 }
right-leg: { x: 1, y: 0, z: 1 }
left-leg: { x: -1, y: 0, z: -1 }
It is also where shift-clicking a part in the selector puts it back to, and the pose a stand takes the moment a model goes on.
| Stand | Rest pose |
|---|---|
| No model | the default: degrees |
| Wearing a mannequin | the first frame of the clip it holds - a preset pose if one is chosen, default-animation otherwise |
| Wearing a mannequin with no such animation | the default: degrees |
Controls
control: scroll # scroll or wasd
swap-view-axes: true # front and side views turn the other axis
sidebar: true # the board shown beside the crosshair while posing
outline-block: orange_stained_glass # what the picked part is outlined with
scroll:
step-degrees: 5 # decimals allowed
invert-direction: false
hide-hotbar: true # empty the hotbar and off hand while posing
wasd:
step-degrees: 5
cooldown-ticks: 1 # ticks between turns while a key is held
hide-hotbar: false
The sidebar borrows the screen's one sidebar slot while posing, then gives it back. With PacketEvents it holds other boards off meanwhile.
outline-block goes to the picking player alone, as a glowing display shaped to that limb - pick a see-through block. Bedrock and servers without PacketEvents get particles.
Part buttons
buttons:
back: { item: boxstand:mannequin_back }
parts:
item:
head: boxstand:part_head
body: boxstand:part_body
left-arm: boxstand:part_arm_left
right-arm: boxstand:part_arm_right
left-leg: boxstand:part_leg_left
right-leg: boxstand:part_leg_right
stand: boxstand:part_stand
edited-item: # shown once that part has been turned
head: boxstand:part_head_edited
body: boxstand:part_body_edited
left-arm: boxstand:part_arm_left_edited
right-arm: boxstand:part_arm_right_edited
left-leg: boxstand:part_leg_left_edited
right-leg: boxstand:part_leg_right_edited
A part with no edited-item keeps its plain icon and gets a glint instead.
sneak
Sneaking reveals hidden stands nearby.
sneak:
require-permission: false
radius-blocks: 20
blacklisted-worlds: [spawn, hub, lobby, event, minigame]
indicator:
item: boxstand:visible_on
billboard: VERTICAL # VERTICAL, HORIZONTAL, CENTER or FIXED
packets
packets:
enabled: true
What it changes, on by default and only where PacketEvents is installed:
| With | Without | |
|---|---|---|
| Backpack, balloon, lead | Drawn per viewer, no entity | Real display entities |
| Entity count | Unchanged | Three or four per stand |
| Other plugins and mobs | Cannot see or touch them | Can hit, move or delete them |
| Clear-lag sweeps | Nothing to find | Can wipe them |
| Clicking a limb outside the hitbox | Answered per viewer, no entity | Needs a small Interaction entity |
| Bedrock players | Body and mannequin pose held still, so armour stays on the model | Armour drifts off a posed model |
| Pose sidebar | Holds other scoreboards back while posing | Loses the slot to a plugin that redraws |
/boxstand reload switches it live, and redraws what is already out there.