- Fixed an exploit on Velocity
- Fixed error
As MC 1.21.2 is approaching, this is the final update for 4.x branch. From now on, only 5.x versions will be released, which will no longer have unlimited nametag mode and bossbar for 1.8 servers. This was originally planned to come with MC 1.22 rather than 1.21.2, however, Mojang has decided to rework entity packets in 1.21.2 and I don't see the point in adding support for it just to remove the whole feature soon after. In case you missed it, here is the original (now updated) announcement: https://gist.github.com/NEZNAMY/f4cabf2fd9251a836b5eb877720dee5c
Added 1.21 support. Unlimited nametag mode feature has now been marked for removal for the future. Read more about it and discuss it at https://gist.github.com/NEZNAMY/f4cabf2fd9251a836b5eb877720dee5c
Added support for latest BungeeCord.
Please note that the latest changes introduced a packet encoding bug in features TAB offers that causes <1.13 players to be disconnected immediately on join. This bug is inherited by forks as well, including Waterfall and possibly further forks as well. Considering the bungee update didn't add anything meaningful other than support for some 1.20.3 snapshot, it is better to stay on an older version (BungeeCord #1759 or lower, Waterfall #548 or lower) until this is fixed in BungeeCord. Disabling the plugin for <1.13 players to avoid the disconnect would be a bad solution for many reasons.
Fixed various issues on 1.20.2 BungeeCord. If you use it, and updated your backend to 1.20.2, don't forget to update bridge as well, because it compensates for a new bug introduced in bukkit 1.20.2 causing plugin messages to not be sent on join.
I hope with this the plugin is now finally stable for 1.20.2 players on BungeeCord. The reason why it took so long is because there are tons of bugs/issues in server software out of my control, which has to be compensated for, such as:
- On Bukkit 1.20.2, sending plugin messages on join may cause them to not be sent. God knows why. It was also very non-deterministic - trying the same thing several times gave different results. At the beginning, it worked totally fine for me. After making "some changes", it no longer worked. Not only on that test server instance, but not even on a clean installation anymore. I had to figure out which part of server code was blocking it and force an aggressive override, hopefully not breaking anything because of it.
- BungeeCord is in maintenance mode for a decade now and only does the most urgent things (usually just adding support for new MC versions). Tons of problems were introduced in 1.20.2 with no clear interest in resolving them. Asking for a fix barely has success, even if you open a github issue that clearly describes the problem and suggest multiple possible solutions, md5 acts like he sees no problem. Sending packets to players is considered "not an API" and any bug reports featuring sending packets are closed, without resolving it or adding the API. What's worse, even using the API the way it's advertised will throw errors.
While I thought not adding any more features and just fixing internal bugs (which will eventually have to get all fixed as they can't keep coming forever), it looks like adding support for new MC versions is going to be much more painful than expected and may end sooner than expected. I am not interested in begging people to fix bugs in their software that's out of my control, but prevents my plugins from working correctly.
I would like everyone to understand that by no law because I wrote a few lines of code I am now forced to maintain it for the rest of my life, for free, instead of doing things I enjoy, making software for a game I haven't played in a decade, for servers I never heard of, owned by people I have never met and never will who just look to make money off of plugins by getting the developers to configure their own plugins for them to then put them on their server and then sell ranks. Easy money. Or not?
Added support for new Spigot 1.20.2 build that uses mojang mappings for fields and methods (forks will probably follow as well).
Note on BungeeCord: There are still no news on 1.20.2 client support on BungeeCord. While the issue linked in previous update got closed, it got falsely closed - nothing was fixed. Shall a fix be introduced and plugin require an update to take advatange of the fix, plugin will be updated.
Added 1.20.2 support.
Please note that the plugin currently won't work for 1.20.2 players on BungeeCord due to an issue that's currently being investigated. There is currently no feasible solution available on the plugin's end, so we will most likely need to wait for a fix on BungeeCord side. If any progress on this is made and it will involve a change to the plugin, an update will be made for 1.20.2 client support on BungeeCord.
- Added 1.20 & 1.20.1 support
- Removed everything that should not be exposed in the API module and added API for layouts
- Pet name fix feature was removed from the main plugin and released as a separate plugin.
- Ping spoof feature was removed
- Removed Vault hook. According to bStats, 88% of servers that use TAB use LuckPerms and 5.6% use nothing. Other permission plugins are still supported when assigning groups by permissions.
- %vault-prefix% and %vault-suffix% got removed. You can use their PlaceholderAPI alternative or the internal LuckPerms placeholders
- %afk% got removed, use %essentials_afk% for essentials and %purpur_player_afk% for purpur's afk detection
- %essentialsnick% got officially removed, it was already partially removed previously only returning player's name
- Placeholder refresh interval categories were merged. Relational placeholders still have to start with %rel_, so those are not a problem. You are no longer able to specify server placeholders manually. Only those from server expansion are now registered as server placeholders.
- Added Fabric support. Due to nature of Fabric being unable to support more than 1 server version in a single jar, the release only supports 1.20.
- Moved layout.yml content to config.yml
- Feature are no longer being disabled in worlds/servers, but a disable-condition was introduced. It allows more customization. Bossbar and scoreboard got this option completely removed, as each configured object has display-condition already.
- Layout now properly hides vanished players only from those, who shouldn't see them (previously everyone had the same view). This opens new options for the future.
- Many other small changes and bug fixes