Content generated with AI — it may contain mistakes.

Reference

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
KeyDefaultWhat it does
modebothplayer, weapon or both. See Modes and tokens.
consume-tokentrueWhether the token is spent when it is bound.
consume-removertrueWhether the remover is spent when it unbinds.
require-permissiontrueWhether playing an effect needs its node. Commands and the API are never limited by it.
hide-without-permissionfalseWhether locked effects are hidden in the menu instead of shown locked.

effects

Which hits play anything at all.

effects:
  all-mobs: false
  allowed-mobs:
    - PLAYER
    - MANNEQUIN
    - ZOMBIE
all-mobs on a farming server

all-mobs: true means every zombie in a grinder plays an effect on every blow that lands on it. Hit effects are usually meant for PvP: keep the list unless you want sparks on every mob you punch.

token-item, remover-item and key-item

token-item:
  material: FIREWORK_STAR
  name: "{primary}&lHIT EFFECT &8» %effect%"
  lore:
    - "{secondary}Information:"
    - " {letters_black}▎ {letters}Drop this onto a weapon to"
    - " {letters_black}▎ {letters}{highlight}bind the effect {letters}to it. The weapon"
    - " {letters_black}▎ {letters}keeps everything it had."
    - ""
    - "{secondary}Fits:"
    - " {letters_black}▎ {info}%weapons%"
    - ""
    - "{warning}➥ Drop onto a weapon 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, %weapons% 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.

weapon-lore

weapon-lore:
  enabled: true
  lines:
    - "{secondary}Hit Effect:"
    - " {letters_black}▎ {highlight}%effect%"

Drawn under a bound weapon's own lore, on packets only. The item itself never carries these lines.

menu:
  empty: "{muted}Nothing"
  tab-open: "{success}✔ You are here"
  tab-closed: "{warning}➥ Click to open"
  weapons-any: "Any weapon"
  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 hit 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, including placeholders. random-on and random-off are the line the random button shows while it is, and is not, the choice they are carrying.

The screen itself is menus/effects.yml — see The menu.

tiers

The rarities effects are sorted into, and how often each one comes out of a crate.

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 }

The key is the rarity id effects.yml writes as tier. Add, rename or delete any of them — nothing is hard-coded, and chance is a weight rather than a percentage. Full detail on 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
KeyDefaultWhat it does
enabledtrueWhether the crate opens at all. Off, its button says so.
start-keys0Keys a player is given the first time they are seen.
duplicate-refund1Keys handed back when a crate lands on something already owned.
rewardUNLOCKWhat a win hands over: UNLOCK, ITEM or BOTH.
blocksemptyBlocks that open the crate, as server,world,x,y,z,yaw,pitch.
max-at-once4How many crates may be opened in one go. Capped at seven by the screen.
spin-frames34Faces the first reel runs through. Capped at 200, about eleven seconds.
stagger-seconds2.0How long after one reel stops the next one does. 0 stops them together.
on-spinnote block hatPlayed while the reels fall.
on-winlevel upPlayed the moment a reel stops on something new, once per crate.
on-duplicatenote block bassPlayed instead when that reel stopped on something already owned.
Bind the blocks in game

/hiteffectsadmin crate block add writes the block you are looking at. A bound block cannot be broken, blown up or pushed away while it is on the list — which hand-editing this key does not give you.

preview

Where preview effects are shown.

preview:
  location: ""
  distance: 5.0
  settle-ticks: 4
  linger-ticks: 20
  max-ticks: 600

A preview moves the player to the stage, plays the effect in front of them where only they can see it, then puts them back exactly where they were. Until location is set, previews are unavailable and say so. Set it in game with /hiteffectsadmin preview location rather than by hand.

KeyDefaultWhat it does
locationemptyWhere the player stands while a preview plays.
distance5.0How far in front of them the effect plays, in blocks.
settle-ticks4How long to wait after the teleport, so the client has the new position first.
linger-ticks20How long the stage is held after the effect finishes.
max-ticks600The longest a preview may last, whatever goes wrong.
Two players may share one stage

Everyone on the stage is hidden from everyone else, and each effect is sent to one player, so a single location serves a full server.

feedback

feedback:
  on-bind:
    sound:
      name: BLOCK_ENCHANTMENT_TABLE_USE
      volume: 1.0
      pitch: 1.2
  on-unbind:
    sound:
      name: BLOCK_GRINDSTONE_USE

Full 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 weapon 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 %exyliahiteffect_...% placeholder answers when there is no value.

messages

Every line the plugin sends. prefix is {primary}&lE-HITS &8•&r and every other message starts with %prefix%.

KeySent when
boundAn effect is bound to a weapon.
unboundAn effect is unbound and returned.
chosenAn effect is chosen in the menu.
clearedThe effect is taken off.
not-a-weaponThe item is not something an effect can be bound to.
wrong-weaponThe effect does not fit that weapon.
unknown-effectThe id names nothing the file declares.
already-boundThe weapon already carries an effect.
no-effectThe weapon carries none.
inventory-fullA remover needs a free slot.
no-permissionThe player does not own the effect.
empty-handA hand-held subcommand with nothing in hand.
given / given-remover / given-keyTokens, removers or crate keys were given.
list-header / list-entry / list-empty/hiteffectsadmin list.
visibility-setVisibility changed.
refreshedrefresh or validate finished.
menu-disabledThe menu was opened on a weapon server.
favourite-added / favourite-removed / favourites-cleared / favourites-emptyThe shortlist.
random-chosenThe random choice was turned on.
crate-won / crate-duplicateA crate landed on something new, or on something already owned.
crate-no-keys / crate-busy / crate-empty / crate-disabledThe crate refusing to open.
keys-received / keys-taken / keys-givenCrate keys changed hands.
unlock-granted / unlock-already / unlock-revoked / unlocks-clearedunlocks subcommands.
crate-block-* / crate-blocks-*crate block subcommands.
preview-location-setThe preview stage was moved.
preview-unavailable / preview-unavailable-adminA preview asked for on a server with no stage.

Placeholders in messages: %effect%, %amount%, %id%, %visibility%, %keys%, %location%, plus %prefix%.

Something missing on this page? Tell us on Discord