Difference between revisions of "LimitedNametags"

From SupaHam
Jump to: navigation, search
(Added version 1.1 documentation.)
(Added General Usage section.)
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
=LimitedNametags=
 
 
LimitedNametags is a Bukkit plugin created by SupaHam, that adds the possibility to limit nametag view distance. It requires almost no setup, other than installing it and ProtocolLib in your server's plugins directory. Credit goes to [http://www.spigotmc.org/members/clippy.16503/ ''gsand''] AKA Clippy in the Spigot community for bringing this concept of a plugin to me.
 
LimitedNametags is a Bukkit plugin created by SupaHam, that adds the possibility to limit nametag view distance. It requires almost no setup, other than installing it and ProtocolLib in your server's plugins directory. Credit goes to [http://www.spigotmc.org/members/clippy.16503/ ''gsand''] AKA Clippy in the Spigot community for bringing this concept of a plugin to me.
  
==Commands==
+
You can purchase this plugin over at SpigotMC, [http://www.spigotmc.org/resources/4699/ click here].
 +
 
 +
=General Usage=
 +
The idea of LimitedNametags is to provide a unique experience from the basic minecraft mechanic of nametag rendering. Although this '''server-side''' plugin does not necessarily change the client code, it does how ever plug in to the server platform known as [http://www.spigotmc.org/ Spigot].
 +
 
 +
I first implemented this mechanic on [[MCBall|MCBall]] back in 2014 to replace the blank nametags. Blank nametags were made possible using 4 section signs as the player name (§§§§), leaving a little empty box above the player's head. Prior to that, all players were forced to sneak in order to hide nametags rendering behind walls, but that was just plain ugly and irritating. That just wasn't good enough, so after some research, I figured it out, and implemented the feature. Where you, as a player, couldn't see your opponent's nametags at all, but were able to see your teammates'. A few weeks ago, gsand reminded me of the idea, but with a radius based aspect, instead of "team" based, and here we are today, releasing LimitedNametags publicly. LimitedNametags can be used in many ways, not just a paintball server.
 +
 
 +
=Commands=
 
{{tip|text=Confused with command syntax or want to make the most out of them? Head over [[Commands|here]] for help.}}
 
{{tip|text=Confused with command syntax or want to make the most out of them? Head over [[Commands|here]] for help.}}
 
{| class="wiki-table"
 
{| class="wiki-table"
Line 14: Line 20:
 
|}
 
|}
  
==Configuration==
+
=Configuration=
 
{{tip|text=Before starting to mess around with a configuration file, please head over [[Configurations|here]] and familiarise yourself.}}
 
{{tip|text=Before starting to mess around with a configuration file, please head over [[Configurations|here]] and familiarise yourself.}}
 
LimitedNametags provides configurable options for the user to tweak the plugin just the way they like. The configuration is currently per world to allow the user to change the functionality to their liking.
 
LimitedNametags provides configurable options for the user to tweak the plugin just the way they like. The configuration is currently per world to allow the user to change the functionality to their liking.
===config.yml===
+
==config.yml==
 
{| class="wiki-table"
 
{| class="wiki-table"
 
! Configuration
 
! Configuration
Line 35: Line 41:
 
| {{since|1.1}} worlds.<world>.radius-groups.<groupName> || [[Configurations#Double|Double]] || This double specifies the radius of nametag visibility for players in this group. A radius group is applied to a player by giving them the permission node 'limitednametags.radius.<groupName>', where <groupName> is the same as this configuration key, except lowercased; meaning ABC would be abc. Please do not confuse this with group implementations provided by permission plugins.
 
| {{since|1.1}} worlds.<world>.radius-groups.<groupName> || [[Configurations#Double|Double]] || This double specifies the radius of nametag visibility for players in this group. A radius group is applied to a player by giving them the permission node 'limitednametags.radius.<groupName>', where <groupName> is the same as this configuration key, except lowercased; meaning ABC would be abc. Please do not confuse this with group implementations provided by permission plugins.
 
|-
 
|-
| worlds.<world>.team-name || [[Configurations#String|String]] || This string specifies the team name that manages the nametag visibility function. This is a technical feature that you as a user do not need to worry about unless told so.
+
| worlds.<world>.team-name || [[Configurations#String|String]] || This string specifies the team name that manages the nametag visibility function. This is a technical feature that you as a user do not need to worry about unless told so.  
|-
+
|
+
 
|}
 
|}
 +
 +
==Examples==
 +
{{example|title=Generic config.yml|text=
 +
<syntaxhighlight lang="yaml">
 +
worlds:
 +
  # Tell LimitedNametags to operate in a world named 'world'.
 +
  world:
 +
    # Whether to enable this world, this is provided as a convenient option instead of having to remove the whole world configuration.
 +
    enabled: true
 +
    # Permission based groups to check for each player, with the default always given to the player.
 +
    radius-groups:
 +
      # default group to give all players, with a nametag visibility radius of 10 meters/blocks. This is required and always needs to be defined.
 +
      default: 10.0
 +
      # vip group to give to players by giving them the permission 'limitednametags.radius.vip', with a nametag visibility radius of 20 meters/blocks.
 +
      vip: 20.0
 +
    # client team name, don't worry about this unless told to.
 +
    team-name: ltd-nt
 +
</syntaxhighlight>
 +
}}
 +
 +
{{example|title=Generic config.yml. Credits go to Gsand |text=
 +
<syntaxhighlight lang="yaml">
 +
worlds:
 +
  # Tell LimitedNametags to operate in all loaded worlds.
 +
  '*':
 +
    enabled: false
 +
    radius-groups:
 +
      default: 10.0
 +
      vip: 20.0
 +
    team-name: ltd-nt
 +
  # Tell LimitedNametags to operate in a world named 'world_the_end', and overwrite the default settings (asterisk configuration above).
 +
  'world_the_end':
 +
    enabled: true
 +
    radius-groups:
 +
      default: 5.0
 +
      vip: 8.0
 +
    team-name: ltd-nt
 +
  # Tell LimitedNametags to operate in a world named 'kitpvp', and overwrite the default settings (asterisk configuration above).
 +
  'kitpvp':
 +
    enabled: true
 +
    radius-groups:
 +
      default: 16.0
 +
      vip: 20.0
 +
    team-name: ltd-nt
 +
</syntaxhighlight>
 +
}}

Latest revision as of 20:52, 24 March 2015

LimitedNametags is a Bukkit plugin created by SupaHam, that adds the possibility to limit nametag view distance. It requires almost no setup, other than installing it and ProtocolLib in your server's plugins directory. Credit goes to gsand AKA Clippy in the Spigot community for bringing this concept of a plugin to me.

You can purchase this plugin over at SpigotMC, click here.

General Usage

The idea of LimitedNametags is to provide a unique experience from the basic minecraft mechanic of nametag rendering. Although this server-side plugin does not necessarily change the client code, it does how ever plug in to the server platform known as Spigot.

I first implemented this mechanic on MCBall back in 2014 to replace the blank nametags. Blank nametags were made possible using 4 section signs as the player name (§§§§), leaving a little empty box above the player's head. Prior to that, all players were forced to sneak in order to hide nametags rendering behind walls, but that was just plain ugly and irritating. That just wasn't good enough, so after some research, I figured it out, and implemented the feature. Where you, as a player, couldn't see your opponent's nametags at all, but were able to see your teammates'. A few weeks ago, gsand reminded me of the idea, but with a radius based aspect, instead of "team" based, and here we are today, releasing LimitedNametags publicly. LimitedNametags can be used in many ways, not just a paintball server.

Commands

Tip: Confused with command syntax or want to make the most out of them? Head over here for help.
Parent Command Permission Aliases Description
limitednametags limitednametags.cmd.reload lt Reloads the LimitedNametags configuration file and refreshes all online players.

Configuration

Tip: Before starting to mess around with a configuration file, please head over here and familiarise yourself.

LimitedNametags provides configurable options for the user to tweak the plugin just the way they like. The configuration is currently per world to allow the user to change the functionality to their liking.

config.yml

Configuration Value Description
worlds Section This section contains a list of world names that LimitedNametags should operate in.
worlds.<world> Section This section is named after a specific existing world that LimitedNametags should operate in. Use '*' (asterisk) to refer to all worlds.
worlds.<world>.enabled Boolean This boolean specifies whether LimitedNametags should use this world. This is simply a convenient method of telling the plugin to not use <world> without the user actually deleting the data.
(OUTDATED) worlds.<world>.nametag-radius Double This double specifies the view distance (in block units) that players should be able to see each other's nametags.
Since v1.1 worlds.<world>.radius-groups Section This section specifies the radius groups used to default what radius a player gets based on their permission. If they don't have permission to any of the groups, LimitedNametags will fallback to the group called default, thus the default group must always be defined!
Since v1.1 worlds.<world>.radius-groups.<groupName> Double This double specifies the radius of nametag visibility for players in this group. A radius group is applied to a player by giving them the permission node 'limitednametags.radius.<groupName>', where <groupName> is the same as this configuration key, except lowercased; meaning ABC would be abc. Please do not confuse this with group implementations provided by permission plugins.
worlds.<world>.team-name String This string specifies the team name that manages the nametag visibility function. This is a technical feature that you as a user do not need to worry about unless told so.

Examples

Example: Generic config.yml
worlds:
  # Tell LimitedNametags to operate in a world named 'world'.
  world:
    # Whether to enable this world, this is provided as a convenient option instead of having to remove the whole world configuration.
    enabled: true
    # Permission based groups to check for each player, with the default always given to the player.
    radius-groups:
      # default group to give all players, with a nametag visibility radius of 10 meters/blocks. This is required and always needs to be defined.
      default: 10.0
      # vip group to give to players by giving them the permission 'limitednametags.radius.vip', with a nametag visibility radius of 20 meters/blocks.
      vip: 20.0
    # client team name, don't worry about this unless told to.
    team-name: ltd-nt
Example: Generic config.yml. Credits go to Gsand
worlds:
  # Tell LimitedNametags to operate in all loaded worlds.
  '*':
    enabled: false
    radius-groups:
      default: 10.0
      vip: 20.0
    team-name: ltd-nt
  # Tell LimitedNametags to operate in a world named 'world_the_end', and overwrite the default settings (asterisk configuration above).
  'world_the_end':
    enabled: true
    radius-groups:
      default: 5.0
      vip: 8.0
    team-name: ltd-nt
  # Tell LimitedNametags to operate in a world named 'kitpvp', and overwrite the default settings (asterisk configuration above).
  'kitpvp':
    enabled: true
    radius-groups:
      default: 16.0
      vip: 20.0
    team-name: ltd-nt