Configuration
Every block of config.yml, with its defaults.
config.yml is written from a schema: comments are regenerated on every start, unknown keys are
dropped, and a key you delete comes back with its default.
behaviour
behaviour:
mode: both
consume-token: true
consume-remover: true
require-permission: true
hide-without-permission: false| Key | Default | What it does |
|---|---|---|
mode | both | player, bow or both. See Modes and tokens. |
consume-token | true | Whether the token is spent when it is bound. |
consume-remover | true | Whether the remover is spent when it unbinds. |
require-permission | true | Whether playing an effect needs its node. Commands and the API are never limited by it. |
hide-without-permission | false | Whether locked effects are hidden in the menu instead of shown locked. |
projectiles
Which launched projectiles carry an effect at all.
projectiles:
all-types: true
default-allowed-types:
- ARROW
- SPECTRAL_ARROW
- TRIDENT
- EGG
- SNOWBALL
- WIND_CHARGE
- ENDER_PEARL| Key | Default | What it does |
|---|---|---|
all-types | true | Every launched projectile carries the effect. |
default-allowed-types | seven types | Read only while all-types is false and the effect names no projectiles of its own. |
trail
trail:
default-interval: 1
max-duration: 10
max-active: 200| Key | Default | What it does |
|---|---|---|
default-interval | 1 | Ticks between trail steps for an effect that sets no trail-interval. |
max-duration | 10 | Seconds a trail may live before it is cancelled — an arrow lost in an unloaded chunk would otherwise draw forever. |
max-active | 200 | How many trails may be drawing at once on the whole server. Shots over the limit still play their launch and impact; they simply leave no trail. 0 removes the limit. |
A trail is a repeating task and a burst of packets per tick. A full lobby firing crossbows is the case the ceiling exists for, and losing a trail is a great deal less visible than losing the tick rate.
token-item, remover-item and key-item
token-item:
material: FIREWORK_STAR
name: "{primary}&lARROW EFFECT &8» %effect%"
lore:
- "{secondary}Information:"
- " {letters_black}▎ {letters}Drop this onto a bow to"
- " {letters_black}▎ {letters}{highlight}bind the effect {letters}to it. The bow"
- " {letters_black}▎ {letters}keeps everything it had."
- ""
- "{secondary}Fits:"
- " {letters_black}▎ {info}%bows%"
- ""
- "{warning}➥ Drop onto a bow to bind"
- ""
glow: true
remover-item:
material: SCRAPE_POTTERY_SHERD
name: "{primary}&lEFFECT REMOVER"
glow: true
key-item:
material: TRIPWIRE_HOOK
name: "{primary}&lCRATE KEY"
glow: true%effect% is the effect's name, %bows% what it fits. material is only used when the effect
sets no icon of its own — a token is normally drawn as the effect's own material.
key-item is the key a player holds: right click a crate block with one and it opens. See
The crate.
bow-lore
bow-lore:
enabled: true
lines:
- "{secondary}Arrow Effect:"
- " {letters_black}▎ {highlight}%effect%"Drawn under a bound bow's own lore, on packets only. The item itself never carries these lines.
tiers
The rarities effects are sorted into, and how often each one comes out of a crate. Add, rename or
delete any of them — the key is the id effects.yml writes as tier.
tiers:
common:
name: "Common"
material: GRAY_DYE
color: "{muted}"
chance: 60.0
priority: 1
rare:
name: "Rare"
material: LIGHT_BLUE_DYE
color: "{info}"
chance: 25.0
priority: 2
epic:
name: "Epic"
material: PINK_DYE
color: "{accent}"
chance: 12.0
priority: 3
legendary:
name: "Legendary"
material: ORANGE_DYE
color: "{highlight}"
chance: 3.0
priority: 4| Key | Default | What it does |
|---|---|---|
name | per rarity | What menus and placeholders call it. |
material | per rarity | The item the rarity is drawn with in the crate. |
color | per rarity | The colour its name and its effects are written in. |
chance | 60, 25, 12, 3 | A weight, not a percentage: the shares are worked out from the weights, so deleting a rarity re-spreads its odds. |
priority | 1-4 | Where it sits in menus; lower comes first. |
Each rarity is also a permission node, exyliarrows.tier.<id>. See Rarities and the
crate.
crate
crate:
enabled: true
start-keys: 0
duplicate-refund: 1
reward: UNLOCK
blocks: []
max-at-once: 4
spin-frames: 34
stagger-seconds: 2.0
on-spin:
sound:
name: BLOCK_NOTE_BLOCK_HAT
pitch: 1.6
on-win:
sound:
name: ENTITY_PLAYER_LEVELUP
pitch: 1.2
on-duplicate:
sound:
name: BLOCK_NOTE_BLOCK_BASS
pitch: 0.8| Key | Default | What it does |
|---|---|---|
enabled | true | Whether the crate can be opened at all. Off, its button says so instead of opening. |
start-keys | 0 | Keys a player is given the first time they are seen, written once when their row is created. |
duplicate-refund | 1 | Keys handed back when a crate lands on an effect they already own. |
reward | UNLOCK | What a crate hands over. UNLOCK keeps the effect on the account, ITEM hands over only its token, BOTH does both. ITEM and BOTH want behaviour.mode set to bow or both. |
blocks | empty | The blocks that open the crate when clicked. Bind them with /arrowsadmin crate block add rather than by hand. |
max-at-once | 4 | How many crates may be opened in one go. The opening screen fits seven. |
spin-frames | 34 | How many faces the first reel runs through before it stops. Capped at 200, about eleven seconds. |
stagger-seconds | 2.0 | How long after one reel stops the next one does. 0 stops them together. |
on-spin / on-win / on-duplicate | sounds | Full ExyliaLib effect blocks: title, action bar, boss bar, sound, particle and firework. on-win and on-duplicate play once per reel, as it lands. |
preview
Where /arrows preview and the menu's right click play an effect. The player is moved to the stage,
the effect plays in front of them where only they can see it, and they are put back exactly where
they were.
preview:
location: ""
distance: 5.0
settle-ticks: 4
linger-ticks: 20
max-ticks: 600| Key | Default | What it does |
|---|---|---|
location | empty | Where the player stands, as server,world,x,y,z,yaw,pitch. Set it in game with /arrowsadmin preview location. |
distance | 5.0 | How far in front of them the effect plays, in blocks. |
settle-ticks | 4 | How long to wait after the move, so the client has the new position before the first particle. |
linger-ticks | 20 | How long the stage is held after the effect finishes. |
max-ticks | 600 | The longest a preview may last, whatever goes wrong. |
There is no sensible default — a guess puts the player inside terrain. Until location is filled
in, /arrows preview and the menu's right click say so instead of playing anything.
menu
menu:
empty: "{muted}Nothing"
tab-open: "{success}✔ You are here"
tab-closed: "{warning}➥ Click to open"
bows-any: "Any bow"
favourites-name: "Favourites"
favourites-icon: "AMETHYST_SHARD"
favourite-on: "{highlight}★ In your favourites"
favourite-off: "{muted}☆ Not in your favourites"
random-name: "{highlight}Random"
random-on: "{success}✔ Every shot is a surprise"
random-off: "{warning}➥ Click to surprise yourself"random-name is what the random choice is called wherever the effect a player carries is drawn;
random-on and random-off are the line its button shows.
The screens themselves are menus/effects.yml, menus/crate.yml and menus/crate_open.yml — see
The menu and Rarities and the crate.
feedback
feedback:
on-bind:
sound:
name: BLOCK_ENCHANTMENT_TABLE_USE
volume: 1.0
pitch: 1.2
on-unbind:
sound:
name: BLOCK_GRINDSTONE_USEFull ExyliaLib effect blocks: title, action bar, boss bar, sound, particle and firework are all
available on each. on-bind plays when an effect is bound to a bow or chosen in the menu.
particles
particles:
default-visibility: "ALL"
name-all: "All"
name-none: "None"
name-self-only: "Self Only"
name-others-only: "Others Only"default-visibility is what a player starts with. The four names are what menus and placeholders
call each mode.
placeholders
placeholders:
none: "None"What every %exyliarrows_...% placeholder answers when there is no value.
messages
Every line the plugin sends. prefix is {primary}&lE-ARROWS &8•&r and every other message starts
with %prefix%.
| Key | Sent when |
|---|---|
bound | An effect is bound to a bow. |
unbound | An effect is unbound and returned. |
chosen | An effect is chosen in the menu. |
cleared | The effect is taken off. |
not-a-bow | The item is not something an effect can be bound to. |
wrong-bow | The effect does not fit that bow. |
unknown-effect | The id names nothing the file declares. |
already-bound | The bow already carries an effect. |
no-effect | The bow carries none. |
inventory-full | A remover needs a free slot. |
no-permission | The player does not own the effect. |
empty-hand | A hand-held subcommand with nothing in hand. |
given / given-remover / given-key | Tokens, removers or crate keys were given. |
list-header / list-entry / list-empty | /arrowsadmin list. |
visibility-set | Visibility changed. |
refreshed | refresh or validate finished. |
menu-disabled | The menu was opened on a bow server. |
favourite-added / favourite-removed / favourites-cleared / favourites-empty | The shortlist. |
random-chosen | Every shot was set to draw a different effect. |
crate-won / crate-duplicate / crate-no-keys | A crate landed on something new, on something owned, or could not be paid for. |
crate-busy / crate-empty / crate-disabled | A crate is already falling, has nothing to hand over, or is turned off. |
keys-received / keys-taken / keys-given | Keys changed hands. |
unlock-granted / unlock-already / unlock-revoked / unlocks-cleared | /arrowsadmin unlocks. |
crate-block-added / crate-block-removed / crate-block-already / crate-block-missing / crate-block-none | /arrowsadmin crate block. |
preview-location-set / preview-unavailable / preview-unavailable-admin | The preview stage. |
Placeholders in messages: %effect%, %amount%, %id%, %visibility%, %keys%, %player%,
%location%, plus %prefix%.
Something missing on this page? Tell us on Discord