⭐mBalancer - Powerful Network player balancer⭐
alpha-1✯TITLE || FALLBACK || MULTIPLE LOBBY SERVERS✯
Small demonstration of what the plugin does
(You can do this and many more fully configurable things inside the config.yml)
preview
[MEDIA = YouTube] nJyGzMrb_5A [/ MEDIA]
.FALLBACK.
.TITLE.
- Providers: Balances the load of your players on your sections. When a player connects to the server in another section, the plugin can move the player to another server in this section.
- Kick Handler : Players who are kicked out of the server can be moved to other servers in this section. You can configure it to work only when they receive a specific message.
- Fallback Command: You can create your own command and this command allow players to connect to the parent of the section they are currently in, or the principal if not in a section.
- The Title: You can make your own header message when the player connected to the server
- 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: 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.
- Permission acces: If you want to make a special lobby section for players with special permissions its helpful you!
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.
If You have more ideas you can suggest me it!
Types of Providers:
- BALANCED ➭ Returns a server between the ones with the least players online
- EXTERNAL➭ Returns the server determined by a provider created by other plugin
- FILLER➭ Returns the server with the most players online that is not full
- PROGRESSIVE➭ Returns the first server found that is not full
- LOWEST➭ Returns the first server found with the least players
online
- RANDOM ➭ Returns a server selected by a RNG algorithm
(random)
Commands:
- /balancer ➭ The plugin command, which allows you to get more info of plugin commands
- /balancer info {section} ➭ Get more info for this section
- /balancer list ➭ List of sections with click events for enchancing use
- /balancer connect {section} [player Not necessary]➭ The plugin command, which allows you to get more info of plugin commands
Note: The administrative commands require you to have the permission "balancer.admin"
Default config:
TITLE:
# When true, plugin use title message
enabled: true
# Message on connected
connected:
onChat: true
title: '&eYou are connected'
subTitle: '&eto &c&o{server}'
fadein: 15
stay: 60
fadeout: 15
# use #n vice \n
MESSAGE:
prefix: '&9mBalancer &8>&f'
connecting_server: "&aConnecting to: {section}.."
connected_server: "&aYou're connected to &a{server}"
invalid_input: "&cThis is an invalid input type for this command"
server_nf: "&cCould not find a server to get connected to"
player_bypass: "&cYou have not been moved because you have the. (permission: balancer.bypass)"
player_kicked: "&6You have been kicked from: &c{from}#n&6Reconnecting you to &a{to}#n&6Reason: &c{reason}"
already_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"
not_permission: '&cnope :('
ping_task: 'Launch the server verification system at intervals of {interval} sec'
ping_task_update: '&e[Update]:&9 {server}&8: &a{online}&8/&c{max}&8 |&f Available: {answer} &8| &fMOTD: {motd}'
startup_npe: 'Startup error occurred: '
hover_message: '&fGet more info &8(&e&lLMB&8)'
answer_yes: 'Yes'
answer_no: 'No'
empty: 'Empty'
section: 'Section'
basic: 'Basic'
dummy: 'Dummy'
parent: 'Parent'
borrowed: 'Borrowed'
position: 'Position'
provider: 'Provider'
inherited: 'Inherited'
main_server: 'Basic Server'
address: 'Address'
players: 'Players'
command: 'Command'
permission: 'Permission'
aliases: 'Aliases'
available_servers: '&8>&9 Available Servers &8<'
inaccessible_servers: '&8>&9 Inaccessible Servers &8<'
main_info: '&8>&9 Basic Info &8<'
available_sections: '&8>&9 Available Sections &8<'
section_info_1: 'Starting automatic server ping'
section_info_2: '&9{size}&9 sections were loaded for &a{time}ms'
section_info_3: '&9Sections cleansing due to plugin shutdown'
section_info_4: '&9Register {server} for {section} section'
section_info_5: '&9Added {size} servers for a {section} section'
section_info_6: '&9Server {server} removed for {section} section!'
section_error_1: 'Basic section not found!'
section_error_2: '&cThe sections &a{1}&c & &a{2}&c are parents of each other'
section_error_3: '&cServer {server} already on {section} section'
not_console: 'Console, go back? ;D'
player_nf: 'The requested player was not found.'
command_error_first: 'Error executing plugin restart'
command_nf: '&cCommand not found!#n&fusage &8-&9 /balancer'
reload_successfully: '&aThe plugin has successfully reloaded!'
usage_connect: '/balancer connect [*section] [player]'
usage_info: '/balancer info [*section]'
SECTION:
# Sorry for my English :)
# Here you have an example of what you can do with sections.
# Even if you configure something wrong, the plugin will report it.
# If you do not have a section, then it will be inherited from parents (parent)
# The best way to figure this out is to play around with it.
# You can use regular expressions to match a set of servers instead of adding each server (BB_S-[1-5])
# You can have as many partitions as you want, there are no restrictions.
#
# Available providers:
# 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
types:
lobbys:
provider: RANDOM
servers:
- 'lobby-1'
bb-lobbys:
parent: 'lobbys'
provider: LOWEST
servers:
- 'bblobby-1'
bbgame:
parent: 'lobbys'
provider: FILLER
section_server: buildbattle
servers:
- 'BB_S-[1-5]'
- 'BB_T-[1-5]'
command:
name: gobuildbattle
permission: ''
aliases:
- 'gobb'
- 'bbplay'
# The principal section is very important for other features
# Normally set this to the section that has your main lobbies
principal_section: 'lobbys'
# 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
# When true, the section server will be displayed in the list of players on all servers in this section.
# IMPORTANT! This will make some plugins think that your bungeecord has more players than it really does
show_player: true
# Dummy sections can have servers from other non-dummy sections
# When a player connects to a dummy section, nothing will happen
dummy_section:
- 'lobbys'
# 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:
- 'lobbys'
CHECKER:
# When true, the plugin will ping the servers
enable: 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
attemps: 5
# The interval between every round of checks
# In seconds
interval: 5
# When true, the plugin will print useful info when a server gets checked
info: true
# The descriptions that mark a server as non accessible
non_acces:
- 'Сервер оффлайн'
- 'Игра на сервере уже началась'
FALLBACK:
# When true, plugin will connects a player to the parent of current section the player is connected to
enable: true
# Usage commands
# Leave permission empty for no permission
command:
name: fallback
permission: ''
aliases:
- 'hub'
- 'lobby'
- 'leave'
# Add sections here where you do not want this feature to work
excluded_sections:
- 'lobbys'
# 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
# An example of use is shown below, but if you make the rules not through : it won't work
rules:
- 'bbgame:bb-lobbys'
KICK:
# When true, the plugin will transfer the player to the parent section
enable: true
# true - the player must be kicked out for a reason
# false - the player must be kicked out for a reason that is in the reasons
inverted: true
# 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
# principal_section settings
force_principal: false
excluded_sections: []
restrictive: false
rules: []
REFRESH:
# When true, the plugin will periodically adds servers that weren't there before the plugin loaded
enable: ture
# The delay to the first refresh
# In seconds
delay: 5
# The interval between every refresh
# In seconds
interval: 300Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta
