Skip to main content
PRO 1.1.0+. Custom relics need Relics SMP PRO 1.1.0 or newer. Lite ignores them.
Six relics not enough? Add your own. A custom relic is a list of ability steps that run in order: aim, dash, blink, strike lightning, throw a fireball, explode, pull, push, drain and more. Give it any item, name, cooldown and passive. Custom relics follow every rule the six built-ins do:
  • One copy on the server, claimed from its own altar
  • Boss bar, timed reveals and /relics info
  • Drops on death, offline escrow, no storing, copies crumble
  • The same PvP, WorldGuard, world and spawn checks
  • Relic Rain, the WorldEvents PRO hook, seasons and PlaceholderAPI
  • Its own icon on the relic board, in extra rows below the six built-ins
You can add up to 21 custom relics, each with up to 32 steps.

Add a custom relic

1

Open the example file

PRO writes plugins/RelicsSMP/custom-relics-example.yml on its first start. It holds three ready-made relics: Frost, Ember Dash and Thunder. This file is never loaded on its own.
2

Copy a relic into config.yml

Paste the relic under relics: in config.yml, next to storm, inferno and the rest. If it uses your own sound or particle, add that entry under sounds: or particles: too.
3

Restart the server

Adding or removing a custom relic needs a restart. After that, /relics admin reload picks up any change to its settings.
4

Set its altar

Stand where it should live and run /relics admin setaltar <id>, for example /relics admin setaltar frost.
On startup the console confirms it: Relics SMP PRO 1.1.0: all 6 relics live, plus 3 custom.

Relic fields

A custom relic takes the same fields as a built-in, plus display and an ability list.
plugins/RelicsSMP/config.yml
messages.yml can still override a custom relic’s text: add relic.<id>.name, symbol, active or passive there.

How steps run

Steps run top to bottom. Most act at the point:
  • The point starts where you stand
  • aim moves it to the block you look at
  • A fireball moves it to where the fireball lands
  • blink brings it back to you
Gates. aim, nearby and blink can fail. If a gate fails before any delay or fireball, the cast stops, no cooldown starts, and you see why, just like the built-ins. Steps above the gate have already run, so put gates first. After a delay or fireball the cooldown has already started, so a failing gate only stops the steps after it. Delays and fireballs. delay waits, then runs the rest. A fireball flies first, and every step after it runs where it lands. If the fireball flies past its range without hitting anything, the steps after it don’t run. Enemies. Every enemy step uses the same rules as the built-ins. It never hits you, your own pets, armor stands, creative or spectator players, or players standing where PvP is off. Damage is credited to you. Units. Damage and healing are in half-hearts: 4 is two hearts. Radius and range are in blocks. Delays are in ticks: 20 ticks is one second.

Step reference

Every number has a default and an allowed range. A missing number uses its default.

Gates

Movement

Enemies around the point

The caster

Flow and looks

Sounds, particles and effects

Looks on any step. Every step also takes sound: and particle:. Each names an entry under sounds: or particles: in config.yml, and plays at the point after the step. When a step sets neither, some types play a default look: Other step types have no default look. Set either sound: or particle: on a step and both defaults are skipped for that step. A fireball works differently: the throw sound and the flight trail always play, and your sound: and particle: each replace only their own impact default. Your own entries. Add new names under sounds: and particles: and use them from any step:
plugins/RelicsSMP/config.yml
enabled: false on an entry turns it off. Particles that need block or item data are not supported and are skipped with a console warning. Effects. effect and buff steps and passive.effects take NAME or NAME:amplifier, for example SLOWNESS:2. Amplifier 0 is level I, 2 is level III, up to 9. Names are Minecraft effect ids: SPEED, SLOWNESS, STRENGTH, JUMP_BOOST, RESISTANCE, REGENERATION and so on.

Example relics

These three ship in custom-relics-example.yml. Copy one into config.yml under relics: and restart.
Freeze and hurl back everyone around you. Needs an enemy within 6 blocks, or the cast is cancelled with no cooldown. Then Slowness III for 4 seconds, 2 hearts of damage with an icy burst, and a push.
Frost’s burst uses its own particle. Add this under particles: in config.yml too:

When something is wrong

A mistake never stops the plugin. The console names the exact key and only that option, step or relic is skipped. For example:
Step numbers in these lines count from 0, so ability[2] is the third step. /relics admin reload tells you how many values were ignored.

Adding, removing and reloading

  • Settings changes to an existing custom relic apply on /relics admin reload
  • Adding or removing a custom relic needs a restart. Reload says so, for example Custom relics changed (+frost, -thunder). Restart the server to add or remove relics; until then the old set stays. A removed relic keeps working with its old settings until the restart
  • After you remove one and restart, the relic leaves the server and any copy of its item crumbles. Its altar and saved state stay in relics.yml, so adding it back and restarting brings it back
  • A YAML error in config.yml never deletes custom relics. If config.yml can’t be read at startup and relics.yml holds custom relics, Relics SMP stays off and says so in the console. Fix the file and restart. Reload refuses a broken config.yml and changes nothing