DeluxeTags icon

DeluxeTags -----

Permission-based tags made easy




1.8.2

Hello!

This is a community provided update that adds and fixes a whole host of features. Read below for more information.

Additions:
- Added 1.16.x, 1.17.x and 1.18.x support.
- Added hex/rgb colors support. It comes in 2 formats: #aaFF00 aka Standard and &#aaFF00 aka Legacy. (You can toggle between the 2 in config.yml where you'll find the legacy_hex option)
- Added new commands:
- /tags setdisplay <identfier> <display> - Change the display of a tag. (the display is what %deluxetags_tag% returns)
- /tags setorder <identifier> <order> - Change the order of a tag.
- Added new permissions:
- deluxetags.see.<identifier> and deluxetags.see.all which allows users to see the tag(s) in the gui but not be able to select them unless they also have the standard deluxetags.tag.<identifier> permission.
- deluxetags.setdisplay gives access to the new /tags setdisplay <identifier> <permission> command.
- deluxetags.setorder gives access to the new /tags setorder <identifier> <order> command.
- Added new internal placeholders (internal placeholders can be used anywhere inside the tags gui):
- %deluxetags_available% - Will tell the player if they have access to a tag or not (this is basically an addition to the deluxetags.see.<identifier> permission). The output can be changed in messages.yml.
- %previous_page% - Will return the number of the previous gui page if there is any and an empty string otherwise.
- %current_page% - Will return the number of the current gui page.
- %next_page% - Will return the number of the next gui page if there is any and an empty string otherwise.
- Added new PlaceholderAPI placeholders:
- %deluxetags_order% - Shows the order of the tag you currently have selected.
- %deluxetags_order_<identifier>% - Shows the order of a tag based on its identifier.
- Added an internal PlaceholderAPI expansion. This means that downloading one from the ecloud (with /papi ecloud download deluxetags) is no longer required. Please read the observation at the end!
- Added config options for the next and previous page items. Now they're both customizable.


Fixes:
- Fixed tag descriptions not supporting multiple lines. Now that option can take in a list of strings.
- Fixed usage of System#print instead of the logger provided by the server.
- Fixed orders. They are now way smarter. When you create a new tag using the internal command, it will find the first available order.
- Fixed internal placeholders requiring {} or %% depending on the chat plugin you use. Now you can use any of the 2 inside your menus. (Example: Both %deluxetags_identifier% and {deluxetags_identifier} work inside the gui. Attention those are not PlaceholderAPI placeholders! Those are internal placeholders!)

Messages:
- A few new messages were added to messages.yml. You have to either reset the messages.yml file or add them yourself to make them configurable. Here's the list: https://paste.helpch.at/dabuxazesu.apache

Observations:
- Since the external PlaceholderAPI expansion is not needed anymore, if you have PlaceholderAPI installed go to plugins/PlaceholderAPI/expansions and make sure you don't have any Expansion-Deluxetag.jars in there. If you do, delete them and execute /papi reload.
- For the developers that are hooking directly into DeluxeTags, a lot of internal changes were made!

Thanks to everyone who worked on this update including:
BlitzOffline#0531 & Glare#8499

For support and feedback please join our Discord:
https://discord.gg/helpchat
----------, Jan 7, 2022

1.8.1

Fixed an issue where the GUI from /tags does not work correctly when not using DeluxeChat. Thanks to @ItsMeGlare for pointing out the issue and fixing it.
----------, Apr 1, 2020

1.8.0

This version adds support to use PAPI placeholders in your tags.

Added config option to load tag on join rather than first time they chat.
Code (YAML):
load_tag_on_join : true
----------, Mar 22, 2020

1.7.1

Added ability to modify the chat format directly from DeluxeTags:
[​IMG]

This may (or may not) add compatibility with some other chat formatting plugins (not sure....).

This WILL add stand alone compatibility if you do not have a chat formatting plugin.

This option can only be changed on startup.
----------, Feb 15, 2016

1.7

This version now allows full customization of the GUI and all messages even when DeluxeChat is not used.

Added config option to enable DeluxeChat integration. DeluxeChat will now handle obtaining placeholders to prevent plugin load order issues.

If you do not use DeluxeChat, you MUST set deluxe_chat: false in your DeluxeTags config in order for the vanilla chat listener to be registered!


1.7 CONFIG

Code (Text):
# DeluxeTags version: 1.7 Main Configuration
#
# Create your tags using the following format:
#
# deluxetags:
#   VIP:
#     order: 1
#     tag: '&7[&eVIP&7]'
#     description: 'This tag is awarded by getting VIP'
#
# Placeholders for your DeluxeChat formats config:
#
# %deluxetags_identifier% - display the players active tag identifier
# %deluxetags_tag% - display the players active tag
# %deluxetags_description% - display the players active tag description
# %deluxetags_amount% - display the amount of tags a player has access to
#
# Placeholders for your essentials/chat handling formats config:
#
# {deluxetags_identifier} - display the players active tag identifier
# {deluxetags_tag} - display the players active tag
# {deluxetags_description} - display the players active tag description
# {deluxetags_amount} - display the amount of tags a player has access to
force_tags: false
check_updates: true
deluxe_chat: true
gui:
  name: '&aAvailable tags&7: &f%deluxetags_amount%'
  tag_select_item:
    material: NAME_TAG
    data: 0
    displayname: '%deluxetags_identifier%'
    lore:
    - '%deluxetags_tag%'
    - '%deluxetags_description%'
  divider_item:
    material: STAINED_GLASS_PANE
    data: 11
    displayname: '&bYou can customize this GUI!'
    lore:
    - '&7When DeluxeChat is installed!'
  has_tag_item:
    material: SKULL_ITEM
    data: 2
    displayname: '&eCurrent tag&f: &6%deluxetags_identifier%'
    lore:
    - '%deluxetags_tag%'
    - Click to remove your current tag
  no_tag_item:
    material: SKULL_ITEM
    data: 3
    displayname: '&cYou don''t have a tag set!'
    lore:
    - '&7Click a tag above to select one!'
  exit_item:
    material: IRON_DOOR
    data: 0
    displayname: '&cClick to exit'
    lore:
    - '&7Exit the tags menu'
deluxetags:
  example:
    tag: '&8[&bDeluxeTags&8]'
    description: '&aAwarded for using the most awesome chat tags plugin!'
    order: 1
1.7 messages.yml
Code (Text):
# DeluxeTags messages.yml
# Edit the plugin messages to your liking!
cmd:
  no_permission: '&cYou don''t have &7{0} &cto do that!'
  target_not_online: '&f{0} &cis not online!'
  no_tags_loaded: '&cThere are no tags loaded!'
  no_tags_available: ''
  no_tags_available_target: '&f{0} &cdon''t have any tags available!'
  tags_list: '&f{0} &aavailable tags: &f{1}'
  tags_list_all: '&f{0} &atotal tags loaded: &f{1}'
  tags_list_others: '&f{0} &ahas &f{1} &atotal tags loaded: &f{2}'
  tag_select_incorrect_usage: '&cIncorrect usage! &7/tags select <tagname>'
  tag_select_success: '&7Your tag was set to: &r{1}'
  tag_select_invalid_name: '&f{0} &cis not a valid tag name!'
  tag_select_already_set: '&f{0} &cis already set as your current tag!'
  help_title: '&5&lDeluxeTags &f&oHelp'
  help_color: '&8> &d&l'
  help_tags: '&f&oOpen your tags GUI'
  help_list: '&f&oView tags available to you'
  help_select: '&f&oSelect a tag as your active tag'
  help_admin_set: '&f&oSet a players tag'
  help_admin_clear: '&f&oClear a players tag'
  help_admin_create: '&f&oCreate a new tag'
  help_admin_delete: '&f&oDelete an existing tag'
  help_admin_setdesc: '&f&oSet a description for a tag'
  help_version: '&f&oView DeluxeTags version and author information'
  help_reload: '&f&oReload the tags config'
  admin_set_incorrect_usage: '&cIncorrect usage! &7/tags set <player> <tag>'
  admin_set_no_tags_avail: '&f{0} &cdoesn''t have any tags available!'
  admin_set_success: '&f{0}s &atag has been set to: {1} &7({2}&7)'
  admin_set_success_to_target: '&7Your tag has been set to &f{1} &aby &f{2}'
  admin_set_success_fail: '&f{0} &cis not a valid tag for &f{1}&c!'
  admin_clear_incorrect_usage: '&cIncorrect usage! &7/tags clear <player>'
  admin_clear_no_tag_set: '&f{0} &cdoesn''t have a tag set!'
  admin_clear_success: '&f{0}s &atag has been cleared!'
  admin_clear_success_to_target: '&7Your tag has been cleared &aby &f{0}'
  admin_create_tag_incorrect_usage: '&cIncorrect usage! &7/tags create <identifier>
    <tag>'
  admin_create_tag_success: '&aTag created&7: &f{0}&7:&f{1}'
  admin_create_tag_fail: '&f{0} &cis already a loaded tag name!'
  admin_delete_tag_incorrect_usage: '&cIncorrect usage! &7/tags delete <identifier>'
  admin_delete_tag_success: '&7Tag &f{0} &7has been deleted!'
  admin_delete_tag_fail: '&f{0} &cis not a loaded tag name!'
  admin_set_description_incorrect_usage: '&cIncorrect usage! &7/tags setdesc <identifier>
    <description>'
  admin_set_description_success: '{0} &adescription set to &7: &f{2}'
  admin_set_description_fail: '&f{0} &cis not a loaded tag name!'
  admin_reload: '&aConfiguration successfully reloaded! &f{0} &atags loaded!'
  incorrect_usage: '&cIncorrect usage! Use &7/tags help'
gui:
  tag_selected: '&aYour tag has been set to &f{0} &7({1}&7)'
  tag_disabled: '&7Your tag has been disabled!'
  page_error: '&cThere was a problem getting the previous page number!'
----------, May 31, 2015

1.6.2

Added event listener to prevent DeluxeTags placeholders from being unloaded when DeluxeChat unloads all placeholders when /dchat reload true is executed.

This version is only compatible with DeluxeChat 1.5.6-beta or higher!
----------, May 25, 2015

1.6.1

Changed "force_tags_on_join" config option to "force_tags" as it now sets the forced tag when a player chats to prevent tags not updating when a player moves ranks.

If using the "force_tags" system. Players who are not op will no longer be able to select an active tag themselves. The forced tag will always be applied on chat.
----------, May 12, 2015

1.6

Added new config option to force a tag on join based on the highest priority tag a player has "force permission" for.
[​IMG]

To apply a force tag to players when they join, they must have the permission node deluxetags.forcetag.<tag_identifier>

The highest priority tag (order) will always be applied if a player has permission for multiple tags to be forced.

Just a note, this force system will only work for players who are not Op. Op players will have tags applied normally (pre 1.6) if the force_tags system is enabled.
----------, May 12, 2015

This should absolutely be the correct version that I attempted to upload 2 times. I am not sure where the problem was but somehow the same version was uploaded twice and the updated version sat on my desktop.
----------, Mar 31, 2015

I uploaded the wrong file yesterday not realizing it.
If you check your version in game you will see yesterdays version is still 1.5.1

I had 2 DeluxeTags jars in separate folders and when I selected the jar to upload I was in the wrong folder :/

This fixes /tags delete and the rest of the 1.5.2 fixes.
----------, Mar 31, 2015

1.5.2

Fixed DeluxeTags creating another folder in your plugins directory. Delete the /plugins/DeluxeTagsuserdata/ folder. This was an error on my end as i forgot to add a file separator before the userdata folder name.

Fixed /tags delete throwing a ClassCastException when attempting to delete a tag.
----------, Mar 31, 2015

1.5.1

Fixed error caused on startup if DeluxeChat is not found. This would cause the plugin to disable and break essentials compatibility.
----------, Mar 27, 2015

1.5

Updated DeluxeChat placeholder hook to the new Placeholder API.

If you are using DeluxeChat integration, this version is only compatible with DeluxeChat 1.4.9 and DeluxeChat 1.5
----------, Mar 27, 2015

1.4.1

Added new order: option in the config that allows you to set the order in which tags are displayed in the tags GUI.

Tags will maintain order based on the order set!

[​IMG]

This new option will be added to all existing tags based on the order they are loaded if the tag does not have the order: option.

Each order: must be a unique number ascending from 1 to xxx

All new tags created by command will be set to the amount of tags loaded+1.
----------, Mar 22, 2015

1.4

Added compatibility for servers using other chat formatting plugins such as EssentialsChat!

This version allows you the ability to add DeluxeTags placeholders in other chat formatting plugins such as Essentials.
Compatibility is not guaranteed with every chat formatting plugin but has been tested with EssentialsChat.


If you do not have DeluxeChat installed,
some customization features will be disabled!

DeluxeTags configuration without DeluxeChat compatibility enabled:
Placeholders are surrounded by {} instead of % if you do not have DeluxeChat.

Code (Text):
# DeluxeTags version: 1.4 Main Configuration
# You are using DeluxeTags without DeluxeChat compatibility enabled!
# Some configuration options and customization features are disabled.
#
# Not all chat formatting plugins may allow these placeholders to be used!
# Confirmed working with EssentialsChat only.
# If you would like full functionality of DeluxeTags,
# purchase DeluxeChat here: http://www.spigotmc.org/resources/deluxechat.1277/
#
# Create your tags using the following format:
#
# deluxetags:
#   VIP:
#     tag: '&7[&eVIP&7]'
#     description: 'This tag is awarded by getting VIP'
#
# Placeholders for your essentials/chat handling formats config:
#
# {deluxetags_identifier} - display the players active tag identifier
# {deluxetags_tag} - display the players active tag
# {deluxetags_description} - display the players active tag description
# {deluxetags_amount} - display the amount of tags a player has access to
check_updates: true
deluxetags:
  example:
    tag: '&8[&bDeluxeTags&8]'
    description: '&cAwarded for using DeluxeTags!'
  boss:
    tag: '&8[&eBoss&8]'
    description: this is a bosses tag

To use with essentials, simply add any of the placeholders above in your essentials chat formatting section:

[​IMG]

If you do have DeluxeChat running with DeluxeTags, a new feature has been added for DeluxeChat users!

Added ability to customize the GUI!

DeluxeTags 1.4 configuration with DeluxeChat integration:


Code (Text):
# DeluxeTags version: 1.4 Main Configuration
# You are using DeluxeTags with DeluxeChat!
# All customization features are enabled.
#
# Create your tags using the following format:
#
# deluxetags:
#   VIP:
#     tag: '&7[&eVIP&7]'
#     description: 'This tag is awarded by getting VIP'
#
# Placeholders for your DeluxeChat formats config:
#
# %deluxetags_identifier% - display the players active tag identifier
# %deluxetags_tag% - display the players active tag
# %deluxetags_description% - display the players active tag description
# %deluxetags_amount% - display the amount of tags a player has access to
check_updates: true
gui:
  name: '&aAvailable tags&7: &f%deluxetags_amount%'
  tag_select_item:
    material: NAME_TAG
    data: 0
    displayname: '%deluxetags_identifier%'
    lore:
    - '%deluxetags_tag%'
    - '%deluxetags_description%'
  divider_item:
    material: STAINED_GLASS_PANE
    data: 11
    displayname: ''
    lore: []
  has_tag_item:
    material: SKULL_ITEM
    data: 2
    displayname: '&eCurrent tag&f: &6%deluxetags_identifier%'
    lore:
    - '%deluxetags_tag%'
    - Click to remove your current tag
  no_tag_item:
    material: SKULL_ITEM
    data: 3
    displayname: '&cYou don''t have a tag set!'
    lore:
    - '&7Click a tag above to select one!'
  exit_item:
    material: IRON_DOOR
    data: 0
    displayname: '&cClick to exit'
    lore:
    - '&7Exit the tags menu'
deluxetags:
  example:
    tag: '&8[&bDeluxeTags&8]'
    description: '&aAwarded for using the most awesome chat tags plugin!'
  yolo:
    tag: '&8[&6YOLO&8]'
    description: '&fDefault tag description'
  hearts:
    tag: '&8[&c❤&4❤&c❤&8]'
    description: '&fDefault tag description'
  biohazard:
    tag: '&8[&6☢&8]'
    description: '&fDefault tag description'
----------, Mar 19, 2015

1.3.2

Fixed /tags throwing error on 1.8.3 causing the GUI system to be broken :(

This error was caused because of the skull item showing the players face.
I have removed the per player skull/skin being shown and will add back when I figure out a solution to the error.
----------, Mar 10, 2015

1.3.1

Major changes to the tags configuration section:

This new configuration section allows tags to become more advanced and possibly add new options for tags in the future such as a cost to set / cost to purchase / or some other idea someone may come up with.

Right now there is only a "tag description" option implemented but this new option is pretty cool. It was requested by sketaful

The tag description adds an additional placeholder. This placeholder can be used in the main format parts and tooltips in your deluxechat format config.

You can do cool things like:
[​IMG]
[​IMG]

new tag config format:
[​IMG]


I added a converter to convert all of your old format tags to the new tags configuration format so you don't have to do anything but add/modify the default value for the new tag option after the server has started with the new version installed.

The placeholders have also changed:

%deluxetags_identifier%
display the players active tag identifier

%deluxetags_tag%

display the players active tag

%deluxetags_description%

display the players active tag description

New command:

[​IMG]

/tags setdesc <tagname> <whatever you want to be the tag description>

Requires permission: deluxetags.setdescription
----------, Mar 5, 2015

1.3

Added new commands and adjusted a few of the old ones!

New commands:

/tags create <identifier> <tag>

create a tag in console or in game
You can specify multiple arguments after the identifier:

/tags create Staff &7[ &bStaff &7]_
Ending the tag String with a _ will replace it with a space ' '
perm: deluxetags.create


/tags delete <identifier>

delete a tag in console or in game
perm: deluxetags.delete


Changed commands:

/tags list

now allows arguments if you have permission

/tags list all

list all loaded tags
perm: deluxetags.list.all


/tags list <player>
list all tags a player has access to
perm: deluxetags.list.player

Added console support for all commands
(aside from setting your own tag as console or opening the GUI)

Added support for 1.7 servers. You can now open the GUI. I removed the barrier as the exit item.

GUI will now display how many tags you have permission for instead of the page number:

[​IMG]

Added tons of messages for the new commands in the messages.yml

Added update checking feature
(you can disable in config)
This will alert ops on join if an update is available.
(will only check for updates on startup)


This version includes other miscellaneous bug fixes I came across and maybe forgot to mention.
----------, Feb 28, 2015

1.2

Added messages.yml
Every chat message sent is now configurable!


Code (Text):
# DeluxeTags messages.yml

# Edit the plugin messages to your liking!
cmd:
  no_permission: '&cYou don''t have &7{0} &cto do that!'
  target_not_online: '&f{0} &cis not online!'
  no_tags_loaded: '&cThere are no tags loaded!'
  no_tags_available: ''
  tags_list: '&f{0} &aavailable tags: &f{1}'
  tag_select_incorrect_usage: '&cIncorrect usage! &7/tags select <tagname>'
  tag_select_success: '&7Your tag was set to: &r{1}'
  tag_select_fail: '&f{0} &cis not a valid tag name!'
  help_title: '&5&lDeluxeTags &f&oHelp'
  help_color: '&8> &d&l'
  help_tags: '&f&oOpen your tags GUI'
  help_list: '&f&oView tags available to you'
  help_select: '&f&oSelect a tag as your active tag'
  help_admin_set: '&f&oSet a players tag'
  help_admin_clear: '&f&oClear a players tag'
  help_version: '&f&oView DeluxeTags version and author information'
  help_reload: '&f&oReload the tags config'
  admin_set_incorrect_usage: '&cIncorrect usage! &7/tags set <player> <tag>'
  admin_set_no_tags_avail: '&f{0} &cdoesn''t have any tags available!'
  admin_set_success: '&f{0}s &atag has been set to: {1} &7({2}&7)'
  admin_set_success_to_target: '&7Your tag has been set to &f{1} &aby &f{2}'
  admin_set_success_fail: '&f{0} &cis not a valid tag for &f{1}&c!'
  admin_clear_incorrect_usage: '&cIncorrect usage! &7/tags clear <player>'
  admin_clear_no_tag_set: '&f{0} &cdoesn''t have a tag set!'
  admin_clear_success: '&f{0}s &atag has been cleared!'
  admin_clear_success_to_target: '&7Your tag has been cleared &aby &f{0}'
  admin_reload: '&aConfiguration successfully reloaded! &f{0} &atags loaded!'
  incorrect_usage: '&cIncorrect usage! Use &7/tags help'
gui:
  tag_selected: '&aYour tag has been set to &f{0} &7({1}&7)'
  tag_disabled: '&7Your tag has been disabled!'
  page_error: '&cThere was a problem getting the previous page number!'

Fixed a few bugs with some commands.

Fixed error with the cleanup task that runs every x mins to remove offline players from the loaded tag cache.

I will be working on GUI item customization + adding more admin commands for the next update!

----------, Feb 26, 2015

Resource Information
Author:
----------
Total Downloads: 187,713
First Release: Feb 25, 2015
Last Update: Jan 7, 2022
Category: ---------------
All-Time Rating:
478 ratings
Find more info at www.spigotmc.org...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings