BetterNick Wiki
-
BetterNick Wiki1. Installation:
1.1: How to use BetterNick on a single Spigot/Bukkit/Sponge server:2. The config.yml:
1. Install the "BetterNick 1.8.3 - 1.12.2.jar" or the "BetterNick 1.13.X.jar" on your server
2. Enable "Config.Nick On Join" in the config.yml if you want to get a nickname on join (if the player enabled autonick) or disable it if you don't want to get a nickname on join (if the player enabled autonick)
3. Set "MySQL.Enabled" to true if you want to save the data in a MySQL database or set it to false to save the data in a local file (slower)
3.1. Set up the MySQL connection by specifying username, password, database, host and port in the config.yml at "MySQL"
1.2: How to use BetterNick on a BungeeCord network:
Don't install the "BetterNick.jar" in your BungeeCord plugins folder! Always in the gameserver's plugins folder!
1. Install the "BetterNick 1.8.3 - 1.12.2.jar" or the "BetterNick 1.13.X.jar" on your gameserver(s)
2. Disable "Config.Nick On Join" in the config.yml on your Lobbyserver(s)
3. Set "Addons.AutoNick Item.Enabled" to true in the config.yml on your Lobbyserver(s)
4. Set "MySQL.Enabled" in the config.yml to true and set up the MySQL connection by specifying username, password, database, host and port in the config.yml at "MySQL" on all gameserver(s)
- The default file can be found here
Code (Text):Config:
# If true, the plugin automaticly compares the plugin version with the version on spigotmc.org
Auto Update Check: true
# If true, the plugin automaticly downloads the newest plugin version from spigotmc.org if an update is available
Auto Update Download: true
# If true, the plugin will send some stats to bStats (https://bstats.org/plugin/bukkit/BetterNick)
Send Metrics: true
# If true, all commands and listeners will be disabled that you can make your one ones
API Mode: false
# If true, you will get a nickname on join if the client enabled AutoJoin
Nick on Join: true
# If true, the player can see their own new skin
Skin Self Update: true
# If true, the player will get an actionbar message while nicked
Nicked Actionbar: true
# If true, you will get a nickname and a skin on /nick; disabled this if your server runs in offline mode to only get a nickname
Nick And Skin Combination: true
Code (Text):MySQL:
# If true, the plugin will connect to the MySQL database
Enabled: false
Username: root
Password: password
Database: nicknames
Host: localhost
Port: '3306'Code (Text):Nick Options:
# Use this to change the prefix of the nametag of a player. If NametagEdit or ColoredTags is installed you can use longer prefixes than 2 chars, otherwise you should leave it empty for optimal experience
Nametag Prefix: ''
# Use this to change the suffix of the nametag of a player. If NametagEdit or ColoredTags is installed you can use this, otherwise leave it empty
Nametag Suffix: ''
# Use this to change the prefix in the chat of a player. If Vault and a Vault compatible chat plugin is installed you can use this, otherwise leave it empty
Chat Prefix: ''
# Use this to change the suffix in the chat of a player. If Vault and a Vault compatible chat plugin is installed you can use this, otherwise leave it empty
Chat Suffix: ''
# Use this to change the prefix of the displayname of a player. Not recommended to do
Displayname Prefix: ''
# Use this to change the suffix of the displayname of a player. Not recommended to do
Displayname Suffix: ''
# Use this to change the prefix of the tablistname of a player.
Tablist Prefix: ''
# Use this to change the suffix of the tablistname of a player.
Tablist Suffix: ''Code (Text):Addons:
Nick Options Item:
# If true, this addon is active
Enabled: false
# If true, the player with the right permission will get an item to enable/disable autonick on join
Get On Server Join: true
# If the player joins into one of these specified worlds, the player will get an item to enable/disable autonick
Get On World Change:
- world
# In these specified worlds you can use the item
Enabled Worlds:
- world
# ID:SubID, Displayname, Slot
Item: 421:0, &5Nick Tool, 4
# If true, the player can move the item in their inventory
Item Moveable: false
Inventory:
# The title of the inventory
Name: '&8[&5BetterNick&8] &5AutoNick'
# ID:SubID, Displayname, Slot (has to be the same slot as at "Addons.AutoNick Item.Inventory.AutoNick False")
AutoNick True: 348:0, &7AutoNick &8>> &2TRUE, 3
# ID:SubID, Displayname, Slot (has to be the same slot as at "Addons.AutoNick Item.Inventory.AutoNick True")
AutoNick False: 289:0, &7AutoNick &8>> &cFALSE, 3
# ID:SubID, Displayname, Slot (has to be the same slot as at "Addons.Nick Options Item.Inventory.KeepNick False")
KeepNick True: 348:0, &7KeepNick &8>> &2TRUE, 5
# ID:SubID, Displayname, Slot (has to be the same slot as at "Addons.Nick Options Item.Inventory.KeepNick True")
KeepNick False: 289:0, &7KeepNick &8>> &cFALSE, 5
Random Nick Gui:
# If true, this addon is active
Enabled: false
Inventory:
# The title of the inventory
Name: '&5Random Nicks'
# Only change the colorcode. Don't add anything else
Nick Item Name: '&5[NAME]'
Nick Item Lore: '&7Click to set a new nickname.'
3. Advanced features with 3rd party plugins:
3.1. Longer Nametags with NametagEdit or ColoredTags:4. Developer API
- with one of these plugins you can set "Nick Options.Nametag Prefix" in the config.yml to a longer prefix than to one with only two chars
- with one of these plugins you can set up a Nametag Suffix at "Nick Options.Nametag Suffix" in the config.myl
3.2. Chat Prefix and Suffix:
- You can use Vault and a Vault compatible Chat plugin
- Alternative option: Using a Chat plugin that supports PlaceholderAPI, but Vault is required, too (kinda useless, but if you want to access prefix, nickname and suffix without the BetterNick API but with PlaceholderAPI you can do it that way)
3.2.1. Using Vault & any chat plugin:
Use
- '{NICKPREFIX}' for the prefix of a player
- '{NICKSUFFIX}' for the suffix
- '{NICKNAME}' for the name of a player
- '{REALNAME}' for the real name of a player
3.2.2. Using Vault & a (chat) plugin compatible with PlaceholderAPI:
Use
- '%betternick_prefix%' for the prefix of a player
- '%betternick_suffix%' for the suffix
- '%betternick_name%' for the name of a player
- '%betternick_realname%' for the real name of a player
4.1. BetterNick API:
- The full BetterNickAPI can be found here
- To access the BetterNickAPI your main class should contain this:
Code (Text):public static BetterNickAPI api;
@Override
public void onEnable() {
if(Bukkit.getPluginManager().getPlugin("BetterNick") != null) {
api = BetterNick.getApi();
}
}
Code (Text):@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
Player player = (Player) sender;
if(args.length == 0) {
api.setRandomPlayerNickName(player, nametagprefix, nametagsuffix);
api.setPlayerChatName(player, api.getNickName(player), chatprefix, chatsuffix);
api.setPlayerDisplayName(player, api.getNickName(player), displaynameprefix, displaynamesuffix);
api.setPlayerTablistName(player, api.getNickName(player), tablistprefix, tablistsuffix);
api.setRandomPlayerSkin(player);
} else if(args.length == 1) {
String nickname = args[0];
api.setPlayerNickName(player, nickname, nametagprefix, nametagsuffix);
api.setPlayerChatName(player, api.getNickName(player), chatprefix, chatsuffix);
api.setPlayerDisplayName(player, api.getNickName(player), displaynameprefix, displaynamesuffix);
api.setPlayerTablistName(player, api.getNickName(player), tablistprefix, tablistsuffix);
api.setRandomPlayerSkin(player);
}
}
Code (Text):@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
Player player = (Player) sender;
if(args.length == 0) {
api.setRandomPlayerSkin(player);
} else if(args.length == 1) {
String skin = args[0];
api.setPlayerSkin(player, skin);
}
}
Code (Text):@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
Player player = (Player) sender; if(args.length == 0) {
for(Player nps : api.getNickedPlayers()) {
player.sendMessage(api.getNickName(nps) + " -> " + api.getRealName(nps));
}
}
}
Code (Text):@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
Player player = (Player) sender;
if(args.length == 0) {
if(api.isPlayerNicked(player)) {
api.resetPlayerNickName(player);
api.resetPlayerDisplayName(player);
api.resetPlayerTablistName(player);
api.resetPlayerChatName(player);
}
api.resetPlayerSkin(player);
api.removeNickedPlayer(p);
}
}
4.2. BetterNick Events:
- All events can be found here
- More examples can be found here
- To create a /nick [name] command you could use this example (IMPORTANT: Keep this order of the methods):
Code (Text):@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
Player player = (Player) sender;
if(args.length == 0) {
Bukkit.getPluginManager().callEvent(new PlayerCallRandomNickEvent(p));
Bukkit.getPluginManager().callEvent(new PlayerCallRandomSkinEvent(p));
} else if(args.length == 1) {
String nickname = args[0];
Bukkit.getPluginManager().callEvent(new PlayerCallNickEvent(p, nickname));
}
}Code (Text):@EventHandler
public void onPlayerCallNick(PlayerCallNickEvent e) {
e.setNickName(e.getNickName(), nametagprefix, nametagsuffix);
e.setPlayerChatName(e.getNickName(), chatprefix, chatsuffix);
e.setPlayerDisplayName(e.getNickName(), displaynameprefix, displaynamesuffix);
e.setPlayerTablistName(e.getNickName(), tablistprefix, tablistsuffix);
}
@EventHandler
public void onPlayerCallRandomNick(PlayerCallRandomNickEvent e) {
e.setRandomNickName(nametagprefix, nametagsuffix);
e.setPlayerChatName(e.getNickName(), chatprefix, chatsuffix);
e.setPlayerDisplayName(e.getNickName(), displaynameprefix, displaynamesuffix);
e.setPlayerTablistName(e.getNickName(), tablistprefix, tablistsuffix);
}
@EventHandler
public void onPlayerNick(PlayerNickEvent e) {
e.setNickMessage(message);
e.stopNickActionbarMessage();
e.setNickActionbarMessage(message);
}
@EventHandler
public void onPlayerCallRandomSkin(PlayerCallRandomSkinEvent e) {
e.setRandomSkin();
}
@EventHandler
public void onPlayerSkinSetEvent(PlayerSkinSetEvent e) {
e.setSkinSetMessage(message);
}
Code (Text):@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
Player player = (Player) sender;
if(args.length == 0) {
if(api.isPlayerNicked(player)) {
Bukkit.getPluginManager().callEvent(new PlayerCallUnnickEvent(p));
}
Bukkit.getPluginManager().callEvent(new PlayerCallSkinResetEvent(p));
BetterNickAPI.getApi().removeNickedPlayer(p);
}
}Code (Text):@EventHandler
public void onPlayerCallUnnick(PlayerCallUnnickEvent e) {
e.resetPlayerNickName();
e.resetPlayerDisplayName();
e.resetPlayerTablistName();
e.resetPlayerChatName();
}
@EventHandler
public void onPlayerUnnick(PlayerUnnickEvent e) {
e.setUnNickMessage(message);
e.stopNickActionbarMessage();
}
@EventHandler
public void onPlayerCallSkinReset(PlayerCallSkinResetEvent e) {
e.resetSkin();
}
@EventHandler
public void onPlayerResetSkin(PlayerSkinResetEvent e) {
e.setSkinResetMessage(message);
} - Loading...
- Loading...
XenCarta PRO
© Jason Axelrod from 8WAYRUN.COM