MaxBans
Support Spigot from 1.7.x to 1.12.x
MaxBans is a project I've been writing for my server, MaxGamer. I struggled to find a banning plugin that wasn't a joke, and the good plugins were all designed for Premium servers anyway. Nothing gave us the tools that SHOULD have been out there - Like temp mutes, temp IP bans, duplicate IP lookups, and good autocompletion!
It is thoroughly tested on an Offline-Mode server, so you can bet it's rock solid and feather light!
Databases
- MySQL
- SQLite (Flatfile)
Best Features
Here are the top ten features of MaxBans over other banning plugins:
- Full UUID support
- Ability to view players' previous username(s) - date of change
- Full server lockdown - Prevent anyone from joining with a custom message (Such as bot attacks)
- Offline player name auto completion
- Warnings system
- Duplicate IP detection
- DNSBL lookups to stop proxys!
- Multiline kick messages! No more running off the screen!
- Notifications when a banned player tries to join!
- All times are relative! (Eg. "You're banned for 4 minutes 6 seconds", not "You're banned til 5:43pm CST")
- Customize every colour!
- Block commands like /me when muted!
Commands
- /unban <name, IP or UUID>
- /ban <name, IP or UUID> <reason>
- /ipban <name, IP or UUID> <reason>
- /tempban <name, IP or UUID> <number> <minutes|hours|days|weeks|etc> <reason>
- /tempipban <name, IP or UUID> <number> <minutes|hours|days|weeks|etc> <reason>
- /mute <name or UUID>
- /tempmute <name or UUID> <number> <minutes|hours|days|weeks|etc>
- /kick <name, * for everyone or UUID>
- /checkip <name or UUID>
- /uuid
- /togglechat
- /dupeip <name, IP or UUID>
- /checkban <name, IP or UUID>
- /warn <name or UUID> <reason>
- /clearwarnings <name or UUID> <reason>
- /unwarn <name or UUID> - Removes a players most recent warning
- /unmute <name or UUID>
- /history [name] [number of records] - Displays a history of bans, kicks, mutes & more dealt
- /mbreload - Reloads the plugin
- /mbdebug - Outputs debug information for me if you're having issues!
- /mbwhitelist <name or UUID> - Allows the given user to bypass IP bans (Not regular bans! Eg, use for players with siblings who need to be IP banned)
- /ipreport - Basically, a mass /dupeip, on everyone who is online
- /lockdown [reason]
- /forcespawn - Teleports someone to the spawn (Twice, so /back won't work)
- /mbreload - Reloads maxbans
- /mbimport - Imports vanilla minecraft (And others) bans.
- /mbexport - Export bans to vanilla, MySQL or SQLite databases. (Allows swapping SQLite <-> MySQL), and others ban plugins.
- /rangeban <ip1-ip2> [reason] - Bans the IP range from ip1 to ip2 for the supplied reason.
- /temprangeban <ip1-ip2> <time> <hours/min/sec> [reason] - Temporary variant of above
- /unrangeban <ip> - Removes any RangeBan which overlaps with the given IP. Eg, if 127.0.0.1-127.0.0.5 is banned, unbanning 127.0.0.3 will lift the whole ban on 127.0.0.1-127.0.0.5.
Almost any command may have -s added in it to prevent announcing it, for example:
/tempban NewGuy101 -s 1 hour MaxBans is Awesome!
- Nobody will see the announcement that NewGuy101 was temp banned, just the fact he "has left the game."
If you want an in-depth analysis of each command, try here:
http://dev.bukkit.org/server-mods/maxbans/pages/command-tutorial/
Configuration Guide
http://dev.bukkit.org/server-mods/maxbans/pages/config-tutorial/
This is an in-depth guide on how to configure MaxBans :) If I've missed anything, ask in the comments!
Common Issues
http://dev.bukkit.org/server-mods/maxbans/pages/common-issues/
This is a list of common issues people have with MaxBans, such as plugin conflicts.
Features that will never implement
- Fines (Use your economy to do this!)
- Jails
- Regional bans
- Ban weightings
Ban Listing Webpage
Check out this guy's work for an amazing webpage setup to view MaxBans while using MySQL.
Demo (dont download from here): http://yive.me/maxbans/.
Its updated and is working on latest version of MaxBans!
You can download the updated version from here: https://github.com/FabioZumbi12/maxbans-php
- Added pagination;
- Fixed other ban pages not loading;
Metrics
This plugin uses Hidendra's plugin metrics system (http://mcstats.org/plugin/maxbans) which tracks server information including:
- A unique ID
- Java version
- Online/Offline mode
- Plugin & Server version
- OS name, version, architecture
- Number of CPU cores
- Players online
- Metrics version
These stats can be disabled using the PluginMetrics config file (BukkitServer/plugins/PluginMetrics/config.yml).
GeoIP Lookup
MaxBans will download a GeoIP.csv file, which allows it to look up the country of origin for IP addresses. The file is downloaded directly from maxmind GeopIP site. The file is only downloaded once (Unless it is renamed/removed).
FabioZumbi12:
Hello all. I am other dev and now i assuming the Project for bugfixes and possible improvements.
Netherfoam still busy but still online on comunity. I have a lot of time to code (i have a home work) and i can maintain this plugin (and my others) Always updated ;)
See ya o/
Joe is working on a new update.
Meanwhile, you should go to the config and set the tempban/mute limit which was added in the current version - might cause the 'N/A,
@iversen0
why did he change the old ban system it worked well well except if someone changed there name they would be unbanned so when you /ban it should ban the uuid aswell also is /ipreport coming back as it helped out my server loads
@iversen0
Can't wait, instead of tempbanning people we now mute them (and jail them if they irritate other players) xD
Add a ban of IP of a proxy of servers.
Ye, joe is on it :3
@F64_Rx
yeah, i got the same problem on my server
->
for now i disabled this plugin but of course i would like to use it again ( this is the most awesome ban-plugin on bukkit :D )
@Peter234679
im also getting this ban tempban and ipban do not work on latest version needs to be fixed
im using the latest version of maxbans on my server spigot 1.8.3 and when i ban or tempban a player they can come straight back onto the server and the ban says expires in n/a when i give a time could you tell me how to fix or could you fix it thanks
After I installed Max bans on my server, when I logged in the console kept on banning me for having Admin Permissions when I was opped and had all permissions. After that I stopped and started my server up again, however that didn't help. I found out that this wasn't an IP/Range/DNSBL by doing /mbwhitelist <username>. The only way I was able to get on the server was by doing /immune, however It kept on spamming the console saying this ip is already banned and this player is already banned. I did do /unban <username>, but it kept on banning me every time I was unbanning myself in the console. I've been trying to figure out the issue, but I haven't found a solution yet.
May you add a ban event and/or an unban event? I wrote a plugin which creates a thread in my forum if someone gets banned and it would be nice if I don't have to use CommandEvents to detect bans :o
But thank you for updating it :) MaxBans is a great ban plugin and I'll use it as long as I keep my server running :)
- FiFT
Do you plan to add bungeecord support where you could ban them from only 1 server etc?
@Manic_Kaval
We didnt remove it, simply crashed it xD New update will be out soon
@Mankin59
Thanks
When someone reaches maximum warnings it has a weird speech mark after the final warning in the list. http://prntscr.com/6pli8f
Though the new features are very appreciate, I believe your decision to remove /ipreport was not a good one. On a server that gets more than 5 people with an active staff who frequently checks on its members-it becomes very tedious very quickly to do /dupeip on every single person.
/ipreport was very useful in this and I honestly do not understand any reasoning to its removal.
Also yes, tempban is not working http://prntscr.com/6ph97p
Been using BanHammer and while it has UUID support it also has some bugs so thought I'd try something else.
Spent a while tidying up the sqlite database and getting it imported into BanManagement via SQL (different plugin so different tables), only to find the same annoying problem still exists in it that it performs poorly with remote SQL hosts when you have a huge amount of bans, seems to hang when loading them to memory.
Anyway to the point, started looking at going back to sqlite/flat file and came across this plugin. Didn't take me long to use SqliteBrowser and get my bans imported. I need to do some more testing but I'm so far impressed.
UUID support would be an added bonus though, so looking forward to that, keep it up<sub> thank you! :)</sub>
@Peter234679
Can also confirm this on my end.
Hi, for some reason when using the newestversion (MaxBans 2.5 - Fixes (1.8, 1.8.1)) , any commands dealing with time such as tempban or tempipban do not work. The time comes up as "N/A.?" please fix this :P
@ThisUsernameIsMine
Thanks. Will get that fixed.
[in 2.5-beta]
When changing a message in messages.yml (i.e. server lockdown message), (re)starting the server and re-lock(down)ing the server, it still shows a part of the original message when connecting:
@iversen0
Then why isnt there a single UUID column in the database then after updating? Even tried banning a couple legit names and nothing shows up in the database about UUID's at all...