[Bungee] PlayerBalancer (Vitamined Lobby Balancer)

 [Bungee] PlayerBalancer (Vitamined Lobby Balancer) 2.1.2.1

[Bungee] PlayerBalancer (Vitamined Lobby Balancer)
orn21kr-png.59433

PlayerBalancer is a BungeeCord plugin for setting up a network with multiple lobbies of different types. You can customize nearly everything of this plugin. You have lots of features, including commands to move across sections, kick handler (kick2lobby), server checking, section servers, target assignation, multiple providers and RedisBungee support along other things.

Features:
  • Balancer: Balances the load of your players on your sections. When a player connects to a server in other section, the plugin may move the player to other server in that section.
  • Kick Handler: Players that get kicked from a server can get moved to other servers. You can configure it so it only works when they get kicked with a certain message.
  • Fallback Command: Essentially /hub, /lobby. This command allows players to connect to the parent of the section they are currently in, or the principal if not in a section.
  • Server Checking: The plugin makes sure the server the player is going to be connected to is online. You can also make the plugin mark servers as non accessible when they have a certain motd.
  • Fallback Command: This command allows players to connect to the parent of the section they are connected to currently. You can also pass a number to the command to get connected to a specific server.
  • Section Command: Comparable to Slash Server. This command allows players to connect to a specific section. This section can have one or more servers.
  • Section Server: Creates a fake server on BungeeCord that is used to connect to a section by just connecting to that server, it shows the sum of players of the servers in that section.
  • Spigot Addon: This allows plugins on the spigot servers to access commands from PlayerBalancer (with /spb), it also includes a PlaceholderAPI placeholder (%balancer_playercount_section%) for a total of all the players connected to servers of a section.
  • Plugin API for developers to get access to data from the plugin, both from the spigot side and from the bungeecord side. This allows the included addon to work.
  • Very configurable, take a look at the configuration, you will see there are a lot of options for you to configure and more to come.
  • Great support, it's not me who says it, it's the users. I put a lot of effort on this resource. Contact me for any question or problem as long as they are related to this resource. You can find me on discord with Jamezrin#2360
  • Well optimized and tested on many networks, you can see the usage of this plugin at the statistics page (here)
  • You can suggest me more features if they are useful and not unrelated to the main goal of this plugin.
Commands:
  • The fallback command, it moves you from your current section to a server of the parent section.
  • The section command, a command you can set to a section and when it is executed you get connected to that section.
  • (/balancer) The plugin command, which allows you to safely reload the plugin and quickly upload the configuration of the plugin to pastebin to quickly get support.
  • (/section) The section management command, which allows you to make a player connect to a section, get info about a section and their servers and a list of sections with click events for enhancing use. This is the shown info when executing /section info.
screenshot_7-png.281738

Note: The administrative commands require you to have the permission "playerbalancer.admin"

Configuration:
Code (Text):

# PlayerBalancer Configuration (https://www.spigotmc.org/resources/10788/)
# Read the comments, they are a very important part of the configuration
# To get support send me a private message with a description of the problem and the config file
# To easily paste the config file (and other relevant files) use the command /balancer paste
# If the plugin has issues loading the configuration, try putting quotes around text

general {
# IMPORTANT! Set this to true after configuring the plugin!
enabled=false

# When true, the plugin will reload when you execute /greload
auto-reload=true

# When true, the plugin will get player counts from RedisBungee
redis-bungee=false

# When true, this plugin will print less messages when loading
silent=false

# When true, spigot plugins will be able to contact with this plugin
# Do not disable if you are using the addon!
plugin-messaging=true

# Do not modify this
version="2.1.2.1"
}

# Effectively remove (i.e comment) a message to disable it
# Supported variables are shown in the default messages
messages {
# connecting-server="&aConnecting to a {section} server" # this message is disabled by default!
connected-server="&aConnected to {server}"
invalid-input="&cThis is an invalid input type for this command"
misc-failure="&cCould not find a server to get connected to"
player-bypass="&cYou have not been moved because you have the playerbalancer.bypass permission"
player-kicked="&cYou have been kicked from &a{from} &cand you are being moved to &a{to}, reason: &a{reason}"
same-section="&cYou are already connected to a server on this section!"
unavailable-server="&cThis command cannot be executed on this server"
unknown-section="&aCould not find a section with that name"
}

features {
balancer {
# Here you have an example of what you can do with the sections
# The plugin will print out info telling you if your config is right or not
# If a section does not have a provider it will be inherit from the parent
# The best way to understand this is to play around with it
# You can use regex to match a set of servers instead of adding each server
# You can have as many sections as you want, there is no limit here
# When connecting to a server in a section, you get redirected

# Providers you can use:
# NONE: Returns no server (no one will be able to connect to this section)
# BALANCED: Returns a server between the ones with the least players online
# LOWEST: Returns the first server found with the least players online
# RANDOM: Returns a server selected by a RNG algorithm (random)
# PROGRESSIVE: Returns the first server found that is not full
# FILLER: Returns the server with the most players online that is not full
# EXTERNAL: Returns the server determined by a provider created by other plugin

sections {
auth-lobbies {
provider=RANDOM
servers=[
"Auth1",
"Auth2",
"Auth3"
]
}

general-lobbies {
parent="auth-lobbies"
servers=[
"Lobby[1-3]"
]
}

skywars-lobbies {
parent="general-lobbies"
provider=LOWEST
servers=[
"SWLobby1",
"SWLobby2",
"SWLobby3"
]
}

skywars-games {
parent="skywars-lobbies"
provider=FILLER
servers=["SW_A[1-5]", "SW_B[1-5]"]
section-server=playskywars
section-command {
name=skywars
permission=""
aliases=[]
}
}
}

# The principal section is very important for other features
# Normally set this to the section that has your main lobbies
principal-section="general-lobbies"

# When a player is not in any section, the player will go to the principal section
# This affects both the fallback command and kick handler features
default-principal=true

# Dummy sections can have servers from other non-dummy sections
# When a player connects to a dummy section, nothing will happen
dummy-sections=[]

# Reiterative sections remember the server the player connected to previously
# The plugin will keep connecting the player to that server until a change occurs
reiterative-sections=[]

# When true, section servers will show the sum of the players on all servers on that section
# Important: This will make some plugins think that your bungeecord has more players than it really does
show-players=true
}

# Pings servers to see if they are online or not and if they are accessible
server-checker {
enabled=true

# Use either CUSTOM or GENERIC, the first one generally works the best
tactic=CUSTOM

# The attempts before giving up on getting a server for a player
attempts=5

# The interval between every round of checks (in milliseconds)
interval=10000

# When true, the plugin will print useful info when a server gets checked
debug-info=false

# The descriptions that mark a server as non accessible
marker-descs=[
"Server is not accessible",
"Gamemode has already started"
]
}

# Connects a player to the parent of current section the player is connected to
fallback-command {
enabled=true

# Leave permission empty for no permission
command {
name=fallback
permission=""
aliases=[
lobby,
hub,
back
]
}

# Add sections here where you do not want this feature to work
excluded-sections=[]

# When true, players will not be able to get connected to sections that are parents of the principal section
restrictive=true

# You can override the behavior with rules, overriding the parent section
# This will set the section to go when you come from the section specified
rules {
section-from=section-to
}
}

# Connects a player to other section when kicked
kick-handler {
enabled=true

# When true, the reasons will work as a blacklist instead of a whitelist
# Blacklist: A player must be kicked with a reason that is NOT in the reasons
# Whitelist: A player must be kicked with a reason that is in the reasons
inverted=true

# The reasons that determine if a player is reconnected or not, supports regex
reasons=[]

# When true, players that are kicked while connecting to the proxy will be forced to reconnect to the principal section
force-principal=false

# Add sections here where you do not want this feature to work
excluded-sections=[]

# When true, players will not be able to get connected to sections that are parents of the principal section
restrictive=true

# When true, the plugin will print useful info when a player gets kicked
debug-info=false

# You can override the behavior with rules, overriding the parent section
# This will set the section to go when you come from the section specified
rules {
section-from=section-to
}
}

# Periodically adds servers that weren't there before the plugin loaded
server-refresh {
enabled=false

# The delay to the first refresh (in milliseconds)
delay=2000

# The interval between every refresh (in milliseconds)
interval=5000
}
}

If you find any questions while trying to understand the config, I will gladly explain whatever you do not understand or I can even configure it to match your network.

Developer API:


Statistics:
This plugin queries information about your server for statistical purposes, all the data is anonymous and you can opt-out by modifying the bStats config, learn more about this here
You can take a look at the statistics for this plugin here (old metrics) or here (new metrics)


Terms of Use:
  • You can only use it in networks of your property.
  • You cannot modify the plugin without my permission.
  • You cannot -Redacted- the binaries publicly, this is only for your use.
  • You will not open a dispute/chargeback without contacting me or spigot first, email them at [email protected]
  • Do not request support for things unrelated to this resource.

Latest reviews

Sup, may you give us update ?
OMG Thank You soooo much WifiSpy

Similar resources

5.00 star(s) 2 ratings
Downloads
51
Updated
Advanced Bungee Setup - Announcer ✸ Always-Online ✸ PlayerList (Serverlist) ✸ Votifier - 20% OFF Unreality
5.00 star(s) 1 ratings
Downloads
997
Updated
BlackSpigot General Chat
Rules Help Users
    B @ BeingImpossible: Promote your discord server Fast & Free ⚡ Check out: https://dscspot.lol/ get free members
    Top