Skip to content

Commands

EmakiCodex uses /codex as its main command and /ecodex as an alias. Documentation examples use /codex.

The Paper command entry itself requires emakicodex.use; administrative subcommands then check the matching reload, debug, or admin permission.

Command list

CommandPermissionDescription
/codexemakicodex.useShows help.
/codex helpemakicodex.useShows help.
/codex reloademakicodex.reload or emakicodex.adminReloads config, language files, and advancement pages, re-registers advancements, and tries to resync online players.
/codex grant <player> <advId>emakicodex.adminGrants one Codex node to an online player.
/codex revoke <player> <advId>emakicodex.adminRevokes one Codex node from an online player.
/codex debug ...emakicodex.debug or emakicodex.adminManages the advancement debug module. Detailed subcommands are provided by CoreLib DebugCommand.

Examples

text
/codex
/codex help
/codex reload
/codex grant Steve example/first_step
/codex grant Steve emakicodex:example/challenge
/codex revoke Steve example/first_step
/codex debug advancement on
/codex debug advancement off

grant and revoke require the target player to be online because the current implementation matches online player names exactly. advId supports two forms:

FormExampleDescription
page/nodeexample/first_stepRecommended short form for server administrators.
Full NamespacedKeyemakicodex:example/first_stepMatches the underlying vanilla advancement key.

Reload behavior

/codex reload performs these operations:

  1. Releases missing default resources, controlled by config.yml > release_default_data.
  2. Reloads config.yml, lang/*.yml, and advancements/*.yml.
  3. Removes and re-registers dynamic advancements under the EmakiCodex namespace.
  4. If PacketEvents is available, re-pushes the tree to online players; otherwise online players may need to reconnect to see UI changes.

Permission nodes

PermissionDefaultCovers
emakicodex.usetrueUse the /codex command entry and help.
emakicodex.reloadopUse /codex reload. Can be replaced by emakicodex.admin.
emakicodex.debugopUse /codex debug .... Can be replaced by emakicodex.admin.
emakicodex.adminopUse grant/revoke admin commands and act as reload/debug override.

Common LuckPerms examples:

text
/lp group default permission set emakicodex.use true
/lp group admin permission set emakicodex.admin true
/lp group admin permission set emakicodex.reload true
/lp group admin permission set emakicodex.debug true

Common failure cases

CaseExplanation
Player not foundThe grant / revoke target is offline, or the name is not an exact match.
Advancement ... is not registered or unchangedThe advancement ID is wrong, the page failed to load, or the player's progress did not change.
Online players cannot see new nodes after reloadPacketEvents is missing or resync failed; players should reconnect.
Node coordinates do not applyPacketEvents must be installed and advancement.packet-coordinates: true must be enabled.