NametagNinja v1.5

Hide the nametags when players aren't visible (behind a wall) without requiring them to sneak
  • NametagNinjaPluginCoverBBB.png
When you have multiple players on your server, their nametags are always visible through walls, and one has to sneak in order to hide his nametag. It is more realistic to display only nametags of those players which are visible and not hiding behind a wall. This plugin offers exactly that!


Requires PacketEvents API, please put it in your plugins folder aswell!



Features:

  • No invisible armorstands! The plugin is based on vanilla properties (team nametagVisibility for players and customNameVisible for entities)
  • Two modes: see nametags of visible players only or see nametag only of the player you're currently looking at
  • Option to prevent showing a nametag just by seeing the player's legs and not the head
  • Option to treat passable blocks, such as tall grass and cobwebs, as see-through or not
  • Works with both players and entities which have a custom name
  • Minimal impact on performance*
  • Toggleable option for spectators
  • Permission for administrators to bypass the plugin and see every player
  • Increase players' client FPS by reducing the amount of nametags visible on screen - video showcase below
  • Officially tested on Spigot
  • Backwards compatible, tested on 1.16.5, 1.19.4, 1.20.4, 1.20.6 and 1.21.5. Let me know if anything breaks on other versions. If using <1.17, make sure to use Java 17!
  • Compatible with NEZNAMY'S TAB plugin.
  • Compatible with Citizens2 plugin. Please contact me if any other similar nametag-related plugin interferes with mine and I'll try my best to fix it
Developer API

*wasn't tested on servers with more than 10 players

Requires Java 17 or newer! (it is the mandatory Java version for servers 1.17 - 1.20.4) If you're running a very old server, which is older than and cannot run on Java 17 and doesn't support it, please contact me via private message and I'll see what I can do. Who knows, maybe the incompatibility isn't huge and it's actually easy to add support for older version!


Permissions:
Server operators have all permissions enabled by default, unless explicitly set to false. In case of two contradictory permissions the one listed before is prioritized, so if for example someone has both bypass and blind, they will still see nametags, and blind won't have any effect.
  • nametagninja.reload - player can reload the plugin using /nnreload
  • nametagninja.bypass - player always sees every nametag regardless of anything
  • nametagninja.blind - player never sees any nametag regardless of anything
  • nametagninja.opignore - see below
  • nametagninja.alwaysvisible - other players will always see this player's nametag
  • nametagninja.alwayshidden - other players will never see this player's nametag
Regarding nametagninja.opignore: it is only checked for operators, so if a player is not op, this doesn't matter. As said above, operators by default have every permission, including this one. If it is set to true (the default behavior), then operators can be visible/hidden to others as usual. If you want to use this permission, you must set it to false for operators! The reason this permission exists is because otherwise operators will always have alwaysvisible and alwayshidden, and as a result, their nametag will always be visible, which is probably not what you wanted. If you want to use alwaysvisible or alwayshidden permission nodes, to account for operators, you must set opignore to false for every operator on your server, and then, depending on what you want, set the other permission to false too! So, if you want operators to have alwaysvisible, you don't have to change anything else, but if you want them to have alwayshidden, you must explicitly set alwaysvisible to false, because as listed above, alwaysvisible will be checked before alwayshidden, and if it turns out that the player has this permission (which, again, he will have because he is op), then alwayshidden would not matter.
The same is with nametagninja.blind - operators would have this true if it is not explicitly set to false, which would result in operators unable to see any nametag.
TL;DR: set default permissions (that are applied to everyone) nametagninja.opignore and nametagninja.blind to false



BuiltByBit's standard EULA:
You are allowed to decompile and make any modifications to the plugin only for personal usage, or purely exploring the code.
You are not allowed to resell the plugin, distribute to others or take credit for it.



See the plugin in action:





Configuration:
YAML:
#
# Players with the permission 'nametagninja.bypass' will always see everybody's nametag
# Make sure to run /nnreload (need 'nametagninja.reload' permission) to update the config!
# Remember to increase entity-tracking-range in spigot.yml (the setting tells at which
# distance will players begin to disappear from others)
#

# The plugin only works in these worlds. If empty, it will work in all worlds.
worlds: []

# If true, the player has to look directly at another player to see their nametag.
# For entities, this is vanilla behaviour when custom name visible is set to false.
only-direct-line-of-sight-mode: false

# Whether to include entities in the visibility check.
# Setting both values to false causes the plugin to effectively do nothing.
include-entities: true
include-players: true

# Ignore blocks such as tall grass, cobwebs, etc. when checking lines of sight.
ignore-passable-blocks: false

# Consider only upper body part of players when checking line of sight. If true, seeing only the
# legs of another player is not sufficient to see their nametag, the torso or head must be visible.
# This has no effect on entities other than players.
# This has no effect if only-direct-line-of-sight-mode is set to true.
ignore-player-legs: false

# Always show nametags of others to players in spectator mode.
# If this is false, spectators are treated like every other player; note that when a spectator
# is inside blocks, he technically sees non-spectators, but the plugin will not show nametags.
spectators-xray: true

# Specify a range (how much blocks in each direction). Every entity in that range is checked.
# Setting this to too low will cause noticeable inconsistencies in nametag visibility,
delta-x: 128
delta-y: 90
delta-z: 128

Latest reviews

Just wanna say this plugin is really good and if any issues arise support seemed really helpful and fast! it also works really well I chose to hide nametags completely
Buy a license now
Name a fair price:
EULA: Standard EULA
$
New: Now supporting cryptocurrency payments!
Share and earn
Refer this resource and earn a 20% commission.
927 Views
8 Purchases
10 Downloads
May 31, 2024 Published
May 27, 2025 Updated
5.00 star(s)
Average rating (1)
29.5 KB File size
Languages
  1. English
Includes DRM
No
Source access
Closed source & unobfuscated
Type
  1. Gameplay
Supported software
  1. Spigot
  1. Paper
Supported versions
  1. 1.21
  1. 1.20
  1. 1.19
  1. 1.18
  1. 1.17
  1. 1.16
Creator
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Recommended for you
A well decorated medieval-themed spawn adorned with a green-cyan-gray color palette
3.00 star(s) 1 ratings
2 purchases
#1 BuiltByBit Plugin ~ Protects your server from crash packet exploits ~ Folia Support
5.00 star(s) 118 ratings
3,204 purchases
The ultimate chat formatting and filtering plugin. Can replace 200+ plugins. Customizable & fast.
5.00 star(s) 120 ratings
2,511 purchases
All-in-one dungeon creator. Create unlimited, timed dungeon experiences with your own builds
4.50 star(s) 64 ratings
2,334 purchases
High Performance | Customizable | Cross-Version | GeyserMC | Folia Support
5.00 star(s) 59 ratings
2,272 purchases
Share and earn
Refer this resource and earn a 20% commission.
927 Views
8 Purchases
10 Downloads
May 31, 2024 Published
May 27, 2025 Updated
5.00 star(s)
Average rating (1)
29.5 KB File size
Languages
  1. English
Includes DRM
No
Source access
Closed source & unobfuscated
Type
  1. Gameplay
Supported software
  1. Spigot
  1. Paper
Supported versions
  1. 1.21
  1. 1.20
  1. 1.19
  1. 1.18
  1. 1.17
  1. 1.16
Creator
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Recommended for you
A well decorated medieval-themed spawn adorned with a green-cyan-gray color palette
3.00 star(s) 1 ratings
2 purchases
#1 BuiltByBit Plugin ~ Protects your server from crash packet exploits ~ Folia Support
5.00 star(s) 118 ratings
3,204 purchases
The ultimate chat formatting and filtering plugin. Can replace 200+ plugins. Customizable & fast.
5.00 star(s) 120 ratings
2,511 purchases
All-in-one dungeon creator. Create unlimited, timed dungeon experiences with your own builds
4.50 star(s) 64 ratings
2,334 purchases
High Performance | Customizable | Cross-Version | GeyserMC | Folia Support
5.00 star(s) 59 ratings
2,272 purchases
Top