Permission System

TickForge registers all permissions dynamically at startup. Every permission defaults to OP — only server operators have access unless you explicitly grant nodes via a permissions plugin (e.g. LuckPerms).

The primary command is /tickforge with the alias /tf. The legacy /paper command is also supported for backwards compatibility.

ℹ️
All Permissions Default to OP
Every permission node listed on this page uses PermissionDefault.OP. Non-operator players have no access unless explicitly granted.

How Permission Checking Works

When a player runs a subcommand like /tf status, TickForge checks permissions in the following order. Access is granted if any check passes:

1. bukkit.command.tickforge.status ← specific subcommand 2. bukkit.command.paper.status ← legacy variant 3. bukkit.command.tickforge ← root (grants ALL subcommands) 4. bukkit.command.paper ← legacy root

This means granting the root permission bukkit.command.tickforge gives access to every subcommand. For fine-grained control, grant individual subcommand nodes instead.

Root Permissions

Granting a root permission gives access to the base command and all subcommands.

Permission Default Description
bukkit.command.tickforge OP Root permission for /tickforge (/tf). Grants access to all subcommands.
bukkit.command.paper OP Legacy root permission for /paper. Grants access to all subcommands. Kept for backwards compatibility.

Subcommand Permissions

Each subcommand has its own permission node for fine-grained access control. Grant these individually to restrict operators to specific tools.

Permission Default Command & Description
bukkit.command.tickforge.status OP /tf status — Live server health readout: TPS, MSPT, memory, player count, and actionable hints.
bukkit.command.tickforge.profile OP /tf profile — Run the built-in tick profiler with configurable duration (1–60 seconds).
bukkit.command.tickforge.inspect OP /tf inspect — Per-chunk diagnostics: load state, ticket level, entity counts, inhabited time.
bukkit.command.tickforge.reload OP /tf reload — Reload TickForge configuration files at runtime.
bukkit.command.tickforge.version OP /tf version (alias /tf ver) — Display server version, build number, and Minecraft version.
bukkit.command.tickforge.entity OP /tf entity — Entity counts broken down by world.
bukkit.command.tickforge.mobcaps OP /tf mobcaps — Display global mob cap info per world and category.
bukkit.command.tickforge.playermobcaps OP /tf playermobcaps — Display per-player mob cap info for a specific player.
bukkit.command.tickforge.heap OP /tf heap — Generate a JVM heap dump for memory analysis.
bukkit.command.tickforge.motd OP /tf motd — View or toggle MOTD framework settings.
bukkit.command.tickforge.welcome OP /tf welcome — Toggle or view the join welcome message status.
bukkit.command.tickforge.syncloadinfo OP /tf syncloadinfo — Synchronous chunk load diagnostics and stack traces.
bukkit.command.tickforge.dumpitem OP /tf dumpitem — Dump the NBT of the held item to clipboard.
bukkit.command.tickforge.dumpplugins OP /tf dumpplugins — Export the full plugin dependency tree to a JSON file.
bukkit.command.tickforge.dumplisteners OP /tf dumplisteners — List all registered event listeners for a specific event class.
Plugin List Command
The /plugins command uses a separate permission: bukkit.command.plugins (default: OP). This is not a TickForge subcommand but is registered by the TickForge plugin system.

Legacy Permissions

For backwards compatibility with Paper-era permission setups, every subcommand also registers a bukkit.command.paper.* variant. These work identically to their tickforge counterparts.

⚠️
Deprecated
Legacy bukkit.command.paper.* permissions are maintained for migration convenience only. New setups should use the bukkit.command.tickforge.* nodes exclusively.
TickForge Permission Legacy Equivalent
bukkit.command.tickforge bukkit.command.paper
bukkit.command.tickforge.status bukkit.command.paper.status
bukkit.command.tickforge.profile bukkit.command.paper.profile
bukkit.command.tickforge.inspect bukkit.command.paper.inspect
bukkit.command.tickforge.reload bukkit.command.paper.reload
bukkit.command.tickforge.version bukkit.command.paper.version
bukkit.command.tickforge.entity bukkit.command.paper.entity
bukkit.command.tickforge.mobcaps bukkit.command.paper.mobcaps
bukkit.command.tickforge.playermobcaps bukkit.command.paper.playermobcaps
bukkit.command.tickforge.heap bukkit.command.paper.heap
bukkit.command.tickforge.motd bukkit.command.paper.motd
bukkit.command.tickforge.welcome bukkit.command.paper.welcome
bukkit.command.tickforge.syncloadinfo bukkit.command.paper.syncloadinfo
bukkit.command.tickforge.dumpitem bukkit.command.paper.dumpitem
bukkit.command.tickforge.dumpplugins bukkit.command.paper.dumpplugins
bukkit.command.tickforge.dumplisteners bukkit.command.paper.dumplisteners

LuckPerms Examples

Common permission setups using LuckPerms.

GRANT ALL TICKFORGE COMMANDS
/lp group admin permission set bukkit.command.tickforge true
GRANT ONLY STATUS AND PROFILE
/lp group moderator permission set bukkit.command.tickforge.status true /lp group moderator permission set bukkit.command.tickforge.profile true
GRANT ALL EXCEPT HEAP DUMP
/lp group admin permission set bukkit.command.tickforge true /lp group admin permission set bukkit.command.tickforge.heap false