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 :)
GrimList is a project built from Dynamic Effect Whitelist.
It has more customization available, is updated frequently, and compatible with 1.7.2.
http://dev.bukkit.org/bukkit-plugins/grimlist/
@Iwitrag @BlazeMF @Nussi1986 @BlackVoidRules
Can somebody take this plugin and keep it updating? It's simply awesome !
@BlazeMF
What kind of Help do you need!
Can you PLIZ make a tutorial? Im realy not god on these things so can you help me? Greate plugin! Thx
I have now abandoned the project due to lack of time, the plugin is still working, but I won't be updating it. If anyone want's to continue the project contact me.
Same issue here:
+ Settings.getString("sql.table") + " WHERE name = ?");
should be
+ Settings.getString("sql.table") + "WHERE " + Settings.getString("sql.UserField") + " = ?");
Hey @BlackVoidRules!
Not sure if you're still with me, but I found the problem in the Java, that was producing the error!
+ Settings.getString("sql.table") + " (name) VALUES(?)");
Should be changed to:
+ Settings.getString("sql.table") + "(" + Settings.getString("sql.UserField") + ") VALUES(?)");
That's why the UserField portion was always ignored in the configuration, because it was automatically being supplanted with the default "name".
There is a way to make it disabled by default? When I restart my server the whitelist is on and I want it only during the night. How I can do it?
Thanks and great plugin!
If you want I can send you a modified version of "whitelist.php" where you can check and add players to the whitelist, very useful for forums. They just need to make a super simple form.
Let me know :)
Does the XenForo intregration still works until now ? Back in Nov 18, 2011 when you sent me the Guide :P It's been almost 2 years
I have installed everything needed for mysql. I players in the database. But only file works. Not url och sql. I can use file and use the /import command to get users from the database but I want to use sql instead of file. When I choose url or sql noone can join the server because they are not on the whitelist.
What do I do?
Problems created when a non-whitelisted player tried to log in immediately after server restart or dewhitelist reload (was only doing that for testing purposes). Not sure what exactly is going on, but it's reproducible when server restarts or dewhitelist is reloaded. Something up with the db connection? The result is that the server hangs, chunks don't load, and a restart is the only thing that will fix it. No crash report is generated, but our server will restart itself when it loses a heartbeat. This been reproduced three times under testing on the live server on purpose this morning, but has plagued us for a bit longer than that, any ideas?:
http://pastie.org/6365252
CB version: git-Bukkit-1.4.6-R0.3-b2586jnks
DE version 1.5.2
@BlackVoidRules, do you think you can add the possibility to say that only cracked players have to be on the Whitelist? I mean, that cracked users can't join with a Premisum user name, only with a name which is in the Whitelist??
@BlackVoidRules
Thank you, haven't tought about that one
@NeoMine
Try deleting the current config and reconfigure it wit the same values.
@NaStezZ
It's using | as seperator
How do you sepperate players if you for example use an url: http://localhost/whitelist.php. Only the first name in the list is allowed to join, the others not. I tried with enters and with a ;
NaStezZ
@BlackVoidRules
and my configure is
Why Error?
and my configure is
Why Error?
@doglover129
The php script is included in the full zip. If you don't like the one provided you have to create your own.
Well I fixed my last error, but can someone send me the proper PhP script? (so that I would just have to set the MySQL settings and go) I am not very good with PhP and I cannot seem to figure out how to wright the website interface.
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\index.php on line 15
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\index.php on line 17
Am I missing something in the php file? And yes, I did intend to switch it to index.php for testing.