Fixed issue with config not reloading as expected
Removed threading for intervals for now
Added [#cap(word)] and [#capall(word)] to ensure that text retrieved from luckperms starts capitalized "[#cap(word)] -> Word"or is completely capitalized "[#capall(word)] -> WORD". You can put between () any word or letter you want. Make sure it's just one word and not multiple words.
Fixed a bug where refresh time wasnt calculated correctly
Fixed a bug where intervals werent handled correctly
Restructured code.
Minor fix for API version wasn't correct
Added default formating for names if there is no permission given
Fixed issue with internal placeholders not working
Fixed issue with custom config generation doesn't set default config
Fixed issue with hex colors not working as expected
Switched internal placeholders to use [] instead of {}
This update brings a bunch of changes code wise.
Here the most interesting ones:
- The player name formatting system has been optimized by replacing the previous lengthy code with a more efficient string replacement method. Now, display names can be customized using luckperm permissions via placeholders or texts, for example: "stl.format.%luckperms_prefix% {player_name} %luckperms_suffix%". This simplfies the process and enhance the possibility for modified player names.
- Refactored name updates to streamline applying global, world-based, and player-specific prefixes and suffixes, reducing code complexity.
- Added error handling to prevent crashes by catching unexpected exceptions during name updates and logging warnings.
- Interval handling has been refactored for better control, using custom threading instead of the Bukkit scheduler, allowing tasks to be started and stopped more efficiently.
CFG Changes:
Names.LuckPerms.Prefix.Enable and Names.LuckPerms.Suffix.Enable got removed due to being depracted.
Everything else keeps the same.
This update brings a bunch of changes code wise.
Here the most interesting ones:
- The player name formatting system has been optimized by replacing the previous lengthy code with a more efficient string replacement method. Now, display names can be customized using luckperm permissions via placeholders or texts, for example: "stl.format.%luckperms_prefix% {player_name} %luckperms_suffix%". This simplfies the process and enhance the possibility for modified player names.
- Improved placeholder processing by adding recursion depth and caching to prevent redundant replacements.
- Refactored name updates to streamline applying global, world-based, and player-specific prefixes and suffixes, reducing code complexity.
- Added error handling to prevent crashes by catching unexpected exceptions during name updates and logging warnings.
- Interval handling has been refactored for better control, using custom threading instead of the Bukkit scheduler, allowing tasks to be started and stopped more efficiently.
CFG Changes:
Names.LuckPerms.Prefix.Enable and Names.LuckPerms.Suffix.Enable got removed due to being depracted
.
Everything else keeps the same.
- Replicate all flags of the team (collisionRule, color, deathMessageVisibility, friendlyFire, nametagVisibility, seeFriendlyInvisibles, prefix, suffix)
- Included the playerName to the team name only in case it has been assigned to a team of the main scoreboard to avoid conflicts with global team (if no team assigned then it will go on the global sorted team)
- Fixed missing team color when prefix and suffix are applied
by
o0sh4d0w0o
This is a small update.
Added the possibility to enable/disable the player list sorting.
Added the possibility to set the sorting type of the player list (currently only weight, so keep it) and sort it ascending or not.
[By
o0sh4d0w0o]
Fixed a bug where the suffix or prefix of a lower additional group where still displaying.
Reworked some code to make it more precise and faster.
Added Global prefixes (added by
o0sh4d0w0o)
Added the option to enable/disable prefix/suffixes provided by Luckperms. (added by
o0sh4d0w0o)
Removed the internal placeholder for player pings due to native minecraft version change.
Fixed a bug where the Tablist flickered because of other plugins (fixed by
o0sh4d0w0o)
Fixed a bug where players wouldn't sort correctly. This means higher group weight will sort a player on top now.
Changed all config Use paths to Enable.
Changed some code lmao.
Changed the prefix and suffix behavior
Changed the sorting behavior so it has more space to sort.
Added Hexcolor support. You can use for example &#FF0000 now.
Added Animations.
Syntax: {animation:1} in animations.yml use the following for example:
animations:
1:
- Frame 1
- Frame 2
- Frame 3
Fixed Suffix issue.
Fixed Config header Issue below 1.17.
Added new config Names.Space.Use which toggles prefix and suffix spacing by default.
Added back sorting by group weight. * (It doesn't)
Fixed Tab Refresh Interval at all.
Fixed a calculation bug related to Interval time in seconds.
Removed not working placeholder detection.
Changed Plugin.Update.Interval.Use and Plugin.Update.Interval.Time to Tab.Refresh.Interval.Use and Tab.Refresh.Interval.Time.
Changed Tab.Refresh.Interval.Time time calculation to seconds. Means you just have to put in the seconds you want it to take.
Fixed an Issue where the update detection was not working as expected.
Fixed an Issue where LuckPerms prefixes and suffixes which are using Placeholders were not converted.
Fixed bug where worlds function didn't worked as expected.
Added Names.Use, Header.Use and Footer.Use to world configs.
Added Worlds.Use to enable/disable the world function.
Removed Worlds.Names.Use and Worlds.HeaderFooter.Use in main config.
Fixed TabList flickering on using worlds function.
Fixed bug where disable Header.Use wont disable
Changed Prefix and Suffix to Names.Prefix and Names.Suffix in world configs.
Changed Header and Footer to Header.Content and Footer.Content in world configs
Added Names.Use, Header.Use and Footer.Use to world configs.
Added Worlds.Use to enable/disable the world function.
Removed Worlds.Names.Use and Worlds.HeaderFooter.Use in main config.
Fixed TabList flickering on using worlds function.
Fixed bug where disable Header.Use wont disable
Changed Prefix and Suffix to Names.Prefix and Names.Suffix in world configs.
Changed Header and Footer to Header.Content and Footer.Content in world configs
Added Plugin.Update.Interval.Use and Plugin.Update.Interval.Time to enable/disable automatic update and set the interval time it needs.
Removed not used files because they are useless for now.
Fixed an issue where the plugin was not able to subscribe to LuckPerm events.
Changed Plugin.ActionbarMessage -> Chat.ActionbarMessage
Added Multi-threading to prevent performance issues
Added back Chat.Prefix because I accidentally removed it
Changed config structure.
Tab.Names.Use -> Names.Use
Tab.Worlds.Use -> Worlds.HeaderFooter.Use
Tab.Names.Worlds.Use -> Worlds.Names.Use
Tab.Header.Use -> Header.Use
Tab.Header.Content -> Header.Content
Tab.Footer.Use -> Footer.Use
Tab.Footer.Content -> Footer.Content
Removed the Tab infront of all config parts.
Fixed bug where command message prefix was null
Fixed an Issue where the plugin was not formating the prefix & suffixes when world based was in config disabled
Added placeholder functionality to the world function
Removed sorting until its fixed because I got many reports on issues with it
Removed the Chat function until ils modular
Removed all config settings related to the Chat function
Removed join and quit messages
Fixed an issue where Tab.Names.Use wasnt used at all. It now enables/disables the Tablist name formating
Fixed a flickering issue of the tablist. This bug was based on the sorting function
Added sorting by group weight (0-99). (hopefully so pls let me know)
Added per world configs, prefixes, suffixes, headers and footers. There will be also a new folder called worlds where you should find config files for all worlds on your server.
Added Tab.Names.Worlds.Use config to main config file. This is related to per world things.
Added Tab.Worlds.Use config to main config file. This is also related to per world things.
Removed the /home command because of it's known issues. (you can delete the users folder)
Known Issues:
Performance issues on large servers can be a thing when using per world stuff. (It updates all 2 seconds (there will come an update which will add a configuration for this))
Placeholders do not work on per world configs.
Fixed
Chat.Use
bug where it ignores the value.
Added
WordBlacklist
and
LinkWhitelist
.
Added related to
WordBlacklist
and
LinkWhitelist
in
config
Chat.Moderation.WordBlacklist
and
Chat.Moderation.LinkWhitelist
.
Fixed some performance issues.
Added PlaceholderAPI functionality and as dependency.
Added Tab.Names.Use boolean (true/false) config (please make sure to add this to your config or make a backup of your current and reload the plugin completely (restart server)).
Added LuckPerms eventlisteners (displayname does only update if it's enabled in config and something is changing at luckperms permissions on your server (such as user groups)).
Fixed related to LuckPerms eventlisteners the internal interval function and only update TabList Header and Footer if one of those is enabled or/and having content.
Fixed an issue having empty header/fooder lines result in errors.
Removed the permission
stl.home as usage for the
/home <HomeName> command and replaced it with
stl.home.add because it makes much more sense.
Added Header/Footer multiple lines support
Fixed issue where Chat.Use didn't work
Config:
- Tab.Header -> Tab.Header.Use & Tab.Header.Content
- Tab.Footer -> Tab.Footer.Use & Tab.Footer.Content
Moved arguments to own Commands.
Fixed a chat formating issue.
Changed Nametag function
Changed Homes position as int to float
Added Homes Yaw and Pitch
Added Homes set (change existing home)
Added the Home.Use configuration.
Added Homes
Added Permissions related to Homes
Added Homes.Amount in Config
Added User configs (generated by command usage)
Removed Mute Permission
Removed Staff chat enabled Permission
Added Chat colors config
Added Mute/Unmute command & permission
Fixed some formating bugs
Many bug fixes related to all commands.
Added Staff Chat.
Added Staff permissions.
Fixed a Formating bug
Update TabList Header, TabList Footer & Player name each second
Added Chat clear command with permission
Fixed Formatig bug
Added Chat Clear Command
Added Placeholders
- Fixed many bugs related to PlaceholderAPI
- Removed PlaceholderAPI
Added playerchatevent functionality
- Player prefix & suffix in chat
Added config variables
- Enable/Disable Events
- Enable/Disable Actionbars
Added player join & quit events
- Player prefix & suffix in chat
Added Message to Actionbar
Added PlaceholderAPI compatibility
Added small explanations in config.yml
Added Update Checker (Will send a message to OPs or log it in Console)