Skip to main content

Cosmetics System

NapMC stores chat and lobby cosmetics in a database so your style persists across resets. Cosmetics unlock through ranks, events, or staff grants. Every slot has its own permission (see the table below) and most can be set with simple commands.

Core Chat Cosmetics

  • Prefix / Suffix/prefix <text>, /suffix <text>. Supports MiniMessage formatting where your permission allows it. Entries are moderated automatically to block staff titles and filtered words.
  • Nickname/nickname <name|off> for yourself. Trusted players can assist teammates with /nickname <player> <name>. Names sync to Discord bots when enabled.
  • Chat Colour/chatcolor opens a GUI with solid colours, gradients, and rainbow styles. /chatcolor reset restores defaults.
  • Chat Mode/chatmode <global|proximity|team> switches where your default chat is routed. Proximity chat respects the configured radius; team chat is private to /team.
  • Message Animation/msganimation toggles animated type-out of your last message. mode <letters|words> and delay <ticks> fine-tune the effect.

Personal Messages

When you unlock the slot you can theme the broadcasts that include your name:

  • /joinmessage <text|off|reset>
  • /leavemessage <text|off|reset>
  • /killmessage <text|off|reset>
  • /deathmessage <text|off|reset>

Messages accept MiniMessage formatting. The moderation pipeline censors disallowed content, and /cosmetic ban lets staff temporarily revoke abusive cosmetics.

Server List Cosmetics

With the corresponding permission you can theme how the server listing appears to you and friends:

  • Profile line, hover text, ping text, and personal MOTD are stored and injected by the ServerListManager.
  • Use /cosmetic grant <player> serverlist.profile (staff) to unlock slots for event winners, or /cosmetic clear <player> serverlist.profile to reset.
  • Placeholders like %nap_prefix% or %nap_nickname% are available through PlaceholderAPI when building custom components.

Toasts & Title Cards

Unlockable slots toast and title_card power bespoke popups:

  • Custom Toasts let you queue notifications with /toast <player> <title> | <subtitle>.
  • Title Cards display formatted fullscreen titles tied to events.
  • Both honour timed bans through /cosmetic ban.

Permissions by Category

SlotPermissionCommand
Prefixnapsmp.cosmetic.prefix/prefix
Suffixnapsmp.cosmetic.suffix/suffix
Chat Colournapsmp.cosmetic.chatcolor/chatcolor
Chat Modenapsmp.cosmetic.chatmode/chatmode
Nicknamenapsmp.cosmetic.nickname/nickname
Join Messagenapsmp.cosmetic.joinmessage/joinmessage
Leave Messagenapsmp.cosmetic.leavemessage/leavemessage
Kill Messagenapsmp.cosmetic.killmessage/killmessage
Death Messagenapsmp.cosmetic.deathmessage/deathmessage
Message Visibilitynapsmp.cosmetic.msgvisibilityGUI toggle (future)
Server List (profile/hover/ping/motd)napsmp.cosmetic.serverlist.*Staff grant via /cosmetic
Custom Toastnapsmp.cosmetic.toast/toast (staff-triggered for now)
Title Cardnapsmp.cosmetic.titlecardEvent scripts / /cosmetic

Staff Tools

  • /cosmetic ban|unban <player> <slot> [duration] [reason]
  • /cosmetic clear <player> <slot|all>
  • /cosmetic grant|revoke <player> <slot>
  • /cosmetic info <player> <slot> to inspect stored payloads for moderation.

All cosmetic data persists in the plugin database (cosmetics_values, cosmetics_bans) and survives restarts. Season resets that call /seasonreset offer an option to wipe cosmetics if you want a clean slate.