LiteBans

GOLD LiteBans 2.14.1

No permission to download
GOLD
Official LiteBans Discord

About

LiteBans is a cross-server punishment management system with many advanced customizable features to enhance your moderation experience.

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, Folia, 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.
  • Template system allows you to make fully customizable punishment ladders. Each time you punish someone using a template, they will climb the ladder you have created and receive an incrementally larger punishment. Each ban template can be assigned with a custom kick screen message!
  • Custom warning templates are supported, allowing you to define categories for warnings that each have their own set of triggered punishment commands which run after players are warned a specific number of times.
  • Server scopes are supported, granting you the ability to place per-server punishments and global punishments.
  • 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).
  • Several database types are supported, including MySQL, MariaDB, PostgreSQL, and H2. H2 is used by default, meaning that MySQL is not needed to use LiteBans with a single-server setup.
  • Multi account notifications - when a player with a banned account on the same IP joins, all players with the right permissions will be notified.
  • Multi-instance synchronization system allows global punishments and broadcasts to instantly take effect across all servers connected to the same database, even if the plugin is not installed under BungeeCord.
  • 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 7 popular plugins, including MaxBans, BanManager, AdvancedBan, and BungeeAdminTools.
  • Users who have been IP-banned or GeoIP-blocked can be permitted using the "/litebans allow" command, which excludes their account from the IP ban without removing the ban entirely.
  • 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.

litebans-php-1.png


litebans-php-2.png


Installation guide: https://gitlab.com/ruany/litebans-php/-/wikis/Installation


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.
LiteBans_HoverText.png

Example:
Code (Text):
broadcast_ban: '&e$bannedPlayer &chas been banned. {hoverText: &aHover text here!}'
Template System
LiteBans has a powerful template system. Templates can be applied to bans, mutes, warnings, and kicks.

Each template has a configurable ladder, so, for example, you can have a template which bans a player for 2 weeks the first time you apply that template, one month when they are banned for the second time, and three months when they are banned for the third time.
That's the tip of the iceberg. See Templates on the wiki for the full documentation and examples!


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.
litebans-history.png

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)
2015-02-13_08.44.20__.png


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.

LiteBans admin utility commands:
Spoiler: Many commands

FAQ
Read the FAQ before posting a review or reporting problems with the plugin!
The FAQ can be viewed here.

Permissions

The full permissions list can be viewed here.

Configuration
All options in the configuration work equally on all versions of the plugin (Spigot/Bungee/Velocity) unless explicitly otherwise stated.

Plugin configuration (config.yml):
Spoiler: config.yml

Custom messages (messages.yml):
Spoiler: messages.yml
Database Configuration
The plugin is pre-configured for H2, so you don't need to configure anything if you don't have a MySQL database.
H2 does not require any configuration, and operates using files on disk.

To configure the plugin for MySQL, open config.yml, change 'driver' to "MySQL", and set 'username', 'password', 'address', and 'database' as needed.

Importing
A full guide with information, instructions, and examples can be viewed here:
https://gitlab.com/ruany/LiteBans/-/wikis/Importing

Images
Spoiler
Requirements
For MySQL support in the plugin, a working MySQL database is required.

If you're running a single plugin instance and don't need the web interface, you do not need a MySQL server and the plugin will already work immediately without configuration after being installed.

An active Internet connection is required, but only for the first time the plugin is started. The dependencies -- which are only downloaded once per update, and can be downloaded separately -- will work offline after being stored in the LiteBans data folder.

Install
LiteBans can be installed in several ways. It can run on a single Spigot server, multiple Spigot servers linked to the same MySQL database, or it can be installed directly on BungeeCord or Velocity.

Should I install the plugin on all of my Spigot servers or only on Bungee/Velocity?

Note that your configured permissions under Spigot will not automatically carry over onto BungeeCord or Velocity.

LuckPerms has BungeeCord & Velocity support. If installed correctly, permissions are bridged between Spigot and the proxy.

If you want LiteBans to have a Spigot presence (Spigot permissions, usable with Spigot plugins that use /ban, /mute, /kick, etc), then you can install it on each Spigot server and link all plugin instances together with the same database.

Otherwise, if you're fine with using the Bungee/Velocity permission system (LuckPerms is recommended) and don't have any Spigot plugins which need to use LiteBans commands, then you can install it on BungeeCord/Velocity directly and you don't have to install it on any of the servers connected to the proxy.


For a single-server Spigot setup:
  1. Download the plugin to the Spigot plugins folder.
  2. Start the server (or restart it, if it is already running)
  3. Edit config.yml and messages.yml as needed, then run "/litebans reload".
  4. Set up permissions using whatever permissions plugin you have installed.
With multiple Spigot servers:
  1. Install the plugin on all servers that you want to link together using the instructions above for each server.
  2. Configure the plugin to connect to the same database across all servers.
With BungeeCord:
  1. Download the plugin to the BungeeCord plugins folder. The plugin does not need to be installed on any of the servers linked to the proxy.
  2. Start BungeeCord (or restart it, if it is already running)
  3. Edit config.yml and messages.yml as needed, then run "/litebans reload".
  4. Set up permissions using whatever permissions plugin you have installed. You need to add the "litebans.notify.broadcast" permission to the default group if you want players to see broadcasts.
  5. If you're running an offline-mode server, you need to link your authentication system (e.g. AuthMe) with BungeeCord, otherwise users will be able to run commands without being logged in.
With multiple BungeeCord instances:

Note: LiteBans does not require nor utilize RedisBungee for synchronizing across multiple servers.

Bans, mutes, broadcasts, notifications, and kicks will be synchronized across multiple BungeeCord proxies running LiteBans as long as they are connected to the same database.

Configuration is simple and intuitive - you only need to connect the servers to the same database, nothing else is required.
  1. Download the plugin and copy it to each BungeeCord instance's plugins folder.
  2. Configure config.yml and messages.yml and copy them across all instances. The default configurations will be placed in "plugins/LiteBans/" after the plugin starts for the first time. All instances need to be connected to the same MySQL database in order for them to synchronize properly.
  3. Set up permissions in each BungeeCord instance's config.yml and restart. You need to add the "litebans.notify.broadcast" permission to the default group if you want players to see broadcasts.
  4. If you're running an offline-mode server, you need to install AuthMeBungee, otherwise users can run commands without being logged in.
After installing multiple instances of the plugin, you can check if everything is properly configured
by running the "/litebans info" command. It will tell you if multiple servers are connected to the database.

Spigot version vs BungeeCord version
LiteBans can run directly under Spigot or BungeeCord -- it can be installed in either the Spigot plugin folder, or the BungeeCord plugin folder.

All commands and features of LiteBans are available under BungeeCord (except for /togglechat).

Features of the BungeeCord version:
  • Players across all servers on the network are treated as if they are on the same server.
  • No need to set up LiteBans across all servers with the same MySQL configuration. One setup on just the BungeeCord proxy is enough for bans to work across every server.
  • The BungeeCord version can use a local file database (H2) and still work across multiple servers (with a single-proxy setup), however, there is no official web interface support for this.
  • Spigot plugins cannot override what happens at the proxy level, so it's much less likely for other plugins to interfere with LiteBans.
  • LiteBans doesn't mind what type of servers you're running behind the proxy - they don't have to be Spigot servers, and there is no "bridge" plugin required. If you can get a Vanilla server running behind Bungee, you can still use LiteBans on it!
Caveats of using the BungeeCord version:
  • You will require a native Bungee permission system (LuckPerms is recommended).
  • There is only one global configuration per plugin instance. (config.yml, messages.yml) - this can also be considered a positive.
  • Spigot plugins cannot directly execute BungeeCord commands, and vice versa. Anticheat plugins, for instance, will not be able to globally ban players if they can't run the /ban command from the backend server.
  • When banning from console, you must use the BungeeCord console.
API
https://gitlab.com/ruany/LiteBansAPI/wikis/home

Spoiler: Servers using LiteBans

Terms of Service
  1. You are allowed to use the plugin on multiple servers, provided that all of these servers belong to you.
  2. You are allowed to freely use and modify the web interface, you can also remove or modify the copyright message in header.php.
  3. You may not redistribute or re-sell the plugin; doing so will result in your access to the plugin and future updates being revoked permanently.
  4. You may not file a dispute or chargeback via PayPal or any payment processor; doing so will result in your access to the plugin and future updates being revoked permanently.
Refund policy
Refunds will be granted for any reason within 30 days of purchase, unless the Terms of Service have been violated.

Send me a PM if you wish to request a refund. Also, please contact me when purchasing after being previously refunded, to prevent interruptions in service.

Tags: LiteBans spigot plugin, LiteBans bukkit plugin, LiteBans bungee plugin, LiteBans bungeecord proxy plugin, LiteBans Velocity, LiteBans premium plugin, cross server sync, bukkit cross server bans, bungee cross server bans, cross-server punishments, multi server banning, cross-network punishments, punish, ban synchronization plugin mysql, ban sync mysql bukkit, bungee network banning plugin, ban sync mysql bungee, mute synchronization plugin mysql, ban database plugin, punishment database plugin, uuid banning plugin, ip banning plugin, uuid punish plugin, custom ban message plugin, custom kick message plugin, bukkit alts plugin, staff rollback plugin, liteban, litebans, lightbans, light bans, lite bans, lite ban, litebans web interface, litebans website, litebans access, litebans download, litebans buy, litebans purchase, litebans spigot, litebans permissions, litebans servers, custom punish plugin, customizable punish plugin, global banning plugin, ban history bukkit plugin, ban plugin, mute history, litebans messages, litebans 1.8, litebans 1.17

Regarding reviews:
Read the FAQ before posting a review or reporting problems with the plugin!
Report issues via PM, discussion thread, or the issue tracker.

Please do not post a negative review without contacting me first!
Author
Julia Dev
Downloads
0
Views
352
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from Julia Dev

Latest updates

  1. 2.14.1

    2.14.1
AdBlock Detected

We get it, advertisements are annoying!

Sure, ad-blocking software does a great job at blocking ads, but it also blocks useful features of our website. For the best site experience please disable your AdBlocker.

I've Disabled AdBlock