
ModernTags
Highly customizable nametags above players for all client versions
- Загрузки
- 203
- Подписчики
- 1
- Обновлён
- 23 мая 2026 г.
- Лицензия
- Apache-2.0
Опубликован 15 февраля 2026 г.

Text description
ModernTags 2.0
A modern plugin for displaying custom tags above player heads
✨ Features
| 🎨 Full Customization | Configure tag appearance: color, shadows, transparency, alignment, size and more |
| 🎬 Animated Tags | Support for multiple frames with configurable animation speed |
| 🖥️ Dual Renderer | Text Display entities for 1.19.4+ clients, Scoreboard Teams for older ones — picked automatically per viewer |
| 🔀 Condition System | owner-conditions and viewer-conditions let you select the right tag group with arbitrary logic |
| 🏆 Priority System | Tag groups and entries are sorted by priority; the highest-priority match wins |
| 👁️ Viewer-Aware Placeholders | {owner:key} and {viewer:key} let you show different content depending on who is looking |
| 📌 PlaceholderAPI | Any PAPI placeholder works out of the box |
| 👑 Vault Integration | Automatic insertion of prefixes and suffixes from permission systems |
| 🫥 Sneak Dimming | Tags fade for crouching players on 1.19.4+ clients, matching vanilla behavior |
| 🔗 TAB Compatibility | ModernTags manages Scoreboard Teams internally — no need to disable TAB's nametag display |
⚡ Technical Advantages
The plugin is built on PacketEvents — all rendering is done through packets, not Bukkit APIs.
Component building via GikyMessage reduces allocations and speeds up placeholder replacement.
Fully supports Folia and all Paper forks (Paper, Purpur, etc.).
🔧 Configuration Example
# config.yml
tags:
- priority: 0
entries:
- priority: 0
modern: tags/default.yml:<root>
legacy: tags/default-legacy.yml:<root>
- priority: 1
owner-conditions: "hasPermission('moderntags.tag.vip')"
entries:
- priority: 0
modern: tags/vip.yml:modern
legacy: tags/vip.yml:legacy
# tags/default.yml (modern — Text Display, 1.19.4+)
frame-update-rate: -1
placeholders-update-rate: 10
frames:
- text: |-
{owner:prefix}&r{owner:name}{owner:suffix}
&c❤&f{owner:health}
shadowed: true
y-offset: 0.15
background-color: "#00000000"
# tags/default-legacy.yml (legacy — Scoreboard Teams, below 1.19.4)
frame-update-rate: -1
placeholders-update-rate: 10
preserve-player-name-color: true
frames:
- prefix: "{owner:prefix}"
name-color: "white"
suffix: "{owner:suffix}"
💬 Commands & Permissions
Commands
/moderntags reload— reload plugin configuration Permissionsmoderntags.see.own— visibility of own tagmoderntags.reload— access to reload command
📦 Dependencies
Required:
- PacketEvents 2.0+ Optional:
- PlaceholderAPI
- Vault
Ченджлог
2.0.0Релиз1.20.4, 1.20.5, 1.20.6 · 23 мая 2026 г.
ModernTags 2.0 — Major Update
⚠️ The configuration has been completely reworked and is not compatible with the previous version. Delete your old config and set up the plugin from scratch using the updated documentation.
This is the biggest update to ModernTags since its initial release. Version 2.0 introduces support for all client versions, a flexible condition system, and significantly improved compatibility with other plugins.
What's new
Support for clients below 1.19.4
A second renderer based on Scoreboard Teams has been added. The plugin automatically picks the right rendering method for each individual viewer — Text Display for 1.19.4+ clients, Scoreboard Teams for older ones. Tags are now visible to every player on the server regardless of their client version.
TAB compatibility
ModernTags 2.0 manages Scoreboard Teams internally, so you no longer need to disable TAB's nametag display to avoid conflicts.
Tags in separate files
Tags are now defined in individual files referenced from config.yml. Each file can contain both a modern and a legacy section for the respective renderers.
Condition system
The old permission-based tag selection (moderntags.tag.<name>) has been replaced by owner-conditions and viewer-conditions — flexible expressions that give you full control over which tag group is applied. Example: hasPermission('moderntags.tag.vip').
Viewer context in placeholders
The placeholder syntax has changed from <placeholder:key> to {owner:key} and {viewer:key}. This allows you to display different tag content depending on who is looking at the player.
Sneak dimming
On 1.19.4+ clients, tags now fade when the owner is crouching, matching vanilla Minecraft behavior.
Permission changes
moderntags.tag.<name> (auto-generated) and moderntags.see.other have been removed. Tag selection logic is now fully handled by the condition system.
1.0.0Релиз1.21.9, 1.21.10, 1.21.11 · 15 февраля 2026 г.
Release
Комментарии
Загружаем…