AutoGroup
Source
https://github.com/md-5/AutoGroup
Preface
AutoGroup was a mod I started a long time ago in response to the needs of a server I play on and of those requested by the general public. It has long spent it's time at the bottom of my todo list, instead my time devoted largely to custom plugin requests. Anyway, it is time for me to reveal it to everyone.
Information
AutoGroup is a unique plugin that aims to make the management of groups and promotions much easier for server owners. It keeps track of the time the player has spent online, date they joined and last join time in a sqlite database. This database is then used to give admins the ability to promote users once certain playtime goals are set. There is currently the ability for one longevity rank, ie. Spend one month on the server and three 'addiction ranks', eg accumulate a total of 100 hours playtime.
The other core feature of AutoGroup is it's PayPal donation management system, completely controlled by you! No information ever leaves your website at all. It's setup can be complicated, but I assure the rewards are great. This system makes use of PayPal's Instant Payment Notification API to give near instant confirmation of the payment, which is then inserted into a MySQL database ready for the user to claim. Safe, secure and fast semi-automatic donations.
Installation - Donations
- Run once to generate default config.
- Using phpMyAdmin or a similar tool create a database, if using the donation feature, that is accessible from both your web server and Minecraft server. You may need to make sure MySQL binds to the correct ip to allow outside access. Then place donate.php in a directory on your web server and edit the variables as outlined below:
$host = "localhost";
$username = "AutoGroup";
$password = "AutoGroup";
$database = "AutoGroup";
$myemail = "YOUR EMAIL HERE";
- Read this: https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_admin_IPNSetup
- As I cannot have a PayPal account I can't tell you the correct steps, but read the instructions and you will figure it out. The URL is where you put donate.php In short if using a PayPal button you can add notify_url="http://yoursite.com/donate.php" else follow the instructions.
- If you wish to test using PayPal's sandbox API, use donate.php and follow the instructions here https://www.paypal.com/cgi-bin/webscr?cmd=p/sell/ipn-test-outside
- Put your database details in AutoGroup/config.yml
- Thats it!
Installation - Time features
The config is self explanatory, but here it is for reference:
EDIT: CODE TAGS DONE BROKE SO:
https://github.com/md-5/AutoGroup/blob/master/src/main/resources/config.yml
All times are measured in seconds. To disable a time feature set the time to 0. Addict ranks are given based on cumulative playtime and the loyalty rank is based on how long since they joined the server. The MySQL information is for donations only, and the rest is self explanatory. The default command will work for PermissionsBukkit users.
Commands
/donate [Transaction ID]
Command to donate via PayPal, simply follow it with the transaction id.
/playtime <Player name>
Show statistics about your playtime in seconds, and if you have the permission and another argument is specified, that players information.
Permissions:
autogroup.donate:
description: Allows use of the donate command
default: true
autogroup.playtime:
description: Allows use of the playtime command
default: true
autogroup.playtime.others:
description: Allows use of the playtime command on others
default: op
autogroup.norank:
description: Prevents player from being ranked
default: op
Show your thanks
Well as I may have outlined before, no PayPal account for myself, therefore no donations, however your thanks means a lot to me.
If you are an experienced server owner a tutorial video would be tremendous, just pm me!
Changelog
- Version 1.1.1 - Fix status bug
- Version 1.1 - Fix config and add norank
- Version 1.0 - Initial release
i do not know whhy. but it does not work on my server. nothing happens and if i type commands it also says nothing. as if i never went to the chat or so.
Any chance to get an update for 1.7.9/1.8? Still using this plugin since two years...
It looks great! Is it an idea to make a permissionssystem? Of is it a permissionssystem?
-I'm sorry, I can not so good English....
thanks um its not making their ranks its just telling them u have been moved ot ranked to this and that but it doesnt actually do the command to promote u
does this need an extra plug in to work?
@MetalMadnessMC
@Mrcomputeranswers
I used the 2.0 build and it work great with 1.3
Hey, I seem to be having some problems! Firstly when I download the latest version I get the file 'AutoGroup - Time' so that makes me think that it's not the right jar file! Also when I run the server I get a completely different (smaller) config from what you give as an example config! And finally I can't seem to find the donate.php file! Could you please help or tell me whether the donation part of this plugin has been discontinued! Thanks!
this could be an useful plugin, actually we've been looking for something like this for ages. I hope it gets updated soon!
AutoGroup is throwing no errors but it doesn't seem to be working. Is there any information if this plugin will be updated?
Thanks for your time.
Edit:
I'm using craftbukkit 1.3.1 RB 1
Is it possible to not have MySQL, it never works for me :(
Does this support multi-world?
Yeah I received the same error as MetalMadnessMC. Here is the startup error: http://pastebin.com/zmSZ9iTP Great plugin and wonderful concept by the way!
@MetalMadnessMC
Odd I will take a look.
I will guess this plugin is out of date?
Startup error
http://pastebin.com/HBJkve7a
@ExplosiveTaco nothin to do with this plugin
@ItsKohle correct url is https://github.com/md-5/AutoGroup-time
@md_5 404 on your GitHub.
Seems so..... confusing!
peopel who join can't talk
@xIGoDz
not that I know of. if there was, there'd be no value in devs deciding whether or not to release the source ;)
@aviator1014
Thank you so much. Also Is there a way to open a plugin jar up in Eclipse.
@cublikefoot I've finished a version where /playtime [player] displays the time for the player you specify. As it turns out, the license doesn't allow me to distribute my own version, but after I test to find out if it actually does that, I'll fork this on github so md_5 can just release a new official version.
@xIGoDz In eclipse, right click your src folder, click export, under java click JAR file, then on the next page make sure your src folder is actually being included. Before using the jar, make sure you have all 4 class files. If you didn't edit some of them, just click and drag from the original jar like you would for installing mods. I'm very new to programming, but making the message configurable is something I'd like to see if I can do, given time. So if you can't make it work, hopefully the feature will be available officially in the near future.
@MegaSniperB This is something I need too. I have my time set to 24 hours so given afk kicks and server restarts, it's mentally impossible for someone to stay guest on my server long enough to get autopromoted. What you could do, is give autogroup.norank to every group other than member. If you have inheritance and Member inherits a group lower than it, give -autogroup.norank to Member and autogroup.norank to Trusted and any other groups that inherit Member
For example in pex:
@StuckingFoned that would be redundant, as the plugin uses its own internal tracking to manage players. plus, doing it that way would make logblock a requirement.