STYGION Documentation Search the docs

Essentials: spawn, homes, nicknames and the everyday commands

/spawn, /warp, /home, /rtp, /tpa, /back, /nick, /hat, /trash and /near for players; /heal, /feed, /god, /invsee and /vanish for staff.

Keystone 0.2.8 Updated 10 min read

This page is older than Keystone 0.2.8, released 18 October 2026. Something may have changed since.

On this page 9 parts
  1. Spawn and warps
  2. Homes
  3. Vanish
  4. Random teleport
  5. Teleport requests
  6. Back
  7. Everyday commands
  8. Nicknames
  9. Renaming or switching off a command

The essentials module, essentials.toml. The small things a server wants straight away: a spawn, warps, homes, invisible staff and the everyday commands. Each part can be switched off on its own (spawn.enabled, warps.enabled, homes.enabled, vanish.enabled, and one per command below).

Spawn and warps

#
  • /spawn and /warp <name> are for everybody (keystone.spawn, keystone.warp; the default group gets them at start). Tab offers the names; /warp on its own, or /warps, lists them.
  • /setwarp <name> makes or moves a warp where you stand (keystone.warp.set), /delwarp <name> removes one (keystone.warp.delete). The editor has a Warps screen that lists them and deletes them.
  • A warp into a world that is not loaded is listed as broken and refused with the reason.
  • Where another mod already has /warp or /spawn, theirs stays; Keystone's are then under /keystone.

Homes

#

From Keystone 0.2.1. Every player's own named places.

  • /sethome [name] makes a home where you stand (or moves one that exists), /home [name] takes you back, /delhome <name> removes one and /homes lists them as buttons to click. Without a name it is the home called home (or your only one). Tab offers your own names only. All of it is one permission, keystone.home, which the default group gets at start.
  • How many is per group: homes.limits, one group=count each (default default=2; for example vip=4, vip-plus=6, legend=10). The highest of the groups somebody is in counts, and so does keystone.home.limit.<n> from any group (up to 100; operators and keystone.* get 100). Nothing adds up. When a rank ends, homes over the limit keep working — only a new one is refused.
  • A safe teleport: a countdown, homes.warmup (3 s), to stand still through — a step aside or a hit cancels it; after arriving, a cooldown, homes.cooldown (30 s). The landing is checked at the end: solid ground, room for feet and head, no lava or fire. If somebody built into the home, Keystone looks homes.safe-search blocks up, then down, and refuses rather than teleport you into a wall. /sethome where nobody can stand is refused.
  • Between dimensions, unless homes.across-worlds is off.
  • Not into somebody else's land: with FTB Chunks (homes.respect-claims), /sethome is refused in a chunk a team you are not in or allied with holds, and so is /home to a home that land was claimed over later.
  • Staff: keystone.home.others — no group has it by default, operators do — allows /home player:name, /delhome player:name and /homes player (offline players too), with no countdown and no land check. Anybody without it gets the same refusal whether that player or home exists. keystone.home.instant skips the countdown and the cooldown for anybody who holds it.
  • The editor has a Homes screen: every home with a search, the limit per group, and delete. Over the API, GET /v1/homes needs homes.read and POST /v1/homes/delete needs homes.write — only the owner's keys carry these, because a list of homes is a list of everybody's bases.
  • Nothing of this runs every tick: a countdown looks at its player four times a second, only while it runs.

Vanish

#

/vanish (keystone.vanish) takes staff out of every other player's world and tab list, out of the server list's count and names, the query port, /list, the join and leave lines, the Discord bridge's join line and topic, and the counts the local API gives out. Mobs ignore them and, unless vanish.pick-up-items, items stay on the ground. Whoever holds keystone.vanish.see still sees them. It survives a reconnect and a restart.

Random teleport

#

From Keystone 0.2.2. /rtp puts a player somewhere random and safe. Permission keystone.rtp, which the default group gets at start; rtp.enabled = false turns it off.

  • Where: in the ring between rtp.min-distance and rtp.max-distance blocks (defaults 500 and 5000) from the world's spawn, or from another point (rtp.centre = "spawn" or "x, z"). On solid ground — never water, lava, leaves or the Nether's roof (in a world with a ceiling it lands under it) — and, with FTB Chunks, never on a claim of a team the player is not in or allied with (rtp.respect-claims, checked again when the countdown ends). Keep max-distance inside the world border; places outside it are skipped.
  • Which dimensions: rtp.worlds, one per line, each with its own distances if you like — minecraft:overworld, or minecraft:the_nether 100-1000 (a Nether block is eight of the Overworld's). /rtp alone goes in the dimension the player stands in when it is listed, else to the first line; /rtp <dimension> picks one.
  • Built not to cost the server: the chunk is loaded — usually generated — off the server thread, one try at a time, at most rtp.attempts (6) of them, and two players search at once. Places outside the border or on a stranger's claim are skipped before anything is loaded and do not count. Every /rtp may generate new chunks, so the farther the distance, the bigger the world grows.
  • Countdown and cooldown: rtp.warmup (3 s) to stand still through — walking away or being hurt cancels it — and rtp.cooldown (300 s), counted from arriving or from a search that found nothing, because that one generated chunks too.
  • keystone.rtp.instant skips the countdown and the cooldown for anybody who holds it.
  • Where another mod already has /rtp, Keystone's is /keystone rtp.

Teleport requests

#

From Keystone 0.2.2. /tpa <player> asks to go to somebody, /tpahere <player> asks them to come, /tpaccept and /tpdeny answer (the buttons in the question do too), /tpacancel takes your request back. keystone.tpa is all five and the default group gets it at start; tpa.enabled = false turns them off.

  • A request lapses after tpa.timeout (60 s) and both are told. Whoever moves stands still for tpa.warmup (3 s) and lands next to the other one where they are then, on safe ground; walking away or being hurt cancels it. After arriving, tpa.cooldown (30 s) before the same player may be moved by a request again.
  • Between dimensions unless tpa.across-worlds is off. Not into somebody else's land (tpa.respect-claims, FTB Chunks): whoever said yes may be standing in a base that is neither theirs nor the mover's.
  • Staff: keystone.tpa.others goes and brings at once, without asking, with no countdown and no land check. keystone.tpa.instant skips the countdown and the cooldown. A vanished player cannot be asked.
  • Where another mod already has /tpa, Keystone's are under /keystone.

Back

#

From Keystone 0.2.2. /back returns a player to where they stood before Keystone last moved them — /spawn, /warp, /home, /rtp, a teleport request or /back itself — or to where they died (back.on-death). Permission keystone.back, and keystone.back.death for the place of a death; both are in the default group from the first start. keystone.back.instant skips the countdown and the cooldown.

  • A death comes first (0.2.4, back.prefer-death, on): after dying, /back goes to where they died even when they have taken /spawn or /home since, until it has taken them there once; the next /back then goes to the teleport before. Off: whichever happened last. Somebody without keystone.back.death goes back to their last teleport instead.
  • A vanilla /tp or another mod's teleport is not seen, and a restart forgets every place.
  • back.warmup (3 s) and back.cooldown (30 s) as above. A landing is checked: solid ground, room to stand. When the spot itself is not safe, back.safe-search (8) blocks up and down are tried — and for a death (lava, a wall, water) as many to the side as well, at most 16. Nothing safe within reach, or a fall into the void, is refused with the reason. back.respect-claims refuses a place a stranger's team has claimed since.
  • back.enabled = false turns it off.

Everyday commands

#

From Keystone 0.2.4. Each has its own <command>.enabled (a restart applies it), and every permission is asked again when the command runs.

Command Permission What it does
/heal [player] keystone.heal (.others for somebody else) Full health, out of the fire
/feed [player] keystone.feed (.others) A full food bar
/god [player] keystone.god (.others) Only the void and /kill can hurt them, until typed again or they leave
/invsee <player> keystone.invsee Their inventory — online or offline
/invsee <player> ender keystone.invsee.ender Their ender chest
/hat keystone.hat (default) Wear one of what you hold; the old hat goes back to your inventory
/trash keystone.trash (default) A chest that empties itself when it closes
/near keystone.near (default) Who is within near.radius (200) blocks, with the distance rounded to ten — never a direction or coordinates
  • Never above your rank: /heal, /feed, /god and /nick on somebody else, and changing their inventory, are refused for a player who outranks you (heavier group, or an operator when you are not).
  • /invsee: changing what is inside needs keystone.invsee.modify, and only works while the player is online — it is their live inventory, and the window closes the moment they leave. An offline player's inventory is only ever shown: it is read from their saved data into a copy that is never written back, because writing it while they may be joining could duplicate or lose items. Nothing in a view you may not change can be taken, shift-clicked, swapped with a number key, dragged or thrown.
  • God mode lasts the session: it ends when they leave, and god mode a player gave themselves ends as soon as they lose keystone.god (a rank that ran out, a group taken away).
  • /hat keeps Curse of Binding: a cursed helmet stays on. /trash really deletes.
  • Cooldowns: heal.cooldown, feed.cooldown, god.cooldown (0), near.cooldown (10 s), in seconds; keystone.<command>.instant skips one.
  • /hat, /trash and /near are in the default group from the first start (with /kit); the rest stay with operators and the groups you give them to.

Nicknames

#

From Keystone 0.2.4. /nick <name> — a player goes by another name in chat, in the tab list and wherever the game prints names (death messages, /msg). Hovering over it shows the account: in chat formats the line chat.hover.nick ({account}), on the game's own name its usual hover. /nick shows yours, /nick off drops it.

  • Who may choose their own: keystone.nick, or nick.from-group — a group's id, and everybody in it or in a heavier group may ("vip-plus" lets VIP+ and every rank above it). Blank: only who holds the permission.
  • What a nick may be: letters, digits and _ only — no colour, no spaces — nick.min-length (3) to nick.max-length (16) characters, none of nick.blocked-words (admin, owner, staff, … — also spelt with digits for letters or split by underscores), and never another player's nick or the name of any account the server has seen. keystone.nick.bypass steps over the word list, never over the rest.
  • Staff: /nick <player> <name> or /nick <player> off (keystone.nick.others), never above their rank. A nick staff gave stays; one a player chose themselves goes when they lose the right to one.
  • nick.cooldown (300 s) between changes of one's own; keystone.nick.instant skips it.

Renaming or switching off a command

#

From Keystone 0.2.4, in keystone.toml: commands.off = ["nick", "hat"] drops Keystone's commands of those names, commands.rename = ["kit: kits"] gives one another name (its permission stays). For a pack where another mod should keep the name. /keystone <command> always stays, and /keystone itself can be neither. A restart applies it.

Did this page help?

Opens the feedback panel with this page attached. It lands in the same queue as everything else.