From 42c3aa4fc54f946e32d8605bd60bb53f8fa1b7e9 Mon Sep 17 00:00:00 2001 From: apathy Date: Wed, 16 Jul 2025 13:31:22 +0300 Subject: [PATCH 1/4] 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 From 4316d2a1ebbb6ad853fbb515bab37c156c75777e Mon Sep 17 00:00:00 2001 From: apathy Date: Wed, 16 Jul 2025 13:48:07 +0300 Subject: [PATCH 2/4] add motd --- .dockerignore | 2 + .gitignore | 2 + .../AdvancedServerList-Velocity-5.6.0.jar | 3 + src/plugins/advancedserverlist/config.yml | 150 ++++++++++++ .../advancedserverlist/profiles/default.yml | 215 ++++++++++++++++++ 5 files changed, 372 insertions(+) create mode 100644 src/plugins/AdvancedServerList-Velocity-5.6.0.jar create mode 100644 src/plugins/advancedserverlist/config.yml create mode 100644 src/plugins/advancedserverlist/profiles/default.yml diff --git a/.dockerignore b/.dockerignore index 5f45035..bf754df 100644 --- a/.dockerignore +++ b/.dockerignore @@ -6,3 +6,5 @@ src/plugins/luckperms/libs .crowdin src/plugins/pv-addon-groups/groups.json + +src/plugins/advancedserverlist/playercache.json diff --git a/.gitignore b/.gitignore index bb9ca75..9f56f80 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,5 @@ src/plugins/luckperms/libs .crowdin src/plugins/pv-addon-groups/groups.json + +src/plugins/advancedserverlist/playercache.json diff --git a/src/plugins/AdvancedServerList-Velocity-5.6.0.jar b/src/plugins/AdvancedServerList-Velocity-5.6.0.jar new file mode 100644 index 0000000..1ff8a95 --- /dev/null +++ b/src/plugins/AdvancedServerList-Velocity-5.6.0.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd4b61a7e29cc27fe6b80b5dd85833377df56fc40423e3f3e1e2cd5a2c3cc3eb +size 4428979 diff --git a/src/plugins/advancedserverlist/config.yml b/src/plugins/advancedserverlist/config.yml new file mode 100644 index 0000000..39560c9 --- /dev/null +++ b/src/plugins/advancedserverlist/config.yml @@ -0,0 +1,150 @@ +# +# Used for when AdvancedServerList doesn't have a cached player to use for player placeholders. +# +unknownPlayer: + # + # The name to use. + # + # Default: Anonymous + # + name: "Anonymous" + # + # The UUID to use. + # + # Default: 606e2ff0-ed77-4842-9d6c-e1d3321c7838 (UUID of MHF_Question). + # + uuid: "606e2ff0-ed77-4842-9d6c-e1d3321c7838" + +# +# Should the Caching of players be disabled? +# +# When set to true will no player joining the server be cached and saved to the playercache.json file. +# This will also cause placeholders using a cached player such as ${player name} to no longer work. +# +# Default: false +# +disableCache: false + +# +# Should AdvancedServerList check for new versions? +# +# When set to true will AdvancedServerList look for a new update on startup and repeat that check +# every 12 hours after that. +# It uses Modrinth to check for updates. +# +# Default: true +# +checkUpdates: true + +# +# Should debug mode be enabled? +# +# Additional messages prefixed with [DEBUG] will be printed in the console when this option is set +# to true. +# Enabling this option is only recommended for when you have problems, or have been told to enable +# it by the plugin developer, as it can otherwise spam your console. +# +# Default: false +# +debug: false + +# +# Should the "ASL" ASCI art be displayed on plugin startup? +# Setting this to false will hide the banner. +# +# Default: true +# +printBanner: true + +# +# Sets how long Favicons should be cached. Value is in minutes with the lowest possible value being 1. +# +# This option only affects dynamic favicons created from a placeholder or URL. Local favicons will +# not be affected. +# +# Default: 1 +# +faviconCacheTime: 1 + +# +# Sets how AdvancedServerList should handle the size and positioning of images for favicons. +# +# Available options: +# +# - resize: Resizes the image to 64x64 pixels if it isn't these dimensions already. +# - center: Doesn't resize the image, but instead tries to center it as good as possible in a 64x64 area. +# - none: Doesn't resize the image and leaves it positioned at x 0 and y 0 (top-left) of the 64x64 area. +# +# Setting any not listed option or leaving this blank/removing it sets the option to resize. +# +faviconStrategy: 'resize' + +# +# Options to disable while the Maintenance Plugin is present and Maintenance Mode is active. +# +# Should an option be removed from this section will AdvancedServerList continue to set it, as if +# the Maintenance plugin isn't active. +# +disableDuringMaintenance: + # + # Whether MOTD changing should be disabled while Maintenance mode is active. + # + # Default: true + # + motd: true + # + # Whether favicon changing should be disabled while Maintenance mode is active. + # + # Default: true + # + favicon: true + # + # Whether player hiding should be disabled while Maintenance mode is active. + # + # Default: true + # + hidePlayers: true + # + # Whether hiding player list on hover should be disabled while Maintenance mode is active. + # + # Default: true + # + hidePlayersHover: true + # + # Whether player count text changing should be disabled while Maintenance mode is active. + # + # Default: true + # + playerCountText: true + # + # Whether player count hover changing should be disabled while Maintenance mode is active. + # + # Default: true + # + playerCountHover: true + # + # Whether the extra players feature should be disabled while Maintenance mode is active. + # + # Default: true + # + extraPlayers: true + # + # Whether the max players feature should be disabled while Maintenance mode is active. + # + # Default: true + # + maxPlayers: true + # + # Whether the online players feature should be disabled while Maintenance mode is active. + # + # Default: true + # + onlinePlayers: true + +# +# DO NOT EDIT! +# +# This is used internally to determine if the config needs to be migrated. +# Changing or even removing this option could result in your config being broken. +# +configVersion: 9 \ No newline at end of file diff --git a/src/plugins/advancedserverlist/profiles/default.yml b/src/plugins/advancedserverlist/profiles/default.yml new file mode 100644 index 0000000..3b6b184 --- /dev/null +++ b/src/plugins/advancedserverlist/profiles/default.yml @@ -0,0 +1,215 @@ +# +# Set the priority of this profile. +# If there are multiple profiles (files) will they be sorted by priority, starting with highest. +# +# Read more: https://asl.andre601.ch/profiles/#priority +# +priority: 0 + +# +# Set condition(s) that should return true to display this profile. +# This allows you to create profiles to only show for specific scenarios (i.e. player is banned). +# +# 'AND'/'&&' and 'OR'/'||' can be used to chain together multiple conditions. +# +# Removing the condition option or setting it to an empty String will be treated as a true condition being returned. +# +# Read more: https://asl.andre601.ch/profiles/#condition +# +condition: '' + +# +# Set one or multiple profiles. +# +# A profile can contain the same options as used in the file itself, except for priority and condition. +# If multiple entries are present, a random one will be selected. Any options set in the selected profile will override +# any existing option in the file. +# +# Example: The below profile configuration will randomly change the MOTD between two types, but keep the Hover text +# the same. +# +# When not present or empty (profiles: []), no profiles will be used and global options from the file will be used instead. +# +# Read more: https://asl.andre601.ch/profiles/#profiles +# +profiles: + - motd: ['Welcome to the club Bebrashield:re', 'your mom is pretty'] + - motd: + - 'Bebrashield 2.0 also try Bebrashield:re' + - 'you look like Billy' + +# +# Set the "Message of the day" to display. +# This option supports RGB colors for 1.16+ Servers and clients. More advanced MiniMessage features such as +# can be used for further styling the text. +# +#
can be put at the start of a line to have AdvancedServerList automatically center the text as good as +# possible. +# +# Only the first two lines will be considered and any additional one is ignored. +# +# When not present or empty (motd: []), no MOTD will be set. +# +# Read more: https://asl.andre601.ch/profiles/#motd +# +motd: + - 'First Line' + - 'Second Line' + +# +# Set the Favicon (image on the left of a server entry) to display. +# This option supports three types of input: +# +# 1. Filename, including the .png extension, matching a filename in the favicons folder of the plugin. +# - 'random' can be used to have AdvancedServerList select a random image from the favicons folder every time +# the server is pinged. +# 3. URL pointing to an image. +# 4. Player name, UUID or a placeholder that returns either. +# - https://mc-heads.net will be used to retrieve an image of the provided name/UUID. +# +# Any image below or above 64x64 pixels will be resized according to the faviconResizeMode option in the config.yml. +# +# If not present or empty (favicon: ''), defaults to not modifying the favicon. +# +# Read more: https://asl.andre601.ch/profiles/#favicon +# +# "The favicon isn't showing!" +# This is a side effect of using either URLs or player names/UUIDs for the favicon. +# These types require AdvancedServerList to create a new favicon object from scratch. This action takes a significant +# amount of time, which can cause the server to show with a huge ping. +# To avoid this is this action performed asynchronously. This means that the plugin doesn't wait for the favicon to +# be created before continuing, which can result in no favicon being available when it is done handling the ping. +# This should only happen for the first ping of a player and subsequent pings should display the favicon, if the +# pings are done within the configured cache time (See 'faviconCacheTime' in the config.yml). +# +favicon: '' + +# +# Contains options for modifying the player count (Text displaying /). +# +# Read more: https://asl.andre601.ch/profiles/#playercount +# +playerCount: + # + # Set whether the Player count should be hidden. + # When set to true, the player count will be displayed as '???' instead of the usual '/' and all other + # playerCount options, except for extraPlayers and maxPlayers, will be ignored. + # + # If not present, defaults to false. + # + # Read more: https://asl.andre601.ch/profiles/#hideplayers + # + hidePlayers: false + # + # Set whether the List of players is shown when hovering over the player count. + # Setting this to true will also make the plugin ignore the hover option below. + # + # If not present, defaults to false. + # + # Read more: https://asl.andre601.ch/profiles/#hideplayershover + # + hidePlayersHover: false + # + # Set the lines shown when the player hovers over the player count. + # Unlike the MOTD option does this one only support basic color and formatting codes. Any RGB colors will be + # down-sampled to the nearest matching color. + # + # If not present or empty (hover: []), defaults to not modifying the hover. + # + # Read more: https://asl.andre601.ch/profiles/#hover + # + hover: + - 'Чё' + - 'Вылупился' + # + # Set the text that should be displayed instead of the default '/' text. + # + # Using this option will show the server as "outdated" to the client (Have the ping icon crossed out). + # This cannot be fixed and would require Mojang to change stuff. + # + # If not present or empty (text: ''), defaults to not modifying the text. + # + # Read more: https://asl.andre601.ch/profiles/#text + # + text: '' + # + # The extraPlayers feature allows to set a number that should be added to the current online players and then be + # used as the "max" player count. + # + # Using this feature will modify the ${server playersMax} placeholder, except for usage in the condition option. + # + # Read more: https://asl.andre601.ch/profiles/#extraplayers + # + extraPlayers: + # + # Set whether the extraPlayers feature should be enabled or not. + # When set to true, the max players count will be modified to be the number of online players with the 'amount' + # value added to it. + # + # If not present, defaults to false. + # + # Read more: https://asl.andre601.ch/profiles/#extraplayers-enabled + # + enabled: true + # + # Set the number that should be added to the online player count to then use as the new max player count. + # Placeholders resolving to numbers can be used here. + # + # Example: Setting this to 1 will result in ${server playersMax} displaying 11 while 10 players are online, + # 9 when 8 are online and so on. + # + # If not present, defaults to 0. + # + # Read more: https://asl.andre601.ch/profiles/#extraplayers-amount + # + amount: 1 + # + # The maxPlayers feature allows to set a number to use as the max player count to display. + # + # Using this feature will modify the ${server playersMax} placeholder, except for usage in the condition option. + # + # Read more: https://asl.andre601.ch/profiles/#maxplayers + # + maxPlayers: + # + # Set whether the maxPlayers feature should be enabled or not. + # When set to true, the max player count will be set to the 'amount' value. + # + # If not present, defaults to false. + # + # Read more: https://asl.andre601.ch/profiles/#maxplayers-enabled + # + enabled: false + # + # Set the number that should be used as the new max players count. + # Placeholders resolving to numbers can be used here. + # + # If not present, defaults to 0. + # + # Read more: https://asl.andre601.ch/profiles/#maxplayers-amount + # + amount: 0 + # + # The onlinePlayers feature allows to set a number to use as the online player count to display. + # + # Read more: https://asl.andre601.ch/profiles/#onlineplayers + # + onlinePlayers: + # + # Set whether the onlinePlayers feature should be enabled or not. + # When set to true, the max player count will be set to the 'amount' value. + # + # If not present, defaults to false. + # + # Read more: https://asl.andre601.ch/profiles/#onlineplayers-enabled + # + enabled: false + # + # Set the number that should be used as the new online players count. + # Placeholders resolving to numbers can be used here. + # + # If not present, defaults to current online player count. + # + # Read more: https://asl.andre601.ch/profiles/#onlineplayers-amount + # + amount: 0 \ No newline at end of file From 53ae9513a5b08f7525e83b42a653c69d96b9b37d Mon Sep 17 00:00:00 2001 From: cuqmbr Date: Sun, 20 Jul 2025 21:43:25 +0300 Subject: [PATCH 3/4] add emotecraft --- src/plugins/emotecraft-2.4.10-velocity.jar | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 src/plugins/emotecraft-2.4.10-velocity.jar diff --git a/src/plugins/emotecraft-2.4.10-velocity.jar b/src/plugins/emotecraft-2.4.10-velocity.jar new file mode 100644 index 0000000..505223e --- /dev/null +++ b/src/plugins/emotecraft-2.4.10-velocity.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70627849c65ab5f8ee590b3cac668cbb5fdb3bed35a0c8739867a415c1eeaa05 +size 634362 From 7811414d4e6b1067d55cc5c268c3e33e4c6670f1 Mon Sep 17 00:00:00 2001 From: cuqmbr Date: Sun, 20 Jul 2025 23:24:22 +0300 Subject: [PATCH 4/4] add and configure ViaVersion --- src/plugins/ViaVersion-5.4.1.jar | 3 + src/plugins/viaversion/config.yml | 192 ++++++++++++++++++++++++++++++ 2 files changed, 195 insertions(+) create mode 100644 src/plugins/ViaVersion-5.4.1.jar create mode 100644 src/plugins/viaversion/config.yml diff --git a/src/plugins/ViaVersion-5.4.1.jar b/src/plugins/ViaVersion-5.4.1.jar new file mode 100644 index 0000000..f1ea7c4 --- /dev/null +++ b/src/plugins/ViaVersion-5.4.1.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87975db43295cf235f8729d01854fc11f06ccfe9a557d0006f280b3db41a6a47 +size 5655485 diff --git a/src/plugins/viaversion/config.yml b/src/plugins/viaversion/config.yml new file mode 100644 index 0000000..c42976a --- /dev/null +++ b/src/plugins/viaversion/config.yml @@ -0,0 +1,192 @@ +# Thanks for downloading ViaVersion +# Ensure you look through all these options +# If you need help: +# Discord - https://viaversion.com/discord +# Docs - https://docs.viaversion.com +# +#----------------------------------------------------------# +# GLOBAL OPTIONS # +#----------------------------------------------------------# +# +# Should ViaVersion check for updates? +# The following option will delay the tab complete request in x ticks if greater than 0, if other tab-complete is received, the previous is cancelled +1_13-tab-complete-delay: 0 +# If the above is true, should we automatically team players until you do? +auto-team: true +# Change the blocked disconnect message +block-disconnect-msg: You are using an unsupported Minecraft version! +# Block specific Minecraft protocol version numbers. +# List of all Minecraft protocol versions: https://minecraft.wiki/w/Protocol_version, or use a generator: https://via.krusic22.com +block-protocols: [] +# Easier to configure alternative to 'block-protocols'. Uses readable version strings with possible '<' and '>' prefixes. +# An example to block 1.16.4, everything below 1.16, as well as everything above 1.17.1 would be: ["<1.16", "1.16.4", ">1.17.1"] +# You can use both this and the block-protocols option at the same time as well. +block-versions: +- <1.21 +# If your boss bar flickers on 1.9+, set this to 'true'. It will keep all boss bars on 100% (not recommended) +bossbar-anti-flicker: false +# Should we patch boss bars so they work? (Default: true, disable if you're having issues) +bossbar-patch: true +# +# Caches light until chunks are unloaded to allow later chunk update packets as opposed to instantly uncaching when the first chunk data is sent. +# Only disable this if you know what you are doing. +cache-1_17-light: true +# Tries to cancel block break/place sounds sent by 1.8 servers to 1.9+ clients to prevent them from playing twice +cancel-block-sounds: true +check-for-updates: true +# Fix 1.9+ clients not rendering the far away chunks and improve chunk rendering when moving fast (Increases network usage and decreases client fps slightly) +chunk-border-fix: false +# 1.13 introduced new auto complete which can trigger "Kicked for spamming" for servers older than 1.13, the following option will disable it completely. +disable-1_13-auto-complete: false +# +# Determines the value sent to 1.19+ clients on join if currently not accessible by ViaVersion. +# It is not recommended to fake this value if your server is running 1.19 or later, as 1.20.5 have stricter chat handling and may get kicked otherwise. +enforce-secure-chat: false +# Fixes walk animation not shown when health is set to Float.NaN +fix-1_14-health-nan: true +# +# Fixes 1.21+ clients on 1.20.5 servers placing water/lava buckets at the wrong location when moving fast, NOTE: This may cause issues with anti-cheat plugins. +fix-1_21-placement-rotation: true +# Infested blocks are instantly breakable for 1.13+ clients, resulting in them being unable to break them on sub 1.13 servers. This remaps them to their normal stone variants +fix-infested-block-breaking: true +# For 1.13 clients the smallest (1 layer) snow doesn't have collisions, this will send these as 2 snowlayers for 1.13+ clients to prevent them bugging through them +fix-low-snow-collision: false +# Fixes 1.14+ clients on sub 1.14 servers having a light value of 0 for non-full blocks. +fix-non-full-blocklight: true +# When activated with serverside-blockconnections, flower parts with blocks above will be sent as stems +# Useful for lobbyservers where users can't build and those stems are used decoratively +flowerstem-when-block-above: false +# +# Force 1.17+ client to accept the server resource pack; they will automatically disconnect if they decline. +forced-use-1_17-resource-pack: false +# +# Handles items with invalid count values (higher than max stack size) on 1.20.3 servers. +handle-invalid-item-count: false +# +# Hides scoreboard numbers for 1.20.3+ clients on older server versions. +hide-scoreboard-numbers: false +# Should we enable our hologram patch? +# If they're in the wrong place, enable this +hologram-patch: false +# This is the offset, should work as default when enabled. +hologram-y: -0.96 +# +# Ignores incoming plugin channel messages of 1.16+ clients with channel names longer than 32 characters. +# CraftBukkit had this limit hardcoded until 1.16, so we have to assume any server/proxy might have this arbitrary check present. +ignore-long-1_16-channel-names: true +# Allows 1.9+ left-handedness (main hand) on 1.8 servers +left-handed-handling: true +# +# Get the world names which should be returned for each vanilla dimension +map-1_16-world-names: + overworld: minecraft:overworld + nether: minecraft:the_nether + end: minecraft:the_end +# +#----------------------------------------------------------# +# GLOBAL PACKET LIMITER # +#----------------------------------------------------------# +# THIS FEATURE IS DISABLED ON 1.17.1+ PAPER SERVERS, SINCE IT HAS A BETTER PACKET-LIMITER INBUILT +# +# Packets Per Second (PPS) limiter (Use -1 on max-pps and tracking-period to disable) +# Clients by default send around 20-90 packets per second. +# +# What is the maximum per second a client can send (Use %pps to display their pps) +# Use -1 to disable. +max-pps: 800 +max-pps-kick-msg: You are sending too many packets! +# If this setting is active, the main hand is used instead of the off-hand to trigger the blocking of the player. +# With the main hand, the blocking starts way faster. +# (Requires "show-shield-when-sword-in-hand" to be disabled) +no-delay-shield-blocking: false +# Should we disable piston animation for 1.11/1.11.1 clients? +# In some cases, when firing lots of pistons, it crashes them. +piston-animation-patch: false +# +#----------------------------------------------------------# +# 1.9+ CLIENTS ON 1.8 SERVERS OPTIONS # +#----------------------------------------------------------# +# +# No collide options, these allow you to configure how collision works. +# Do you want us to prevent collision? +prevent-collision: true +# When activated, only the most important blocks are stored in the blockstorage. (fences, glass panes etc. won't connect to solid blocks) +reduce-blockstorage-memory: false +# If you use ProtocolLib, we can't reload without kicking the players. +# (We don't suggest using reload either, use a plugin manager) +# You can customize the message we kick people with if you use ProtocolLib here. +reload-disconnect-msg: Server reload, please rejoin! +# Should we replace extended pistons to fix 1.10.1 (Only on chunk loading)? +replace-pistons: false +# What id should we replace with, default is air. (careful of players getting stuck standing on them) +replacement-piston-id: 0 +# The message to be displayed at the prompt when the 1.17+ client receives the server resource pack. +resource-pack-1_17-prompt: '' +# Send the supported versions with the Status (Ping) response packet +send-supported-versions: false +# +# Enable serverside block-connections for 1.13+ clients - all the options in this section are built around this option +serverside-blockconnections: true +# When enabled, 1.9+ will be able to block by using shields +shield-blocking: true +# If this setting is active, the shield will appear immediately for 1.9+ when you hold a sword in your main hand. +# The shield disappears when you switch to another item. +# (Requires "shield-blocking" to be enabled) +show-shield-when-sword-in-hand: false +# Enable player tick simulation, this fixes eating, drinking, nether portals. +simulate-pt: true +# We warn when there's an error converting item/block or component/nbt data over versions, should we suppress these? (Only suggested if spamming) +suppress-conversion-warnings: false +# When enabled if certain entity data can't be read, we won't tell you about it +suppress-metadata-errors: false +# This can be disabled for debugging purposes if text in chat/entities/items shows an error tag. +suppress-text-component-conversion-warnings: true +# Should we use prefix for team color on 1.13 and above clients? +team-colour-fix: true +# The kick message sent if the user hits the max packets per second. +tracking-max-kick-msg: You are sending too many packets, :( +# How many warnings over the interval can we have +# This can never be higher than "tracking-period"? +tracking-max-warnings: 4 +# +# We can also kick them if over a period they send over a threshold a certain amount of times. +# +# Period to track (in seconds) +# Use -1 to disable. +tracking-period: 6 +# How many packets per second count as a warning? +tracking-warning-pps: 120 +# +# If disabled, tamed cats will be displayed as ocelots to 1.14+ clients on 1.13 servers. Otherwise, ocelots (tamed and untamed) will be displayed as cats. +translate-ocelot-to-cat: false +# In 1.14 the client page limit has been upped to 100 (from 50). Some anti-exploit plugins ban when clients go higher than 50. This option cuts edited books to 50 pages. +truncate-1_14-books: false +# Should 1.15+ clients respawn instantly / without showing a death screen? +use-1_15-instant-respawn: false +# This will show the new effect indicator in the top-right corner for 1.9+ players. +use-new-effect-indicator: true +# +#----------------------------------------------------------# +# VELOCITY OPTIONS # +#----------------------------------------------------------# +# +# Velocity allows you to have different server versions inside. +# Instead of you entering all the versions of these servers, we can ping them. +# +# What interval would you like us to ping at? (in seconds) +# Use -1 to disable. +velocity-ping-interval: 60 +# If the above is enabled, should we save the info to the config (in the section below) +velocity-ping-save: true +# To get a server's protocol, ViaVersion will do the following: +# Look for the server in the following section, then look for the last ping if velocity-ping is enabled +# otherwise use default. +# +# The format for the following is: +# servername: protocolversion +# You can find protocol ids on https://minecraft.wiki/w/Protocol_version +# It will fall back to the default option if none found. +velocity-servers: + default: 393 +# Vines that are not connected to blocks will be mapped to air, else 1.13+ would still be able to climb up on them. +vine-climb-fix: false