Configuration
config.yml key by key with every default, what messages.yml holds and the values each line receives, the menu files and their values, and the database table.
Everything is generated in plugins/ExyliaGraves/ on first start, with comments. Edit the files there,
never the copies in the jar. /gravesadmin reload applies an edit.
config.yml
The defaults, with the comments trimmed:
config-version: 1
language: default
graves:
expire-time: 60
on-expire: DROP
protection-time: 15
killer-can-loot: true
max-per-player: 5
disabled-worlds: []
contents:
experience: VANILLA
experience-percent: 100
ignored-materials: []
kept-materials: []
collect:
auto-equip: true
sneak-to-preview: true
teleport:
enabled: false
cost: 0.0
hologram:
enabled: true
offset: 1.4
respawn:
point-compass: true
remind: trueconfig-version is the file's own version, for the plugin to update it; leave it alone.
language
| Key | Default | What it does |
|---|---|---|
language | default | The language of this plugin's menus and messages. default follows the language set in ExyliaLib's config.yml; en, es, pt, fr, ru or tr set this plugin alone. Each one is a folder under lang/ you can edit. |
graves
| Key | Default | What it does |
|---|---|---|
graves.expire-time | 60 | How long a grave stands, in minutes, or written out: 30m, 2h, 1d. -1 keeps it until it is collected. exyliagraves.expire.<minutes> gives a rank longer. See Expiry. |
graves.on-expire | DROP | What happens to the contents when a grave expires: DROP them where it stood, or DELETE them. Anything other than DELETE drops. |
graves.protection-time | 15 | How long, in minutes, only the owner may open it. 0 is anybody from the start, -1 only ever the owner. See Protection. |
graves.killer-can-loot | true | Whether the player who made the kill may open it while it is protected. Not with a protection of -1. |
graves.max-per-player | 5 | How many graves one player may have standing on this server. Dying with this many tips the oldest out where it stands. -1 is no limit. exyliagraves.limit.<n> raises it. See Limits. |
graves.disabled-worlds | [] | Worlds, by name, where nobody gets a grave. Any case. |
contents
| Key | Default | What it does |
|---|---|---|
contents.experience | VANILLA | NONE (the orbs drop as usual), VANILLA (what would have dropped as orbs) or ALL (every point the player had, levels included). An unknown value reads as VANILLA. See Experience. |
contents.experience-percent | 100 | Of that experience, the percentage the grave keeps, 0 to 100. The rest is lost. |
contents.ignored-materials | [] | Materials that never go into a grave: they drop on the floor as usual. |
contents.kept-materials | [] | Materials the player keeps through death, in their inventory. |
collect
| Key | Default | What it does |
|---|---|---|
collect.auto-equip | true | Whether the owner's armour and offhand go straight back on, into empty slots, when they collect their grave themselves. |
collect.sneak-to-preview | true | Whether sneaking while clicking a grave looks inside instead of collecting it. Needs exyliagraves.preview. |
teleport
| Key | Default | What it does |
|---|---|---|
teleport.enabled | false | Whether /graves lets a player go to one of theirs. Needs exyliagraves.teleport. |
teleport.cost | 0.0 | What that teleport costs, in ExyliaLib's default currency. 0 is free; exyliagraves.teleport.free skips it. See The /graves menu. |
hologram
| Key | Default | What it does |
|---|---|---|
hologram.enabled | true | Whether a grave has floating text above it. Turned off, every hologram comes down within a second; turned back on, they return as their chunks load again or on the next start. |
hologram.offset | 1.4 | How far above the block the text floats. |
The hologram's lines are hologram-lines in messages.yml.
respawn
| Key | Default | What it does |
|---|---|---|
respawn.point-compass | true | Whether the player's compass points to their newest grave after they respawn, when it is in the same world. |
respawn.remind | true | Whether they are reminded where their newest grave is after they respawn. |
messages.yml
lang/<code>/messages.yml holds every line the plugin says. %prefix% expands to the prefix value at
the top, {primary}&lGRAVES {letters_black}•<reset> in English. Colours are palette tokens, so recolouring the
server never means editing this file.
A line may open with an effect tag, which never reaches the screen: [sound:NAME|volume|pitch] plays a
sound to whoever receives it. An empty line is not sent at all — that is how a message is turned off.
| Keys | When | Values |
|---|---|---|
prefix | Opens every chat line through %prefix%. | |
created | A death made a grave. | %x% %y% %z% %world% %items% %time_left% |
collected | The owner collected it. | %items% %experience% %player% |
looted | Somebody else collected it. | %items% %experience% %player% (the owner) |
protected-grave, protected-grave-forever | A player who may not open it clicked it. | %player% %time_left% |
gone | The grave was already taken. | |
cannot-break | Somebody tried to mine it. | |
claim-failed | The database could not be reached; the grave is still there. | |
rewards-delivered | Contents kept for a player were handed over on join. | %amount% |
respawn-reminder | After respawning. | %x% %y% %z% %world% |
looted-notice | Left for the owner when somebody looted their grave. | %player% %items% %world% |
expired-dropped, expired-deleted | Left for the owner when a grave expired. | %items% |
preview-title | The title of the preview window. | %player% |
cannot-preview | A preview that is not allowed. | |
teleported, teleport-disabled, not-enough-money, teleport-refunded | The teleport from /graves. | %cost%, formatted in the currency |
in-combat | A teleport refused in combat. | %time% |
server-unreachable, world-not-loaded, teleport-failed | Why a teleport did not arrive. | |
no-permission | A missing node. | |
hologram-protected, hologram-open, hologram-forever, hologram-protected-for | The words of %protection% and of a never-ending %time_left%. | %time_left% in hologram-protected-for |
hologram-lines | The lines above a grave, top to bottom. | %player% %items% %time_left% %protection% |
menu-teleport, menu-preview, menu-restore, menu-remove | The click hints of a grave in the menus. Empty hides one. | |
admin-usage | /gravesadmin on its own. | |
restore-prompt, restored, restored-all | Handing graves back. | %player% %count% |
remove-prompt, removed | Removing a grave. | %player% |
no-graves | /gravesadmin restore on a player with none. | %player% |
reloaded | /gravesadmin reload. |
%items% is always a number of stacks, and %experience% a number of points.
Menus
Two screens, under lang/<code>/menus/.
| File | Opened by | Edits |
|---|---|---|
user/graves.yml | /graves | Yours. A release only adds what is missing, unless it raises menu-version, which replaces the file and keeps your previous one next to it. |
admin/graves.yml | /gravesadmin list <player> | Replaced from the jar on every start and every menu reload. |
Both are paginated, 54 slots, graves in slots 0-35, previous and next page at 48 and 50, the
header at 49. A menu file that fails to parse is named in the console and that screen does not open;
fix it and /gravesadmin reload.
Values
| Where | Values |
|---|---|
| The screen | %owner_name%, %graves% (how many) |
| Each grave | %grave_id%, %grave_owner%, %grave_items%, %grave_experience%, %grave_server%, %grave_world%, %grave_x%, %grave_y%, %grave_z%, %grave_age%, %grave_time_left%, %grave_protection%, %grave_actions% |
%grave_age%, %grave_time_left% and %grave_protection% keep ticking while the screen is open.
%grave_actions% is the click hints this viewer may use, from the menu-… messages, each on its own
line.
Actions
The grave buttons call these. Each one checks again, on the click, against the grave as it is stored.
| Action | What it does |
|---|---|
exyliagraves:teleport <id> | Teleports to the grave: the owner under the teleport rules, staff with admin.view to any. |
exyliagraves:preview <id> | Opens the preview. |
exyliagraves:restore <id> | Hands it back after a confirmation. Needs exyliagraves.admin.restore. |
exyliagraves:remove <id> | Removes it after a confirmation. Needs exyliagraves.admin.remove. |
Database
| Table | Holds |
|---|---|
sc_graves | One row per grave standing, on every server. See Network. |
Contents waiting for a player's join are kept in ExyliaLib's pending rewards, and notices waiting for a
join in ExyliaLib's exylia_notices, in the same database.
Something missing on this page? Tell us on Discord