LiteBans - A complete, modern, cross-server banning solution

ULTRA LiteBans - A complete, modern, cross-server banning solution 2.8.3

About

LiteBans is a lightweight banning plugin supporting UUIDs which allows temporary and permanent bans.
When a player changes their Minecraft name through Mojang, they will still keep their bans, mutes, and warnings.

All punishments made through LiteBans will take effect globally across all servers linked to the same database.
Although LiteBans is designed to effectively synchronize between hundreds of servers, it can still work alone on a single server without a MySQL database.

LiteBans can run natively under Spigot, BungeeCord, and Velocity, offering the same features on all platforms.

Features
  • Designed from the ground up with UUID support in mind. All punishments are UUID-based.
  • Fully customizable kick screen for banned players, multiple lines and colours can be used, as well as ban information variables – duration until ban expires, reason, staff member who placed the ban, server which ban was placed on, time since ban was placed, original ban date & duration, and many more.
  • All messages are customizable in messages.yml. There are many useful variables available to place in any configurable message that involves a ban, mute, or warning. Hover-text and RGB colours supported.
  • You can view punishment history for players (/history) and punishments issued by staff members (/staffhistory).
  • Multiple types of databases are supported, including MySQL, MariaDB, and H2. H2 is used by default, meaning that MySQL is not needed to use LiteBans with a single-server setup.
  • When a player with a banned account on the same IP joins, all players with the right permissions will be notified.
  • Advanced light cross-server synchronization system allows global punishments and broadcasts to instantly take effect across all servers connected to the same database.
  • Staff members can be "rolled back" – all punishments which they've issued can be removed at any time with a single command. Staff abuse has never been easier to deal with.
  • Bans can be imported from vanilla (including Essentials), and six popular plugins, including MaxBans, BanManager, AdvancedBan, and BungeeAdminTools.
  • Offline players can receive warnings; they will see all of their new warnings when they join. This works across servers.
  • Players cannot override punishments by setting very short bans or mutes unless they have permission.
  • Lightweight, multithreaded, and designed for performance. LiteBans uses a minimal amount of memory and does not block the main server thread with any database queries after startup.
Cross-Server Synchronization
One of the best features of LiteBans for networks is its cross-server synchronization system.

For example:

Server A, Server B and Server C are all running LiteBans, connected to the same MySQL database.

If a player who is on Server A is muted on Server B, it will immediately take effect on Server A, the player will be muted, and all players on Server A, B and C will see the broadcast indicating that the player was muted if they have permission and broadcast synchronization is enabled. If the player leaves Server A and joins Server B or Server C, they will still be muted.

Web Interface
The web interface lists all bans, mutes, warnings, and kicks.
It can be used to view all punishments for specific players or by staff, and check when those punishments will expire.
* Free website is not included, you will require your own website hosting.




JSON Support
LiteBans allows you to define custom hover text in all messages, including broadcasts.
Only players with permission (litebans.json.hover_text) will see the hover text.
All variables available to use in messages.yml can also be included in hover text, along with colours and newlines.

Example:
Code (Text):
broadcast_ban: '&e$bannedPlayer &chas been banned. {hoverText: &aHover text here!}'
Commands

The ban command (/ban) can be used like this:

/ban [-s] <target> [duration] [reason] [server:*]
Also: /tempban, /ipban, /unban

<target>
can be a name, UUID, or IP address.

If you IP-ban a player, their UUID and IP address will be banned simultaneously, so they cannot join on the same account using a different IP address.

[server:*] is an optional parameter which can be used when the plugin is installed on Bungee/Velocity or if you have multiple instances of LiteBans.
By default, all punishments are global (*).
Server scopes (per-server punishments) are explained in detail on the wiki here.

Example: /ban Player 7d [reason] server:Survival

The /ban and /mute commands have a permanent duration if not specified. If the player does not have the litebans.unlimited permission, the duration will be limited to the maximum duration (per group) specified in config.yml.

Reasons for /ban, /mute, /warn, and /kick can contain colours and newlines ("\n"). For example:
Code (Text):
/ban Player &cLine 1\n&aLine 2
Wildcard IP-bans are supported, e.g. /ipban 127.0.0.*
Spoiler: Examples

The mute command (/mute [-s] <target> [duration] [reason] [server:*]) allows you to mute a player. While a player is muted, they cannot talk in chat or use blacklisted commands.
Related commands: /tempmute (requires duration), /ipmute, /unmute

The warn command (/warn [-s] <target> <reason> [server:*]) allows you to warn a player. Warnings expire after a configurable duration. When a player obtains a configurable amount of warnings, configurable commands can be executed.
Related commands: /unwarn (removes a player's last warning)

The history command (/history <target> [server:*]) shows bans, mutes, kicks, and warnings that a player has received recently, sorted by date.

You can view active warnings for a player by using /warnings <target>.
/staffhistory <target> can be used to show bans, mutes, kicks and warnings placed by a player.
/prunehistory <target> [duration] can be used to clear the punishment history of a player.
Example: /prunehistory Player 5 days
/staffrollback <target> [duration] can be used to rollback all staff actions (bans, mutes, warnings, kicks) with an optional duration.

For /prunehistory and /staffrollback, the duration provided means the time passed since today.

If you use "/staffrollback StaffMember 3 days", all punishments executed by StaffMember within the last 3 days will be removed, and all unbans/unmutes performed by them within the last 3 days will be reversed.

Note: These two commands cannot be undone, unless you have backups.


The dupeip command (/dupeip <target>) allows you to view all accounts who have joined on the same IP as the target, and see whether they're online, offline, or banned.
You can also use /ipreport which executes a dupeip check for all online players.
You can also use /iphistory to check the recent IP addresses that a player has joined the server with. (Requires "delete_previous_history: false" in config.yml)


The checkban command (/checkban <target>) allows you to check if a target is banned. It will also tell you when the ban was placed, when it will expire, whether the ban was an IP ban, and if it was a silent ban.
Related commands: /checkmute

The kick command (/kick [-s] <player> [reason]) allows you to kick an online player. This will be recorded in the player's history.

You can also kick players from other servers & proxies running LiteBans connected to the same database.
This applies to all versions of the plugin (Spigot/Bungee/Velocity) and does not strictly require Bungee/Velocity.

The geoip command (/geoip <target>), if enabled in the configuration, allows you to check which country a player comes from. This can also be used on offline players.

You can check the UUID of a player (online or not) using /lastuuid <target>.


Chat can be cleared with /clearchat. Players with the "litebans.notify.clearchat" permission will be notified when chat is cleared.
Like lockdown, this only affects the local server scope by default. (server:local)

You can view a list of active bans by using /banlist [page].

You can reload the configuration at any time using /litebans reload.
This will reload config.yml and messages.yml, and apply new settings.
Reloading LiteBans will also make it reconnect to the database.

The server can be put into lockdown mode by using /lockdown <reason>. All players without the bypass permission will be kicked when the lockdown starts, and will be unable to join until it ends. It can be ended with /lockdown end.

Under Bungee/Velocity, you can provide a server scope for /lockdown. Currently only one scope at a time can be affected by /lockdown.
Example: /lockdown <reason> server:Survival
Global lockdown for ALL servers on the same network: /lockdown <reason> server:*

Note: /togglechat can not be used with the Bungee/Velocity version of the plugin.
Chat can be toggled for users with the litebans.togglechat permission using /togglechat. This command allows users to "toggle off" incoming messages from other players.

Chat can be globally disabled temporarily with the /mutechat command. Players with the litebans.mutechat.bypass permission will still be able to chat.
Author
Wifi
Downloads
0
Views
19
First release
Last update

Ratings

0.00 star(s) 0 ratings

More resources from Wifi

Top