DynamicBan

Announcement: Version 1.3.1 is not compatible with current spigot versions!
Announcement: Version 1.3.1 is not compatible with current spigot versions!
A workaround is being worked on.
- Posted on (10.10.2014) by DJ Addi
- Kick, ban, IP-ban or range-ban players
- Temporarily ban or IP-ban players
- Automatically punish players that are blacklisted by DNSBL services
- Warn players and execute commands after a certain amount of warnings
- Get notified when two players with the same IP adress join or compare IPs manually per command
- Lock IPs to a single name
- Recieve a list of all players and their IPs from the console
- Make players immune to all commands or whitelist them to protect them from bans
- Check a player's status including warnings, kicks, bans, temporary bans and more
- Send players information about their own warnings whenever they login
- Purge a player's data with a simple command
- Fully costumizable messages for everything including broadcasts
- Only explicit autocomplete for safer administration
- Update notifications

| Command | Arguments | Description |
|---|---|---|
| dp | [Name] | Displays details for the given player. |
| dk | [Name] [Reason] | Kicks the specified player. |
| db | [Name] [Reason] | Bans a player's name. |
| dbip | [Name] [Reason] | Bans a player's IP. |
| drb | [Name] [level:1/level:2/level:3] [Reason] | Bans a player's IP range. |
| dub | [Name] | Unbans a player's name.. |
| dubip | [Name] | Unbans a player's IP. |
| durb | [Name] | Unbans a player's IP range. |
| dst | [Name] (1/2) | View detailed information about warns and bans. |
| dtb | [Name] [Time eg. 1h:2m] [Reason] | Temporarily bans a player's name. |
| dtbip | [Name] [Time eg. 1h:2m] [Reason] | Temporarily bans a player's IP. |
| dim | [Add/Remove][Name] | Adds or removes a player's immunity to DynamicBan commands. |
| dwl | [Add/Remove][Name] | Adds or removes a player from the whitelist which protects the player from bans. |
| dw | [Name] [Reason] | Warns the specified player. |
| dpg | [Name] [data,warns,kicks] | Resets a player's data. |
| drl | Reload the DynamicBan data. | |
| dlist | View a list of online player's IPs. (Console only) | |
| dc | [Name] [SecondName] | Compare the IPs of the specified players. |
| dl | [IP] [Name] | Locks the specified IP to a name. |
| dul | [IP] | Unlocks the specified IP. |
| dm | [Name] [Time eg. 1h:2m] [Reason] | Mute the specified player. |
| dum | [Name] | Unmute the specified player. |

| Permission | Granted |
|---|---|
| operator or dynamicban.* | All commands |
| dynamicban.ban.player | db |
| dynamicban.ban.ip | dbip |
| dynamicban.ban.range | drb |
| dynamicban.immune.add | dim add |
| dynamicban.immune.remove | dim remove |
| dynamicban.whitelist.add | dwl add |
| dynamicban.whitelist.remove | dwl remove |
| dynamicban.purge | dpg |
| dynamicban.kick | dk |
| dynamicban.player.details | dp |
| dynamicban.player.standing | dst |
| dynamicban.reload | drl |
| dynamicban.tempban.player | dtb |
| dynamicban.tempban.ip | dtbip |
| dynamicban.unban.player | dub |
| dynamicban.unban.ip | dubip |
| dynamicban.unban.range | durb |
| dynamicban.warn | dw |
| dynamicban.mute | dm |
| dynamicban.unmute | dum |
| dynamicban.lockip | dl |
| dynamicban.unlockip | dul |
| dynamicban.check | Same-IP notifications |
| dynamicban.compare | dc |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | # DynamicBan 1.3.1a - Comprehensive Administration System. config: check_for_updates: true # Do you want to check for updates? plugin_tag: '&0[&3DynamicBan&0]&f: ' # How do you want the plugin messages to be tagged? ('' to deactivate) broadcast_on_kick: true # Do you want to broadcast kicks? broadcast_on_ban: true # Do you want to broadcast bans? broadcast_on_ipban: true # Do you want to broadcast ipbans? broadcast_on_tempban: true # Do you want to broadcast tempbans? broadcast_on_iptempban: true # Do you want to broadcast iptempbans? broadcast_on_same_ip: true # Do you want to broadcast when two players have the same ip? broadcast_on_mute: true # Do you want to broadcast mutes? broadcast_on_unmute: false # Do you want to broadcast unmutes? broadcast_on_warn: true # Do you want to broadcast warnings? broadcast_on_rangeban: true # Do you want to broadcast rangebans? broadcast_on_unban: false # Do you want to broadcast unbans? warns_timeout: 72 # How many hours do you want to keep warnings? (0 to keep warnings permanently) warns_on_login: true # Should players be informed about their warnings after they logged in? warns_on_login_delay: 0 # By how many seconds should the warning notification be delayed? (0 to deactivate) connections_per_ip: 5 # How many connections do you want to allow per ip? (0 to deactivate) messages_per_ip: 3 # For how many connections from the same ip should the join and leave message be shown? (0 to deactivate) op_immune_bypass: false # Allows OPs to bypass the immunity of players. mute: blocked_commands: # When a player is muted, what commands should be disallowed? - msg - tell - r - er dnsbl_services: - zen.spamhaus.org - dnsbl.sorbs.net # Which DNSBL services do you want to be checked? dnsbl_result: none # What should happen when a blacklisted ip attempts to join? (none, kick, ban, ipban, notify) tempban_limits: dynamicban/tempban/limit/minute: 60 dynamicban/tempban/limit/hour: 3600 dynamicban/tempban/limit/day: 86400 # Do you want to define permission nodes to limit the maximum tempban length? allow_offline_players: true # Do you want to allow Bukkit to handle offline UUIDs if they don't have a normal one? enable_bukkit_bans: true # Do you want to enable the Bukkit bans as backup? convert_to_uuid: true # Do not change this! messages: # Variables are {SENDER}, {REASON} and {TIME} for temporary actions kick_message: "You have been kicked by {SENDER}. Reason: {REASON}" # The kick message. mute_message: "&cYou have been muted by {SENDER}. Time left: {TIME}" # The mute message. unmute_message: "&bYou have been unmuted by {SENDER}." # The unmute message. ban_message: "You have been banned by {SENDER}. Reason: {REASON}" # The ban message. tempban_message: "You have been temporarily banned by {SENDER}. Time left: {TIME}" # The tempban message. ip_tempban_message: "You have been temporarily ip-banned by {SENDER}. Time left: {TIME}" # The tempipban message. ip_ban_message: "Your IP has been banned by {SENDER}. Reason: {REASON}" # The ipban message. warn_kick_message: "You were kicked after multiple warnings." # The warnkick message. locked_ip_message: "That IP has been locked to another player." # The iplock message. ip_connections_message: "Too many players connected from your IP." # The iplimit message. rangeban_message: "Your IP-range has been banned by {SENDER}. Reason: {REASON}" # The rangeban message. muted_message: "&cYou cannot talk, you have been muted. Time left: {TIME}" # The message to send to the player when he/she is muted and attempts to send a message. muted_command_blocked: "&cYou cannot perform that command, you have been muted! Time left: {TIME}" # The message to send to the player when he/she is muted and attempts a blocked command. broadcast_messages: # Variables are {PLAYER}, {SENDER}, {REASON} and {TIME} for temporary actions kick_message: "&b{PLAYER} has been kicked. Reason: {REASON}" # The broadcast message when a player is kicked. mute_message: "&b{PLAYER} has been muted. Time: {TIME}" # The broadcast message when a player is muted. unmute_message: "&b{PLAYER}'s mute has been removed." # The broadcast message when a player is muted. ban_message: "&b{PLAYER} has been banned. Reason: {REASON}" # The broadcast message when a player is banned. tempban_message: "&b{PLAYER} has been temporarily banned. Time: {TIME}" # The broadcast message when a player is tempbanned. ip_tempban_message: "&b{PLAYER} has been temporarily ip-banned. Time: {TIME}" # The broadcast message when a player is iptempbanned. ip_ban_message: "&b{PLAYER} has been ip-banned. Reason: {REASON}" # The broadcast message when a player is ipbanned. warn_message: "&b{PLAYER} has recieved a warning. Reason: {REASON}." # The broadcast message when a player is warned. rangeban_message: "&b{PLAYER} has been range-banned. Reason: {REASON}" # The broadcast message when a player is rangebanned. unban_message: "&b{PLAYER}'s ban has been removed." # The broadcast message when a player is unbanned. other_messages: immune_message: "&cThat player is immune to your command!" # The message the commandsender will recieve if a player is immune. warned_message: "&c{SENDER} warned you. Reason: {REASON}." # The message to send to the player when he/she is warned. same_ip_message: "&b{PLAYER} logged in on the same IP ({IP}) as {OLDERPLAYER}." # The message to send to players with permission/op when the are two or more players with the same ip. dnsbl_ip_message: "&b{PLAYER}'s ip is blacklisted." warnings_message: "&cYou have been warned for the following reason(s):&b{WARNS}&cYou have {AMOUNT} warning(s)." # The message to send to players if warns_on_login is true. Each warning will be sent in a new line. default_reason: "&cUnspecified" # The default reason for everything. dnsbl_reason: "&cYour ip is blacklisted." # The default reason for DNSBL bans. |

- MySQL
Information on further development
Hey guys, DJ Addi here. With version 1.3.0 the plugin reached a point where I'd say it is more or less finished. If there are bugs or important features that require an update I will release a new version as fast as possible (without waiting for stuff to pile up). However, it is unlikely that new big features will be added (unless I really like them so keep the suggestions coming).
Stay tuned for updates on the release of DynamicBan 2.0.
Currently working on:
- Cleaning up database code, adding missing comments to other classes
- Moving ban-types to separate tables to allow future scalability (We cannot easily append missing fields, but we can add on missing tables if a new feature is added).
-
View User Profile
-
Send Message
Posted Jan 15, 2013@djaddi "Offline Warnings" sounds better. Can't it be added to the 'Messages:' Section of the config file so that it can be changed freely?
I definitely support a msg saying the number of warns that a person has. By any chance can this be delayed? I have a motd for my server, and I don't want this info to get lost in the text. (Maybe have it a noticable color / format)
Thanks for the bug fixes. But what happened to the ticket I sent in?
Keep up the good work with the plugin, seems pretty stable as there aren't that many bugs after so many bukkit updates. Unlike other plugins that just break after 1 beta build update.
-----------Edit: When do you think this build would be ready? Just an estimation or a progress update would be nice. P.S. Is the Preview Builds Link for DynBan 2.x supposed to work, or is it broken for me?-
View User Profile
-
Send Message
Posted Jan 15, 2013@djaddi
Go for it, can't wait :D
-
View User Profile
-
Send Message
Posted Jan 13, 2013Upcoming changes:
If there is anything else you'd like to see changed then now would be a good time to tell me.
-
View User Profile
-
Send Message
Posted Jan 12, 2013I have just submitted a ticket on an error I found on my server recently.
Tested it out with only this plugin and Vault. I don't think there is a conflict with any other plugins, so I assume it is something with the plugin itself. Hope to get a response soon.
-
View User Profile
-
Send Message
Posted Jan 11, 2013@Sheeperia
I will release a workaround for this error. It should be mentioned that this seems like a bigger problem with the Minecraft logger (or another plugin that modifies logging) and the workaround does not fix it - it only prevents the server from crashing because of this.
@Sheeperia
Maybe I'll find enough time to add it before releasing the update, so I did not reject it - it just isn't important enough to toss out a new version exclusively for it.
@mcwulfsvk
DynamicBan 1 does not support MySQL.
-
View User Profile
-
Send Message
Posted Jan 7, 2013The server crashed tonight, and this error popped up in the log:
2013-01-08 00:04:48 [SEVERE] Exception in thread "Thread-5" 2013-01-08 00:04:48 [SEVERE] java.lang.NullPointerException 2013-01-08 00:04:48 [SEVERE] at co.cc.dynamicdev.dynamicbanplus.DynamicLogger$1.isLoggable(DynamicLogger.java:27) 2013-01-08 00:04:48 [SEVERE] at java.util.logging.Logger.log(Logger.java:512)
-
View User Profile
-
Send Message
Posted Jan 7, 2013hi guys, How can i setup Mysql? To storing bans into database?
-
View User Profile
-
Send Message
Posted Jan 7, 2013Posting this one again, i would like to see if you have rejected it or if you're still considering.
-
View User Profile
-
Send Message
Posted Jan 2, 2013@XeonG8
I've learn't some PHP in the past few weeks and I've learn't alot more MySQL based functions. I can possibly move all storage to the database.
-
View User Profile
-
Send Message
Posted Dec 31, 2012You should dynamicban2 , with mysql (not for main storage, just so website can access it) bans,kicks, warns, player notes, ip etc
-
View User Profile
-
Send Message
Posted Dec 29, 2012@nejcneo
(s) means the units could be plural, or greater than one, hence minute or minutes.
-
View User Profile
-
Send Message
Posted Dec 29, 2012When I use... let's say: /dtb <player> 10m It show <player> was temporarily banned. For: 10m (s) ...What does this "(s)" mean? Can you remove it... Because it messing up. And you don't know if is banned for 10 minutes or 10 seconds.
-
View User Profile
-
Send Message
Posted Dec 27, 2012Might continue work on DynamicBan 2. This will be alot less cluttered and the development can be followed on my github page, "xDrapor", once I have it all setup.
-
View User Profile
-
Send Message
Posted Dec 26, 2012Just wanted to let you all know that I was able to fix my issues by updating to the absolute newest version of 1.4.6 #2573 and starting over from scratch with this plugin. So far no errors. Thanks again, great plugin!
-
View User Profile
-
Send Message
Posted Dec 26, 2012@TinBritches
I am not really working hard on this plugin anymore so there is no need to apoligize or thank me, please just include error logs when mentioning errors.
-
View User Profile
-
Send Message
Posted Dec 26, 2012@djaddi:
Sorry for the miscommunication, but I wasn't demanding anything from you. I was simply asking if there was an update, a dev build, or any reason you may be updating to improve your plugin. Just for the record, I won't expect a positive reply from your side, ever. I'll work on finding time to submit a ticket, but thanks anyway for your hard work on this plugin, I've used it for awhile now and I appreciate it.
-
View User Profile
-
Send Message
Posted Dec 26, 2012@Aragoth1337
It was mentioned many times that names with spaces aren't and will never be supported because they are not supported by the official Minecraft servers. For an offline mode server you can simply use a namefilter.
@TinBritches
Demanding an update and claiming that there are errors without posting a single log or even a ticket is very pointless, you shouldn't expect a positive reply from my side.
@add5tar
I do intend to release updates whenever they are needed, but as long as people don't post error logs or confirmed bugs there is no need for an update. For the features you might ask for them and I might think about adding them. For the source you will have to wait for xDrapor's reply.
-
View User Profile
-
Send Message
Posted Dec 25, 2012@xDrapor
Since you don't intend to release any updates for the foreseeable future, would you mind providing a link to the source? The GitHub link on the page doesn't work.
I really love this plugin but it has some issues I would love to fix and new features I would like to add. I'd love to work on it for my own server and would be more than happy to provide the changes back to you in whatever method you like (pull request, patches, etc).
-
View User Profile
-
Send Message
Posted Dec 24, 2012Any chance that this will be updated for 1.4.6? I'm trying to keep my server updated and I get errors trying to use this with cb 1.4.6
-
View User Profile
-
Send Message
Posted Dec 23, 2012@DiamondShepherd
simon<space>test