NetworkNick is a lightweight, network-aware nickname plugin for Paper and Spigot that provides persistent, Redis-backed nicknames with full support for PlaceholderAPI, LuckPerms, and modern multi-server environments.
Designed for modern servers and proxy networks, NetworkNick focuses on correctness, timing, and compatibility — ensuring nicknames apply before join messages, sync instantly across servers, and respect offline permissions.
1.0.2
- Fixed tablist issue with TAB
NetworkNick allows players to set nicknames that:
- Persist across restarts and reconnects
- Synchronize instantly across multiple backend servers
- Appear correctly in join messages, chat, TAB, and scoreboards
- Respect permissions, formatting rules, and offline exemptions
The plugin is built around a Redis source of truth, with careful handling of join timing to ensure %player_displayname% always reflects the correct nickname.
- Set custom nicknames with
/nick - Supports legacy color codes (
&a) and hex colors (&#RRGGBB) - Optional formatting permissions (
&l,&o,&k, etc.) - Safe length enforcement (3–16 visible characters)
/hideobfuscates your name using&k/unhiderestores your previous nickname or real name- Prior nicknames are stored safely and restored correctly
- Redis-backed nickname storage
- Real-time updates across all servers
- Automatic re-application on join, reload, and reconnect
- Nicknames are fetched before login completes
- Applied at LOWEST join priority
- Ensures join messages using
%player_displayname%show the nickname, not the real name
networknick.exemptprevents other players from changing or unhiding your nickname- Uses the LuckPerms API to check permissions even when the player is offline
- Safe asynchronous handling (no main-thread blocking)
- Optional short-term enforcement to beat late plugin overrides
- Protects against plugins that reset display names after join
- PlaceholderAPI integration
- Custom placeholders for network-aware name handling
- Java 21
- Paper or Spigot 1.20+
- Redis server (required)
- Optional but recommended: LuckPerms
- Optional: PlaceholderAPI
- Download
NetworkNick-1.0.0.jar - Place it in your server’s
plugins/directory - Start the server
- Configure permissions (LuckPerms recommended)
- Restart or run
/networknick reload
Recommended for Velocity or BungeeCord environments.
Requirements
- Shared Redis instance
- Identical plugin configuration across all backend servers
Steps
- Configure Redis connectivity
- Ensure all backend servers connect to the same Redis instance
- Restart all servers
What you get
- Network-wide nicknames
- Instant synchronization across servers
- Consistent join messages everywhere
Redis acts as the source of truth
Local caches are ephemeral and safe
| Command | Description | Permission |
|---|---|---|
/nick <name> |
Set your nickname | networknick.nick |
/nick off |
Clear your nickname | networknick.nick.clear |
/hide |
Hide your name | networknick.hide |
/unhide |
Restore your name | networknick.unhide |
| Command | Description | Permission |
|---|---|---|
/nick <player> <name> |
Set another player’s nickname | networknick.nick.others |
/nick <player> off |
Clear another player’s nickname | networknick.nick.others.clear |
/unhide <player> |
Unhide another player | networknick.unhide.others |
/networknick reload |
Reload config and Redis | networknick.reload |
| Permission | Description | Default |
|---|---|---|
networknick.nick |
Use /nick |
op |
networknick.nick.clear |
Clear own nickname | op |
networknick.hide |
Use /hide |
op |
networknick.unhide |
Use /unhide |
op |
| Permission | Description |
|---|---|
networknick.nick.others |
Set others’ nicknames |
networknick.nick.others.clear |
Clear others’ nicknames |
networknick.unhide.others |
Unhide others |
| Permission | Description |
|---|---|
networknick.nick.colors |
Color and hex codes |
networknick.nick.format.k |
Obfuscated |
networknick.nick.format.l |
Bold |
networknick.nick.format.m |
Strikethrough |
networknick.nick.format.n |
Underline |
networknick.nick.format.o |
Italic |
networknick.nick.format.r |
Reset |
| Permission | Description |
|---|---|
networknick.exempt |
Prevent others from changing or unhiding your nickname |
| Placeholder | Description |
|---|---|
%networknick_name% |
Visible nickname (or real name) |
%networknick_unhidden% |
Real name or prior nickname |
%networknick_hidden% |
true or false |
Note: %player_displayname% will also reflect the nickname, as NetworkNick applies it before join messages are processed. Just make sure if you're using essentials you have change-displayname set to false in their config.
- None currently. Open to suggestions
Licensed under the Apache License, Version 2.0
See LICENSE for details.
Developed by Chumbucket
Built for the Chumbucket Network
https://www.chumbucket.net
© 2025 Chumbucket — Apache-2.0 License