Skip to content

Protection

Flix100000 edited this page Oct 12, 2026 · 2 revisions

A stage that hands out /op would be a backdoor. A stage that takes /history away in single player would lock you out of your own world, because there is no console to fix it. So some commands have special rules.

The protected list

Commands on this list can be taken away by a stage, but never given, not even through *. With the stage, Minecraft's normal operator check still applies.

Default list:

op, deop, stop, ban, ban-ip, pardon, pardon-ip, whitelist, execute, reload,
save-off, save-all, debug, perf, jfr, publish, transfer, history
  • execute is on it because /execute as <someone> run … lets you run anything as anyone.
  • kick is deliberately not on it, so a moderator stage can hand it out.
  • history is on it because whoever may run it can unlock their own stages.

Change the list in the config editor (History Stages config, section HSTG: Permissions, "Protected commands") or in config/hstg_permissions-server.toml. Write entries without a mod name: op, or whitelist.add for a single subcommand. Default in the picker restores the list above. Entries that protect nothing (empty, *, unknown mod) are ignored and reported in the server log.

Never lockable

The commands of History Stages and HSTG: Permissions can be given by a stage, but never taken away, not even through *. That keeps /history and /hstgperms reachable no matter what the stages say.

/history

/history is on the protected list and never lockable, so a stage can neither give nor take it. It always keeps Minecraft's own operator check.

Who is never checked

The console, command blocks and functions run everything. The addon only checks players.

The editor and /hstgperms check both tell you when an entry hits one of these rules.

Clone this wiki locally