From 42c3aa4fc54f946e32d8605bd60bb53f8fa1b7e9 Mon Sep 17 00:00:00 2001 From: apathy Date: Wed, 16 Jul 2025 13:31:22 +0300 Subject: [PATCH] feature-25-tab --- src/plugins/TAB v5.2.4.jar | 3 + src/plugins/TAB/animations.yml | 110 +++++++ src/plugins/TAB/config.yml | 295 ++++++++++++++++++ src/plugins/TAB/groups.yml | 25 ++ src/plugins/TAB/messages.yml | 73 +++++ src/plugins/TAB/users.yml | 0 src/plugins/VelocityScoreboardAPI-1.0.0.jar | 3 + .../velocity-scoreboard-api/config.yml | 13 + 8 files changed, 522 insertions(+) create mode 100644 src/plugins/TAB v5.2.4.jar create mode 100644 src/plugins/TAB/animations.yml create mode 100644 src/plugins/TAB/config.yml create mode 100644 src/plugins/TAB/groups.yml create mode 100644 src/plugins/TAB/messages.yml create mode 100644 src/plugins/TAB/users.yml create mode 100644 src/plugins/VelocityScoreboardAPI-1.0.0.jar create mode 100644 src/plugins/velocity-scoreboard-api/config.yml diff --git a/src/plugins/TAB v5.2.4.jar b/src/plugins/TAB v5.2.4.jar new file mode 100644 index 0000000..99690b0 --- /dev/null +++ b/src/plugins/TAB v5.2.4.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f54f1c2576f950485a3c66e023523c0a003fd285fe8a22f43e090f4ace96a8b6 +size 3515592 diff --git a/src/plugins/TAB/animations.yml b/src/plugins/TAB/animations.yml new file mode 100644 index 0000000..c6a95e7 --- /dev/null +++ b/src/plugins/TAB/animations.yml @@ -0,0 +1,110 @@ +MyAnimation1: + change-interval: 100 + texts: + - '&d-&3--------------' + - '&3-&d-&3-------------' + - '&3--&d-&3------------' + - '&3---&d-&3-----------' + - '&3----&d-&3----------' + - '&3-----&d-&3---------' + - '&3------&d-&3--------' + - '&3-------&d-&3-------' + - '&3--------&d-&3------' + - '&3---------&d-&3-----' + - '&3----------&d-&3----' + - '&3-----------&d-&3---' + - '&3------------&d-&3--' + - '&3-------------&d-&3-' + - '&3--------------&d-' + - '&3-------------&d-&3-' + - '&3------------&d-&3--' + - '&3-----------&d-&3---' + - '&3----------&d-&3----' + - '&3---------&d-&3-----' + - '&3--------&d-&3------' + - '&3-------&d-&3-------' + - '&3------&d-&3--------' + - '&3-----&d-&3---------' + - '&3----&d-&3----------' + - '&3---&d-&3-----------' + - '&3--&d-&3------------' + - '&3-&d-&3-------------' + - '&d-&3--------------' +ServerName: + change-interval: 300 + texts: + - '&c&lServerName' + - '&c&n&lServerName' + - '&b&lServerName' + - '&b&l&nServerName' + - '&e&lServerName' + - '&e&n&lServerName' +web: + change-interval: 200 + texts: + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&6w&eww.domain.com' + - '&ew&6w&ew.domain.com' + - '&eww&6w&e.domain.com' + - '&ewww&6.&edomain.com' + - '&ewww.&6d&eomain.com' + - '&ewww.d&6o&emain.com' + - '&ewww.do&6m&eain.com' + - '&ewww.dom&6a&ein.com' + - '&ewww.doma&6i&en.com' + - '&ewww.domai&6n&e.com' + - '&ewww.domain&6.&ecom' + - '&ewww.domain.&6c&eom' + - '&ewww.domain.c&6o&em' + - '&ewww.domain.co&6m' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' + - '&ewww.domain.com' +vote: + change-interval: 1000 + texts: + - '&avote.domain.com' + - '&a&nvote.domain.com' + - '&5vote.domain.com' + - '&5&nvote.domain.com' +Welcome: + change-interval: 400 + texts: + - '&7&lW_' + - '&7&lW_' + - '&7&lWe_' + - '&7&lWel_' + - '&7&lWelc_' + - '&7&lWelco_' + - '&7&lWelcom_' + - '&7&lWelcome_' + - '&7&lWelcome_' + - '&7&lWelcome_' + - '&7&lWelcome_' + - '&7&lWelcom_' + - '&7&lWelco_' + - '&7&lWelc_' + - '&7&lWel_' + - '&7&lWe_' + - '&7&lW_' + - '&7&lW_' +time: + change-interval: 3000 + texts: + - '&7Time &b%time%' + - '&7Date &b%date%' +barcolors: + change-interval: 1000 + texts: + - RED + - BLUE + - GREEN + - YELLOW \ No newline at end of file diff --git a/src/plugins/TAB/config.yml b/src/plugins/TAB/config.yml new file mode 100644 index 0000000..c5cc6d9 --- /dev/null +++ b/src/plugins/TAB/config.yml @@ -0,0 +1,295 @@ +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Header-&-Footer +header-footer: + enabled: true + header: + - "<#FFFFFF>&m " + - "Bebrashield:re" + - "%server_name%" + - "" + footer: + - "" + - "" + - "TPS: %server_tps_1% | Ping: %ping% ms" + - " bebrashield.net " + - "<#FFFF00>&m " + + disable-condition: '%world%=disabledworld' + per-world: + world1: + header: + - "an example of world with custom" + footer: + - "header/footer and prefix/suffix" + world2;world3: + header: + - "This is a shared header for" + - "world2 and world3" + per-server: + server1: + header: + - "an example of server with custom header" + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Tablist-name-formatting +tablist-name-formatting: + enabled: true + disable-condition: '%world%=disabledworld' + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Nametags +scoreboard-teams: + enabled: true + enable-collision: true + invisible-nametags: false + # https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Sorting-players-in-tablist + sorting-types: + - "GROUPS:owner,admin,mod,helper,builder,vip,default" + - "PLACEHOLDER_A_TO_Z:%player%" + case-sensitive-sorting: true + can-see-friendly-invisibles: false + disable-condition: '%world%=disabledworld' + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Playerlist-Objective +playerlist-objective: + enabled: false + value: "%ping%" + fancy-value: "&7Ping: %ping%" + title: "TAB" # Only visible on Bedrock Edition + render-type: INTEGER + disable-condition: '%world%=disabledworld' + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Belowname +belowname-objective: + enabled: false + value: "%health%" + title: "&cHealth" + fancy-value: "&c%health%" + fancy-value-default: "NPC" + disable-condition: '%world%=disabledworld' + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Spectator-fix +prevent-spectator-effect: + enabled: false + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Bossbar +bossbar: + enabled: false + toggle-command: /bossbar + remember-toggle-choice: false + hidden-by-default: false + bars: + ServerInfo: + style: "PROGRESS" # for 1.9+: PROGRESS, NOTCHED_6, NOTCHED_10, NOTCHED_12, NOTCHED_20 + color: "%animation:barcolors%" # for 1.9+: BLUE, GREEN, PINK, PURPLE, RED, WHITE, YELLOW + progress: "100" # in % + text: "&fWebsite: &bwww.domain.com" + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Scoreboard +scoreboard: + enabled: false + toggle-command: /sb + remember-toggle-choice: false + hidden-by-default: false + use-numbers: true + static-number: 0 + delay-on-join-milliseconds: 0 + scoreboards: + scoreboard-1.20.3+: + title: "<#E0B11E>MyServer" + display-condition: "%player-version-id%>=765;%bedrock%=false" # Only display it to players using 1.20.3+ AND NOT bedrock edition + lines: + - "&7%date%" + - "%animation:MyAnimation1%" + - "&6Online:" + - "* &eOnline&7:||%online%" + - "* &eCurrent World&7:||%worldonline%" + - "* &eStaff&7:||%staffonline%" + - "" + - "&6Personal Info:" + - "* &bRank&7:||%group%" + - "* &bPing&7:||%ping%&8ms" + - "* &bWorld&7:||%world%" + - "%animation:MyAnimation1%" + scoreboard: + title: "<#E0B11E>MyServer" + lines: + - "&7%date%" + - "%animation:MyAnimation1%" + - "&6Online:" + - "* &eOnline&7: &f%online%" + - "* &eCurrent World&7: &f%worldonline%" + - "* &eStaff&7: &f%staffonline%" + - "" + - "&6Personal Info:" + - "* &bRank&7: &f%group%" + - "* &bPing&7: &f%ping%&8ms" + - "* &bWorld&7: &f%world%" + - "%animation:MyAnimation1%" + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Layout +layout: + enabled: false + direction: COLUMNS + default-skin: mineskin:383747683 + enable-remaining-players-text: true + remaining-players-text: '... and %s more' + empty-slot-ping-value: 1000 + layouts: + default: + fixed-slots: + - '1|&3Website&f:' + - '2|&bmyserver.net' + - '3|&8&m ' + - '4|&3Name&f:' + - '5|&b%player%' + - '7|&3Rank&f:' + - '8|Rank: %group%' + - '10|&3World&f:' + - '11|&b%world%' + - '13|&3Time&f:' + - '14|&b%time%' + - '21|&3Teamspeak&f:' + - '22|&bts.myserver.net' + - '23|&8&m ' + - '41|&3Store&f:' + - '42|&bshop.myserver.net' + - '43|&8&m ' + groups: + staff: + condition: permission:tab.staff + slots: + - 24-40 + players: + slots: + - 44-80 + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Ping-Spoof +ping-spoof: + enabled: false + value: 0 + +placeholders: + date-format: "dd.MM.yyyy" + time-format: "[HH:mm:ss / h:mm a]" + time-offset: 0 + register-tab-expansion: false + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Placeholder-output-replacements +placeholder-output-replacements: + "%essentials_vanished%": + "yes": "&7| Vanished" + "no": "" + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Conditional-placeholders +conditions: + nick: # use it with %condition:nick% + conditions: + - "%player%=%essentials_nickname%" + yes: "%player%" + no: "~%essentials_nickname%" + +placeholder-refresh-intervals: + default-refresh-interval: 500 + "%server_uptime%": 1000 + "%server_tps_1_colored%": 1000 + "%server_unique_joins%": 5000 + "%player_health%": 200 + "%player_ping%": 1000 + "%vault_prefix%": 1000 + "%rel_factionsuuid_relation_color%": 1000 + +# assigning groups by permission nodes instead of taking them from permission plugin +assign-groups-by-permissions: false + +# if the option above is true, all groups are taken based on permissions and the one higher in this list is used as primary +# Warning! This is not sorting list and has nothing to do with sorting players in tablist! +primary-group-finding-list: + - Owner + - Admin + - Mod + - Helper + - default + +# Refresh interval (in milliseconds) of: +# - Permission checks in conditions / sorting +# - Group retrieving from permission plugin for sorting / per-group properties +# - Prefix/suffix placeholders taking data from permission plugin +permission-refresh-interval: 1000 + +# Unlocks extra console messages +debug: false + +# https://github.com/NEZNAMY/TAB/wiki/MySQL +mysql: + enabled: false + host: 127.0.0.1 + port: 3306 + database: tab + username: user + password: password + useSSL: true + +proxy-support: + enabled: true + # Supported types: PLUGIN, REDIS, RABBITMQ + type: PLUGIN + plugin: + # Compatible plugins: RedisBungee + # If enabled and compatible plugin is found, hook is enabled to work with proxied players + name: RedisBungee + redis: + url: 'redis://:password@localhost:6379/0' + rabbitmq: + exchange: 'plugin' + url: 'amqp://guest:guest@localhost:5672/%2F' + +######################################################################## +# BUKKIT ONLY - THE FOLLOWING SECTION IS ONLY FOR BACKEND INSTALLATION # +######################################################################## + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Per-world-playerlist +per-world-playerlist: + enabled: false + # players with tab.staff will always see all players + allow-bypass-permission: false + # players in these worlds will always see all players + ignore-effect-in-worlds: + - ignoredworld + - build + shared-playerlist-world-groups: + lobby: + - lobby1 + - lobby2 + minigames: + - paintball + - bedwars + +compensate-for-packetevents-bug: false + +##################################################################### +# PROXY ONLY - THE FOLLOWING SECTION IS ONLY FOR PROXY INSTALLATION # +##################################################################### + +# https://github.com/NEZNAMY/TAB/wiki/Feature-guide:-Global-playerlist +global-playerlist: + enabled: false + display-others-as-spectators: false + display-vanished-players-as-spectators: true + isolate-unlisted-servers: false + update-latency: false + spy-servers: + - spyserver1 + - spyserver2 + server-groups: + lobbies: + - lobby1 + - lobby2 + group2: + - server1 + - server2 + +# Take permissions and groups from backend server instead of proxy +use-bukkit-permissions-manager: false + +# Sometimes server might be using offline uuids in tablist instead of online, such as disabling waterfall's tablist rewrite option +# If you experience tablist formatting not working, toggle this option (set it to opposite value) +# Only affects proxies with online mode enabled +use-online-uuid-in-tablist: true \ No newline at end of file diff --git a/src/plugins/TAB/groups.yml b/src/plugins/TAB/groups.yml new file mode 100644 index 0000000..50da95d --- /dev/null +++ b/src/plugins/TAB/groups.yml @@ -0,0 +1,25 @@ +#Owner: +# tabprefix: "&0&l[&a&lOwner&0&l] &a" +# tagprefix: "&2&lOwner &a" +Player: + tabprefix: "&0&l[&7&lPlayer&0&l] &3" + tagprefix: "&2&lPlayer &3" +example_group: + header: + - "This is an example of per-group header/footer" + footer: + - "applied to a group" + + # default settings for all groups, all groups will take properties from this section unless player's primary group overrides a specific setting +_DEFAULT_: + tabprefix: "%luckperms-prefix%" + tagprefix: "%luckperms-prefix%" + customtabname: "%player%" + tabsuffix: "%luckperms-suffix%" + tagsuffix: "%luckperms-suffix%" + +per-world: + world1: + Owner: + tabprefix: "&0&l[&a&lOwner&0&l] &a" + tagprefix: "&2&lOwner &a" \ No newline at end of file diff --git a/src/plugins/TAB/messages.yml b/src/plugins/TAB/messages.yml new file mode 100644 index 0000000..971a8b0 --- /dev/null +++ b/src/plugins/TAB/messages.yml @@ -0,0 +1,73 @@ +announce-command-usage: "Usage: /tab announce \nCurrently supported types: &lbar, scoreboard" +bossbar-feature-not-enabled: "&cThis command requires the bossbar feature to be enabled." +bossbar-announce-command-usage: "Usage: /tab announce bar " +bossbar-not-found: "&cNo bossbar found with the name \"%name%\"" +bossbar-already-announced: "&cThis bossbar is already being announced" +group-data-removed: "&3[TAB] All data has been successfully removed from group &e%group%" +group-value-assigned: "&3[TAB] %property% '&r%value%&r&3' has been successfully assigned to group &e%group%" +group-value-removed: "&3[TAB] %property% has been successfully removed from group &e%group%" +user-data-removed: "&3[TAB] All data has been successfully removed from player &e%player%" +user-value-assigned: "&3[TAB] %property% '&r%value%&r&3' has been successfully assigned to player &e%player%" +user-value-removed: "&3[TAB] %property% has been successfully removed from player &e%player%" +parse-command-usage: "Usage: /tab parse " +send-command-usage: "Usage: /tab send \nCurrently supported types: &lbar" +send-bar-command-usage: "Usage: /tab send bar " +team-feature-required: "This command requires scoreboard teams feature enabled" +collision-command-usage: "Usage: /tab setcollision " +no-permission: "&cI'm sorry, but you do not have permission to perform this command. Please contact the server administrators if you believe that this is in error." +command-only-from-game: "&cThis command must be ran from the game" +player-not-online: "&cNo online player found with the name \"%player%\"" +invalid-number: "\"%input%\" is not a number!" +scoreboard-feature-not-enabled: "&4This command requires the scoreboard feature to be enabled." +scoreboard-announce-command-usage: "Usage: /tab scoreboard announce " +scoreboard-not-found: "&cNo scoreboard found with the name \"%name%\"" +reload-success: "&3[TAB] Successfully reloaded" +reload-fail-file: "&3[TAB] &4Failed to reload, file %file% has broken syntax. Check console for more info." +scoreboard-toggle-on: "&2Scoreboard enabled" +scoreboard-toggle-off: "&7Scoreboard disabled" +bossbar-toggle-on: "&2Bossbar is now visible" +bossbar-toggle-off: "&7Bossbar is no longer visible. Magic!" +scoreboard-show-usage: "Usage: /tab scoreboard show [player]" +bossbar-not-marked-as-announcement: "&cThis bossbar is not marked as an announcement bar and is therefore already displayed permanently (if display condition is met)" +bossbar-announcement-success: "&aAnnouncing bossbar &6%bossbar% &afor %length% seconds." +bossbar-send-success: "&aSending bossbar &6%bossbar% &ato player &6%player% &afor %length% seconds." +help-menu: + - "&m " + - " &8>> &3&l/tab reload" + - " - &7Reloads plugin and config" + - " &8>> &3&l/tab &9group&3/&9player &3 &9 &3" + - " - &7Do &8/tab group/player &7to show properties" + - " &8>> &3&l/tab parse " + - " - &7Test if a placeholder works" + - " &8>> &3&l/tab debug [player]" + - " - &7displays debug information about player" + - " &8>> &3&l/tab cpu" + - " - &7shows CPU usage of the plugin" + - " &8>> &3&l/tab group/player remove" + - " - &7Clears all data about player/group" + - "&m " +mysql-help-menu: + - "&6/tab mysql upload - uploads data from files to mysql" + - "&6/tab mysql download - downloads data from mysql to files" +mysql-fail-not-enabled: "&cCannot download/upload data from/to MySQL, because it's disabled." +mysql-fail-error: "MySQL download failed due to an error. Check console for more info." +mysql-download-success: "&aMySQL data downloaded successfully." +mysql-upload-success: "&aMySQL data uploaded successfully." +scoreboard-help-menu: + - "/tab scoreboard [on/off/toggle] [player] [options]" + - "/tab scoreboard show [player]" + - "/tab scoreboard announce " +bossbar-help-menu: + - "/tab bossbar [on/off/toggle] [player] [options]" + - "/tab bossbar send [player]" + - "/tab bossbar announce " +nametag: + help-menu: + - "/tab nametag [player] [-s] - Toggles nametag of specified player" + - "/tab nametag [player] [viewer] [-s] - Toggles nametag VIEW of specified player on other player(s)" + feature-not-enabled: "&cThis command requires nametag feature to be enabled." + view-hidden: "&aNametags of all players were hidden to you" + view-shown: "&aNametags of all players were shown to you" + player-hidden: "&aYour nametag was hidden" + player-shown: "&aYour nametag was shown" + no-arg-from-console: "&cYou need to specify player if running this command from the console" \ No newline at end of file diff --git a/src/plugins/TAB/users.yml b/src/plugins/TAB/users.yml new file mode 100644 index 0000000..e69de29 diff --git a/src/plugins/VelocityScoreboardAPI-1.0.0.jar b/src/plugins/VelocityScoreboardAPI-1.0.0.jar new file mode 100644 index 0000000..b4869de --- /dev/null +++ b/src/plugins/VelocityScoreboardAPI-1.0.0.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cfab7cf8a8dfdf14ae63cc7312466bf846b02967904723fdb575e30b920d1c6 +size 580548 diff --git a/src/plugins/velocity-scoreboard-api/config.yml b/src/plugins/velocity-scoreboard-api/config.yml new file mode 100644 index 0000000..2fb2727 --- /dev/null +++ b/src/plugins/velocity-scoreboard-api/config.yml @@ -0,0 +1,13 @@ +# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +# ┃ VelocityScoreboardAPI ┃ +# ┃ Config File ┃ +# ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ +# ┃ This file is used to configure the VelocityScoreboardAPI plugin. +# ┃ This plugin is intended to be used with Velocity player list plugins such as TAB or Velocitab, +# ┃ and should be installed on your Velocity proxy server alongside one of those plugins. +# ┗╸ GitHub: https://github.com/NEZNAMY/VelocityScoreboardAPI/ + +# Whether scoreboard API events should be fired +call_scoreboard_events: true +# Whether to log invalid packets received from downstream servers +print_invalid_downstream_packet_warnings: true -- 2.45.2