Dynamic Effect Whitelist
Dynamic Effect Whitelist
This is a simple whitelist mod using MySQL/HTTP/File. To add users ingame to the whitelist permissionsBukkit is required (included in bukkit), you also need to use the File or MySQL mode. The plugin can run without any changes to the config, if you want it simple or you can edit the config to personalize the disconnect message etc.
The whitelist uses PluginMetrics which means it will send server info (plugin version, number of players on the server, server version, server location (country)), to PluginMetrics server (http://mcstats.org/plugin/DynamicEffectWhitelist) so I can get plugin usage. It can be turned off in PluginMetrics config (plugins/PluginMetrics/config.yml), but it's recommended to let it be on, so I can see the usage.
If a new minecraft version has recently been released then try the plugin instead of asking if it works. Before reporting a bug, check so you have the latest version and check the changelog
Features
- Whitelist using MySQL/HTTP/File
- Updates the whitelist at an interval and not just at server start
- Add users to the whitelist ingame or integrate with your forum/website
- The file data source uses the same format as Minecraft´s built-in whitelist system.
- Custom disconnect message (if not on whitelist)
- Notification for OP' s and players with the right permission, when someone joins and is not on the whitelist (Needs to be enabled in the config (General.PrintConnectFails))
- Support for custom SQL queries & custom database structure
- Built-in importer/exporter allows importing/exporting from/to file, sql & url to file, world & sql. (1)
- Reload plugin on the run (without restarting the server)
- Refresh the whitelist on the run (without waiting for the automated refresh or restarting the server)
- Whitelist can be turned on/off while the server is running
- (Allowed sources: sql, file, url, world Allowed destinations: sql, file)
Todo
- Nothing
Dependencies
- MySQL JDBC (If you are going to use sql as data source) - Download the mysql connector and place mysql-connector-java-5.1.15-bin.jar in C:\Program Files\Java\jre6\lib\ext or /java/packages/lib/ext on linux (http://docs.oracle.com/javase/tutorial/ext/basics/install.html)
Pages
Permissions
| Permission | Description |
|---|---|
| dewhitelist.add | permission to add users to the whitelist |
| dewhitelist.remove | permission to remove users from the whitelist |
| dewhitelist.displayfails | permission to see all failed joins (shown in the chat if activated in config) |
| dewhitelist.reload | permission to reload the plugin |
| dewhitelist.refresh | permission to refresh the whitelist (check for new players in the whitelist) |
| dewhitelist.import | permission to import from a source to another (Can be used to backup the whitelist) |
| dewhitelist.mode | permission to turn on/off the whitelist |
Chat commands
| Command | Description |
|---|---|
| /whitelist add [player] | adds the entered player to the whitelist. |
| /whitelist remove [player] | removes the entered player to the whitelist. |
| /whitelist reload | Reloads the plugin |
| /whitelist import [source] [destination] | imports whitelist from source to destination (1) (2) |
| /whitelist refresh | Refreshes the whitelist (checks for new players in the whitelist) |
| /whitelist <on/off> | Turns on/off the whitelist |
- (Allowed sources: sql, file, url, world Allowed destinations: sql, file)
- (Uses a third argument when using world as source, the last world is the name of the world's name. Example "/whitelist import world file world")
Source
The source is hosted on Github: https://github.com/BlackVoid/DynamicEffectWhitelist
Download
- JAR Only (Version 1.5.2)
- Full package (Version 1.5.2) - Includes JAR, SQL-file (database), php-file (if you use url as data source)
Changelog
Version 1.5.2
- All debug messages are now shown with the prefix [DEWhitelist-debug]
- No longer prints entire whitelist in debug mode, instead it prints the number of players in the whitelist.
- Checks if other plugin has already disallowed the player and if so it lets the other plugin handle the event.
- In debug mode it now prints if another plugin has handled the join event.
Version 1.5.1
- Quick fix for the refresh timer which didn't work.
Version 1.5.0
- /whitelist <on/off> added - Can turn on/off the whitelist on the run
- Print connection fails should be fixed and should no longer print in console nor to players multiple times.
- debug option moved from General.debug to Other.debug
- Option in the config to set which mode the whitelist should be at startup (on or off)
- PluginMetrics added, sends anonymous stats (player count, bukkit version, plugin version), can be turned off in the pluginMetrics config (plugins/PluginMetrics/config.yml)
If you use my plugin on your server(s) please consider donating :)
-
View User Profile
-
Send Message
Posted Jul 4, 2012Hi, I have a question... Anyone have a WhiteList Quiz? Players must write his minecraft.net username ande when it is complete, he must complete the quiz to write his username to mysql database and DEW will take his name from db... I need it so much... Can anyone help me?
BTW: Sorry for my bad english.
-
View User Profile
-
Send Message
Posted Jun 30, 2012@BlackVoidRules
I post a message on the Slotgroups's bukkit page
-
View User Profile
-
Send Message
Posted Jun 30, 2012@juloo65
It's not a bug as it has to do with the SlotGroups plugin. It uses the wrong priority for the listener as it adds players to a group before all other plugins has disallowed/allowed a player to join. The plugin should use monitor as priority, which means it just checks to see if the player joined or wasn't allowed to join. So you have to take it up with the maker of SlotGroups.
-
View User Profile
-
Send Message
Posted Jun 29, 2012I find a bug :
When a not-whitelisted player join the game he is count into SlotGroups's list :
/list : 35/999 player /slotgroups list : Citoyens : 50/50, Donateur : 15/50, Admin : 4/15
It's so annoying
-
View User Profile
-
Send Message
Posted Jun 22, 2012@nanosekund
According to this page: http://docs.oracle.com/javase/tutorial/ext/basics/install.html It is /usr/java/packages/lib/ext
-
View User Profile
-
Send Message
Posted Jun 21, 2012So the java mysql connector goes in C:\Program Files\Java\jre6\lib\ext on windows. but where do i put it on a linux server?
-
View User Profile
-
Send Message
Posted Jun 19, 2012ooo sorry ConnectionType: file change to ConnectionType: sql
Thnaks BlackVoidRules nice plugin
-
View User Profile
-
Send Message
Posted Jun 19, 2012where approve='1' Not working :(
-
View User Profile
-
Send Message
Posted Jun 18, 2012@vejbuch
This should work. query: SELECT {name} FROM `whitelist` WHERE approve='1';
-
View User Profile
-
Send Message
Posted Jun 18, 2012This is configure not runing :/ PLS help
-
View User Profile
-
Send Message
Posted Jun 4, 2012@Zuksaru
Change the encoding of the config file to ANSI or UTF-8
-
View User Profile
-
Send Message
Posted Jun 4, 2012Hi i'm getting this white list error.. D:
Dunno how to fix it or is it the plugin D:
2012-06-04 12:42:55 [INFO] [DynamicEffectWhitelist] Enabling DynamicEffectWhitelist v1.5.1 2012-06-04 12:42:55 [SEVERE] org.bukkit.configuration.InvalidConfigurationException: unacceptable character '�' (0xFFFD) special characters are not allowed in "<string>", position 125 2012-06-04 12:42:55 [SEVERE] at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:54) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:138) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:105) 2012-06-04 12:42:55 [SEVERE] at com.dynamiceffect.whitelist.Config.loadMain(Config.java:33) 2012-06-04 12:42:55 [SEVERE] at com.dynamiceffect.whitelist.DynamicEffectWhitelist.onEnable(DynamicEffectWhitelist.java:78) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:256) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:238) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:552) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.Bukkit.reload(Bukkit.java:182) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:22) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459) 2012-06-04 12:42:55 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) 2012-06-04 12:42:55 [SEVERE] Caused by: unacceptable character '�' (0xFFFD) special characters are not allowed in "<string>", position 125 2012-06-04 12:42:55 [SEVERE] at org.yaml.snakeyaml.reader.StreamReader.checkPrintable(StreamReader.java:70) 2012-06-04 12:42:55 [SEVERE] at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:50) 2012-06-04 12:42:55 [SEVERE] at org.yaml.snakeyaml.Yaml.load(Yaml.java:399) 2012-06-04 12:42:55 [SEVERE] at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:52) 2012-06-04 12:42:55 [SEVERE] ... 24 more 2012-06-04 12:42:55 [SEVERE] Error occurred while enabling DynamicEffectWhitelist v1.5.1 (Is it up to date?) java.lang.NullPointerException at com.dynamiceffect.whitelist.DynamicEffectWhitelist.onEnable(DynamicEffectWhitelist.java:81) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:256) at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:238) at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:552) at org.bukkit.Bukkit.reload(Bukkit.java:182) at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:22) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479) at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821) at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764) at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
-
View User Profile
-
Send Message
Posted May 29, 2012@MadeOke
I just tried it myself on my server and I can't re-create your problem, so as long as you do not get an error I can not fix it :(
-
View User Profile
-
Send Message
Posted May 28, 2012@BlackVoidRules
no error at all it shows confirmation message, but my friend can't enter and i add it again, it shows <nick> already whitelisted after stop and start the server again, it works
os : windows server 2003
-
View User Profile
-
Send Message
Posted May 28, 2012@MadeOke
Do you get any errors, I have not experienced any of these issues.
-
View User Profile
-
Send Message
Posted May 28, 2012not working on 1.2.5R3 i need to restart the server to get my friend and other nick whitelisted
/whitelist add <nick> /whitelist reload /whitelist refresh
no work until restart the server
-
View User Profile
-
Send Message
Posted May 28, 2012@ZombieSoul
The table table is required if you want to be able to add/remove users from the whitelist, but as you do not want that just don't allow any users to use the add/remove command. The userfield variable is also required, because when it retrives the usernames it needs the column name to fetch them. You can do it like this without changing anything except for the query.
SELECT field_36 AS {name} FROM `ocp_f_member_custom_fields` WHERE mf_member_id IN (SELECT gm_member_id FROM `ocp_f_group_members` WHERE gm_group_id = "11"
AND gm_validated = "1")
About the color code, I do not know how to fix this yet. It's a encoding issue and the only way I know you can solve this right now is by making the config on your windows computer and then uploading it to your linux server.
-
View User Profile
-
Send Message
Posted May 27, 2012I am having the same Issue with the colors. The default config file will show blue on the disconnect message. When I open up the config file in my server's text editor on linux the color codes are replaced with ?. I have seen other plugins with the same problem and they were resolved somehow.
That is a minor issue, my real question is: Is it possible to run a custom query without table and userfield being used. I have portal software that users can apply to a group(whitelist) when they are accepted the minecraft names can be retrieved by a query such as:
SELECT field_36 FROM `ocp_f_member_custom_fields` WHERE mf_member_id IN (SELECT gm_member_id FROM `ocp_f_group_members` WHERE gm_group_id = "11"
AND gm_validated = "1")
field_36 of the custom fields table is the minecraft username. it checks to see if they are in group 11 and validated if so the result is a list of the valid members. I've started looking through the plugin code. But I may have to rewrite the query code if I want it to work. It would be nice to have the option to just give a database and run the query to get the results.
Nice plugin, nearly does everything I am looking for.
-
View User Profile
-
Send Message
Posted May 13, 2012@levisn1
What do you mean with auto whitelist?
-
View User Profile
-
Send Message
Posted May 11, 2012black pls i need an auto whitelist for my server...but i have not experience with php or mysql..i have an enjin site and a dedicated server self menaged with centos..how to implement this great plugin? can you do a simple guide pls!