DUXPLIMA Documentation

Overview

How the command tree is shaped, which checks every command passes, and what runs from the console.

Every command lives under /claim. The root and its direct subcommands handle the claim itself, and seven sub-roots group the rest.

RootPage
/claim, /claim <subcommand>Claim commands
/claim chunk, /claim blockChunks and the claim block
/claim memberMembers
/claim inviteInvites
/claim roleRoles
/claim warpWarps
/claim admin, /claim reloadAdmin

Commands

Which claim a command acts on

Commands that act on "the current claim" resolve it in this order:

  1. The claim you selected with /claim select, or that /claim create just selected for you.
  2. The claim you are standing in.

If neither exists you get errorNoClaimSelected. A selection lasts until you log out, delete or leave that claim, or deselect it in the /claim list menu.

A selection outlives where you stand

After /claim select or /claim create, commands act on the selected claim even while you stand in another one. Check the selection in /claim list before running /claim delete, a kick, or a transfer.

Arguments

The last text argument of a command takes the rest of the line, so /claim select Claim of Steve and /claim rename North Base work with spaces. A name in the middle of a command, such as the role in /claim role rename <role> <name>, must be one word. Names of flags, role permissions, roles, warps and claims match without regard to case.

Confirmation

These commands ask first and wait for /claim confirm or /claim cancel. The prompt is confirmationRequired in messages.yml, with clickable buttons.

CommandAsks first
/claim on free land, creating a new claimyes
/claim deleteyes
/claim kick, /claim member kickyes
/claim transfer, /claim member transferyes
/claim chunk removeyes
/claim role deleteyes
/claim warp deleteyes
/claim warp teleport, /claim spawn <name> to a public warp in a claim with PVP onyes, with warningWarpPvpEnabled
/claim ban, every /claim admin bulk commandno

A prompt expires after 30 seconds. Starting another confirmable command replaces the pending one. generalSettings.confirmationEnabled: false in config.yml turns every prompt off, and the commands run at once.

Console

Only /claim reload and the /claim admin bulk commands run from the console. Every other command needs a player, because it reads the player's position, selection or menus.

Permissions

A command that changes a claim passes up to two checks, and both must pass:

CheckWhat it isQuestion
AbilityA server permission, uxmclaims.ability.<category>.<action>May this player ever do this, anywhere?
Claim accessA role permission on the player's role, or ownership of the claimMay they do it in this claim?

Some actions skip the role permission and require ownership instead: deleting and transferring the claim, flags, role management, and assigning roles or permission overrides to members. Each command page lists which check applies. The ability nodes, their wildcards and when they are read are in Ability permissions.

uxmclaims.admin (default op, the only node plugin.yml declares) passes both checks, every limit, cost and cooldown. A uxmclaims.bypass.* node passes the ability check only.

Limits, costs and cooldowns come from uxmclaims.limit.*, uxmclaims.cost.* and uxmclaims.delay.* nodes, resolved through entitlements.yml. The full table is in Limits, costs and delays.

Settings

KeyFileDefaultEffect
generalSettings.smartCommandconfig.ymltrueWhat a bare /claim does on free land
generalSettings.confirmationEnabledconfig.ymltrueConfirmation prompts on or off
aliasesaliases.ymlfour aliasesTop-level shortcuts for /claim subcommands

Notes

  • Aliases. aliases.yml ships /accept (claim invite accept), /deny (claim invite reject), /unclaim (claim delete) and /untrust (claim kick). Arguments pass through and tab completion follows the target. /claim reload applies a change to the file. See aliases.yml.
  • Replies come from messages.yml. A refusal such as errorNoPermission or errorAbilityPermissionDenied is a key in messages.yml, in the language set in config.yml. The replies of /claim reload, the bulk commands and an unreadable /claim extend duration are fixed English text.

Related: Claim commands, Ability permissions, Role permissions