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/JustOneMore-3.0.0.jar b/src/plugins/JustOneMore-3.0.0.jar new file mode 100644 index 0000000..e598074 --- /dev/null +++ b/src/plugins/JustOneMore-3.0.0.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe30ebe8a9bf1f0c7c0f63034fb2ef9af4ddc67734d648a10112be94e2939d84 +size 1843788 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..6244dde --- /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: false + # + # 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: 0 + # + # 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