Skip to content

Gradient & Color Nicks

A nick in dNicks is a MiniMessage string. The visible text plus any styling you’re allowed to use.

Style Example Permission
Named colors <red>Name</red>, <aqua>Name</aqua> dnicks.color.<name> (or dnicks.color.*)
Hex colors <#ff5fa2>Name</#ff5fa2> dnicks.color.hex
Gradient <gradient:#ff5fa2:#a18fff>Name</gradient> dnicks.gradient
Rainbow <rainbow>Name</rainbow> dnicks.gradient
Decorations <bold>, <italic>, <underlined>, <strikethrough> dnicks.format

Ops have everything. A plain nick (/nick Steve) needs only dnicks.nick.self, which is on by default.

Gradients are rendered as real per-character hex colors and sent to the client natively, so they stay smooth β€” they are not downsampled to the 16 legacy colors. The same single rendered name is used for chat, the tab list and the floating nametag, so it always looks identical.

Set in config.yml under nick::

  • Length β€” min-length / max-length apply to the visible text (tags stripped), not the raw string.
  • Allowed characters β€” allowed-pattern (a regex) is checked against the visible text. Default ^[A-Za-z0-9_]+$.
  • Uniqueness β€” set unique: true to stop two players holding the same plain nick.
  • Allowed / forbidden tags β€” allowed-tags is the whitelist; forbidden-tags is always rejected.

Nicks come from players, so dNicks parses them with a restricted MiniMessage that only understands color, decoration, gradient and rainbow tags. Interactive/abusable tags β€” click, hover, insertion, font, selector, transition, obfuscated β€” are rejected with a clear error and can never be produced, even by an operator. A player can’t make their name run a command or show a fake tooltip.

See config.yml for every related setting, and Commands & Permissions for the full permission list.