Compatibility
Minecraft: Java Edition
1.21.x
1.20.x
1.19.4
Platforms
Links
Tags
Creators
Details
Licensed Apache-2.0
Published 3 months ago

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


