nearvanilla / bat Goto Github PK
View Code? Open in Web Editor NEWBasic, awesome TAB plugin for Velocity
License: GNU Affero General Public License v3.0
Basic, awesome TAB plugin for Velocity
License: GNU Affero General Public License v3.0
We need API for plugins to hook into to register custom placeholders. One idea could be AFK plugin adding [AFK]
next to player name. Or doing more complex replacements that are not supported by BAT.
The plugin nametags collides with another nametag plugin installed in the backend server, making prefixes and suffixes to not work at all something like format-player-names: true/false
as the plugin just breaks the
Also a switch to show only the players on the proxy or show the players in the whole server only-in-proxy-players: true/false
I'm saying this 'cause i have different proxies and before the plugin, the players in the backend server was complete but after installing on a test proxy that connects to the backend server too, found out that it was only me who was showing up in the player list knowing everyone else was there
Currently, Velocity does not support player sorting API - see: PaperMC/Velocity#605
We should remove the configuration setting and all relevant code, to avoid confusion.
Perhaps stealing https://github.com/Prof-Bloodstone/WanderfulAdditions/tree/master/.github/workflows is good enough?
DoD:
The tab started to stop working. I have about 250 players and I have a lot of change of servers because I am a Network with my data, chats, tab linked
At some combination of player amount and player names, the player head icons flicker.
Investigate why it might be happening.
It is possible that it is due to Header/Footer update being sent despite there being no changes.
The header/footer code doesn't check if something changed: https://github.com/NearVanilla/bat/blob/master/velocity/src/main/java/com/nearvanilla/bat/velocity/tab/TablistService.java#L173-L210
as opposed to tablist entry code which does: https://github.com/NearVanilla/bat/blob/master/velocity/src/main/java/com/nearvanilla/bat/velocity/tab/TablistService.java#L312-L334
After tablist update, every admin in gamemode spectator automatically go to "broken" gamemode spectator
In this "broken" mode, admins can speed up using scroll wheel, but cant noclip (phase) through blocks, and cant use spectator tp menu (numbers)
The player display in the tab also changes from gray (when someone in spectator mode) to white (when someone in any other mode)
The tag <date>
shows the time, <time>
shows the date.
I built the plugin for the first time. Outputs an error, can you help?
Unable to load plugin plugins/1234567.jar
com.velocitypowered.api.plugin.InvalidPluginException: The plugin file 1234567.jar appears to be a Bukkit or BungeeCord plugin. Velocity does not support Bukkit or BungeeCord plugins.
at com.velocitypowered.proxy.plugin.loader.java.JavaPluginLoader.getSerializedPluginInfo(JavaPluginLoader.java:151) ~[bungeecord.jar:3.1.2-SNAPSHOT (git-7d77bfb5-b184)]
at com.velocitypowered.proxy.plugin.loader.java.JavaPluginLoader.loadCandidate(JavaPluginLoader.java:61) ~[bungeecord.jar:3.1.2-SNAPSHOT (git-7d77bfb5-b184)]
at com.velocitypowered.proxy.plugin.VelocityPluginManager.loadPlugins(VelocityPluginManager.java:92) ~[bungeecord.jar:3.1.2-SNAPSHOT (git-7d77bfb5-b184)]
at com.velocitypowered.proxy.VelocityServer.loadPlugins(VelocityServer.java:343) ~[bungeecord.jar:3.1.2-SNAPSHOT (git-7d77bfb5-b184)]
at com.velocitypowered.proxy.VelocityServer.start(VelocityServer.java:224) ~[bungeecord.jar:3.1.2-SNAPSHOT (git-7d77bfb5-b184)]
at com.velocitypowered.proxy.Velocity.main(Velocity.java:64) ~[bungeecord.jar:3.1.2-SNAPSHOT (git-7d77bfb5-b184)]
I will be very grateful for your help or if you release the build yourself
server version - velocity 1.18.2
With Spark on a Paper server and BAT on a Velocity proxy, the gamemode state gets confused.
You can change your gamemode to Spectator from Survival, and the client will still think it is in Survival mode. Although the HUD will update, and your model will disappear, your player's collision will not change.
The opposite will also happen. Spectator to Creative, Survival, or Adventure modes will try to let you phase through blocks even though you are in a gamemode that doesn't let you do that.
This one is quite difficult to explain. This could very well be a Spark issue.
Software used in testing.
Minecraft 1.19.3 (Vanilla and Modded)
Spark-Bukkit v1.10.30
bat (a9b045a)
PaperMC 1.19.3 Build 431
Velocity 3.2.0 Snapshot Build 231
Feature request to sort groups in the tablist like the TAB plugin has:
Sort groups like this:
Owner
Moderator
Member
Guests
Reason for request: Because currently it's very messy, and it's sorted randomly instead of putting the power-ranks at the top.
Currently we have latency hardcoded at 10: https://github.com/NearVanilla/bat/blob/master/velocity/src/main/java/com/nearvanilla/bat/velocity/tab/Tablist.java#L88
We either shouldn't set it (if it'll make Velocity automatically use correct data) or use Player#getPing() to set real value.
When I have bat enabled on the proxy, I'm unable to use no-clip in spectator mode.
I can't figure out how to put placeholders in the tab using PlaceholderAPI, for example player balance.
Our old plugin could do it, but it didn't support velocity.
29.03 02:55:57 [Server] [WARN] [com.nearvanilla.bat.velocity.tab.TablistService]: Failed to determine GameMode for d4967fff-f48f-4bd0-8013-d580011c3b0a! Returning: 0
Thought this issue was fixed back in 2022, but doesn't seem like it?
Velocity 3.2.0-SNAPSHOT
Bat [1.1.0](https://github.com/NearVanilla/bat/suites/10504605580/artifacts/521318974)
Java 17
Hey I build you Nice Plugin and when I drag and drop it in Velocity 3.2.1SNAPSHOT Build 184
I get that Error: https://pastebin.com/7MERXwQ7
See the Titel.
I use:
[Pterodactyl Daemon]: Pulling Docker container image, this could take a few minutes to complete...
Pulling from pterodactyl/yolks
Status: Image is up to date for ghcr.io/pterodactyl/yolks:java_17
Digest: sha256:
[Pterodactyl Daemon]: Finished pulling Docker container image
container@pterodactyl~ java -version
openjdk version "17.0.2" 2022-01-18
OpenJDK Runtime Environment (build 17.0.2+8-86)
OpenJDK 64-Bit Server VM (build 17.0.2+8-86, mixed mode, sharing)
container@pterodactyl~ java -Xms128M -Xmx2000M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -Duser.timezone=Europe/Berlin -jar velocity.jar
[10:24:24 INFO]: Booting up Velocity 3.1.2-SNAPSHOT (git-7d77bfb5-b184)...
[10:24:24 INFO]: Loading localizations...
[10:24:24 INFO]: Connections will use epoll channels, libdeflate (Linux x86_64) compression, OpenSSL 1.1.x (Linux x86_64) ciphers
[21:47:18 WARN] [com.nearvanilla.bat.velocity.tab.TablistService]: Failed to determine GameMode for cefd27b0-52b3-492f-a0ba-93e6ce91507d! Returning: 0
First off, this plugin works insanely well and is exacly the slim solution I was looking for!
It would be pretty convenient if you could publish the defined shadowJar to github releases. If you would like to have a small example on how to do that with github workflows, take a look here: https://github.com/michiruf/MCAllayFollowAlways/blob/master/.github/workflows/build.yml . Your gradle task will of cause be shadowJar
instead of remapJar
.
The README.md should contain updated complication steps, and remove references to "downloading" the jar, as there are no published binaries.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.