Inactive [ADMN] ThumbsApply v3.1.1 - Mute Guests and Auto-Promote them [1.2.3-R0.1]

Discussion in 'Inactive/Unsupported Plugins' started by TOdkommt, Sep 11, 2011.

  1. Offline


    ThumbsApply - The Auto-Application Plugin:
    Version: v3.1.2
    Tested Builds: #2034 (1.2.3-R0.1)

    ThumbsApply is a plugin, that makes life for admins a lot easier. You can not only auto-promote your server guests by letting them enter a password, hidden in the rules or by setting a certain time they have to be online.
    You can also Mute your Guests and show them a special Message on joining the server if you want. This Plugin supports Permissions 3.x, GroupManager, PermissionsEx, bPermissions and PermissionsBukkit.

    Bukkit Dev Page (Updates slower due to file approval): Click here

    by Todkommt

    * Auto-promote Guests on your server
    * Mute guests
    * Show guests a special MotD
    * Fully customizable player messages
    * Supports per world promotion
    * Supports most common permissions plugins
    * Modular structure, you can download only the modules that you need
    * Promotion through password or after a certain time
    * Logs all promotions

    I put a lot of effort and time into this plugin, in which I don't get paid. If you enjoy this plugin, feel free to donate here if you want. The money will be directly referred to my minecraft server.


    * apply: | usage: /apply <password> | description: Promotes the player if the password is correct.
    * apply: | usage: /apply timeleft (if you have a group with MethodTimedPromotion) | description: Returns you the time left until promotion.


    * ThumbsApply.NotGuest: give it to your groups with building rights (required).
    * group.<groupname>: give the permission to every group, replace groupname with the name of the group you are giving the permission to. This is to handle group management in permissions plugins that don't support that natively.


    Here is a default Config with all entries explained:

    options: <-----General Options
    chatBlockEnabled: false <------Block Guests from chatting?
    joinMessageEnabled: true <-------Enable an extra join message for guests?
    tickDelay: 60000 <-------The delay between two ticks (higher is performance friendlier, but less accurate)
    blockPasswordInChat: true <-------Block the usage of the password in the chat (by both guests and players)?
    groups: <------Group configuration
    User: default <-----Any group below Users gets promoted to User after entering the password "default"
    Mod: '%1000' <------Any group below Mod gets promoted to Mod after being online for 1000 minutes


    3.0+ variables:
    * {player} outputs the player name
    * {group} outputs the group name
    * {password} outputs the password (only available with password promotion)
    * {time} outputs the time left until promotion (only available with timed promotion)

    Show Spoiler
    v2.1 or later:
    Just edit the file "localization.yml" made in /plugins/ThumbsApply/localization to your likes. DO NOT remove any single quotes. The $0 in JOIN_MESSAGE_PASSWORD and JOIN_MESSAGE_TIME represents the player name, the $1 in JOIN_MESSAGE_TIME represents the time the player has left until he gets promoted. The $0 in TIME_TO_GO_CHAT represents the time the player has left until he gets promoted.

    v2.4 or later:
    The Localization supports the standard Minecraft color codes as well as the following variables:
    * {player} outputs the player name
    * Temporarily removed: {timeleft} outputs the time left until promotion


    Multi-Permissions Version:
    <Edit by Moderator: Redacted bit url>

    Modules (for v3.x):
    * ModuleTimedPromotion

    Show Spoiler
    Version 2.5.2:
    Multi-Permissions Version:
    Download | Source
    CraftBukkit 1240+:
    Permissions Version:
    Download | Source
    PermissionsEx Version:
    Download | Source
    Superperms/PermissionsBukkit Version:
    Download | Source

    Permissions Version:
    Download | Source
    PermissionsEx Version:
    Download | Source
    Superperms/PermissionsBukkit Version:
    Download | Source
    GroupManager Version:
    Download | Source

    * Localization Files
    * Timed Promotion
    * Your requested features

    Feel free to suggest new features, or send in bug reports.

    Servers that use this plugin (feel free to post you server in the thread so i can add it):


    Version 3.1.2
    * Final fix for localizations (haha, saying that since 4 versions)

    Version 3.1.1b
    * Minor fix for localizations (again >.<)

    Version 3.1.1a
    * Minor fix for localizations
    * Fix for join messages

    Version 3.1.1
    * Minor fix for localizations

    Version 3.1
    * Localizations now work
    * Added command to see the time remaining until promotion
    * Added log file

    Version 3.0.3
    * Declared as public release
    * Added save files for ModuleTimedPromotion
    * Added option to hide password in chat

    Version 3.0.1 beta
    * Added generated group defaults.
    * Added error message when no groups are present (to prevent that ugly NullPointer)

    Version 3.0 beta
    * Revisited the code, rewrote the main class from scratch
    * Modular version of the plugin.
    * Save of time for promotion not implemented yet
    * Relatively stable, but please give me feedback on any bugs.

    Show Spoiler
    Version 2.5.2
    * GroupManager now supports per world promotion.

    Version 2.5.1
    * Added bPermissions support.

    Version 2.5
    * Temporarily removed the {timeleft} and {togroup} localization vars due to bugs
    * Added per world group support (doesn't work with PermissionsBukkit or GroupManager)
    * Added debug mode to give more information on errors

    Version 2.4.2-2.4.4
    * Serveral small technical fixes. Check the BukkitDev page for more information.

    Version 2.4.1
    * Added Configuration reload command

    Version 2.4
    * Redid the localization variable system. More info in the Localization section.

    Version 2.3

    * Added thread restart command to debug the plugin
    * Added message with time until promotion when a player chats with chatblock and timedPromotion enabled

    Version 2.2

    * Added timed promotion

    Version 2.1

    * Added Localization
    * FIX: 2 Checks on command execution were missing

    Version 2.0

    * Updated for CB1597 (1.0.1-R1)
    * Complete Revamp of the plugin, removed serveral unnessessary features and completely rewrote the code to make it more extendable
    * Multi-Permissions Version for all common permission plugins

    Show Spoiler
    Version 1.5
    * Updated for CraftBukkit 1337
    * Combined all single version to one jar (without GroupManager by now)

    Version 1.4

    * Added GroupManager support
    * Added an option to promote users after a certain time (doesn't work with Doublegroups)

    Version 1.3

    * Added Support for multiple group promoting (depending on the entered password)

    Version 1.2

    * Added localization files
    * Added option for custom command (you have to delete the old config to get the new option)

    Version 1.1.1

    * Fixed a code mistake, that made the chatblockenabled option useless (only Permissions and Superperms Version)
    * Wrote permission node down in the plugin.yml

    Version 1.1

    * Adding PermissionsEx Support
    * Changing to check per Permission node (fix for the problems with Bukkit #1091+)

    Version 1.0

    * Releasing ThumbsApply
    Last edited by a moderator: Feb 21, 2017
  2. Offline


    sorry i was inactive for quite a while, due to personal reasons. i'll do a revamp of the plugin, so it should be updated and working again soon.

    i completely revamped the plugin to make the code more extendable and i removed serveral useless features. some features are not implemented yet, the functionality is the same as in v1.0.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
    WoAyumi likes this.
  3. How about a MySql function.
    If a User registers on the webiste, he will be written in the list of promoted users and can play.
    chrisgun likes this.
  4. Offline


    you could realise this way easier by using JSONAPI =)

    unfortunately i dont know anything about json (which is obviously the language JSONAPI works in), so i can't unfortunately :p i just upped a timed promotion version of the plugin =) i changed it tho, it no longer saves the time until promotion on the hard drive, so on server restart or plugin reload the time starts again (the old way is way more complicated to do and often throws errors at you).

    $0 and $1 aren't working for GUEST_CHAT because this message doesn't insert any variables =)

    the message shown when you /apply is TIME_LEFT, which only accepts one argument ($0 for the time).

    and the typo is fixed =)

    the variables in the messages are a bit complicated, may be changing them some day :p

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  5. i get an error when i try to change the timer to true, i just change it to true and i get the error, but when i set it to false, it work with the password, plz help =S

    This happen when i reload the server:

    and this when i send the command /apply:

    this also happen with PermisionEx , this is freaking me out....

    EDIT: This happen when i reload my server plugins, it work but after reload dun work anymore and i get these errors...
  6. Offline


    hmm i have no idea how to fix this. seems to be a problem with bukkit.
  7. Offline



    First of all, thanks you for your time spent doing this awesome plugin. It's just what I needed for my server.

    I got this error on the console when a user was "time promoted".
    Can I do or should do something about it?

    17:12:17 [INFO] Player Nickname is now in Constructor.
    17:12:17 [SEVERE] Exception in thread "Thread-6"
    17:12:17 [SEVERE] java.util.ConcurrentModificationException
    17:12:17 [SEVERE]       at java.util.HashMap$HashIterator.nextEntry(Unknown Sour
    17:12:17 [SEVERE]       at java.util.HashMap$ Source)
    17:12:17 [SEVERE]       at java.util.HashMap$ Source)
    17:12:17 [SEVERE]       at me.Todkommt.ThumbsApply.ThumbsApply.update(ThumbsAppl
    17:12:17 [SEVERE]       at
    17:12:17 [SEVERE]       at Source)
  8. Offline


    hmm strange. have to check that. but the only two things that could stop it from working are a bugged out isOnline check or a crashed timer thread (which would stop it for everyone).

    edit: i posted the code for the timer part, so you can see not much can get wrong there =) pretty short.

    the code the thread does:
                try {
                } catch (InterruptedException e) {
    only has an infinite loop which always uses the update function and then pauses the thread for x seconds (the tickDelay option in the config).

    the code the plugin does on that update function:
    Iterator<Entry<Player, Integer>> iterator = timeToPromote.entrySet().iterator();
                Map.Entry<Player, Integer> entry = (Map.Entry<Player, Integer>);
                timeToPromote.put(entry.getKey(), entry.getValue()-1);
                if(timeToPromote.get(entry.getKey()) <= 0)
                    getPermissionsHandler().setGroup(entry.getKey(), getConfig().getString("options.promoteTo"));
                    Messaging.send(entry.getKey(), Phrase.SUCCESS.parse());
    that part looks bigger but the only thing it does is go through every entry in my hashmap (which assigns a certain key to a certain value), decreasing the time to promote by one. then it checks if the player's time to promote is below or equal to 0, if it is it sets the group, removes the user from the hashmap and sends him a message.

    no it cant, i will implement a command later to restart the timer thread.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  9. TOdkommt if u can fix the problems with the timer ur gonna save my life, i set the timer at default (30 mins) and ppl dont promote after that time, the timer just reset...i dont know what to do, im thinking like adding Stats and Achievements and add one achievement with the password after 1 hour, at that way the new users will be able to promote if they are enought smart for paying attention to the achievement...but if ur able to fix this stuff i dont have to do that =/
  10. Offline



    Ich sehe du bist deutscher also frage ich auf deutsch. ;D
    Mir gefällt dein Plugin sehr! Benutze es selber.
    Aber wäre es vielleicht sogar möglich eine art "Frage - Antwort Spiel" nach dem "Wer wird Millionär" Stil (Antwort A,B,C,D) einzufügen?!
    Also das Gäste auf den Server kommen.
    Gemutet sind und ein Quiz was fragen über die Regeln enthält beantworten müssen.
    Haben sie eine bestimmte Anzahl richtig beantwortet werden sie freigeschaltet.
    Würde sowas gehen?!
  11. Offline


    great plugin, but it repeats over and over. Maybe it could terminate after the first promotion?
  12. Offline


    it should only promote the people once. maybe you havent set the permission ThumbsApply.NotGuest to your users?

    i couldnt update this for a while, because i had to finish my other plugin for my server very quickly. i have now added a fix as well as a suggested feature (see changelog).

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  13. Offline


    Any idea what this is?
    Also internal error in game when using /apply password
  14. Offline


    Yeah, kinda messed up right there... I accidently implemented some work in progress methods into the release version >.< Correct version is up in this Thread now, and should be on BukkitDev soon.

    Leider muss ich dich da enttäuschen, das würde über die eigentliche Funktionalität vom Plugin hinausgehen. Es würde außerdem vorallem die Config extrem vergrößern. Ich werde aber vermutlich in naher Zukunft eine art "Plugin fürs Plugin" System einbauen, sodass ich solche Sachen als optionale Zusatzfeatures anbieten kann.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  15. Offline


    Works now, but I have one issue.

    I am using it with permissionsex, and i use the /pex promote (user) , or even with changing their rank in the permissions.yml. If they change rank, they will be forced to re-enter the password, and it will demote them to the member rank (rank that the password goes to).

    Also, can I use the password and the timer for two different ranks? like password goes from guest to member, and timer goes from member to builder? thanks.

    ok the /pex promote things only happened twice, but the modifying permissions makes it lower
  16. Offline


    Does every group have the ThumbsApply.NotGuest permission node? I'm using it on my server and I had problems with permission nodes not counting for child groups. I had to give every single group the permission node, not only the parent group.
  17. Offline


    Ok il give it a shot. I thought it was only the group promoting to that has the node

    Flawless. Thanks for the great plugin

    Feature suggestion. Multiple groups? Like 2 groups use passwords and 2 use time?
    Don't rush on it though, I can wait :D

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  18. Offline


    I had the same error as MetalMadness, to fix it you will have to set timedPromotion to false.
  19. Offline


    Ah hah! Just got it sorted out. Set up a password in order to get promoted. Feel free to add me to a "Servers who use this plugin" page!
  20. Offline


    Does time count, If the player is offline?
  21. Offline


  22. Offline


    I have a suggestion: A command to reload the config file :3?
    Edit: @TOdkommt , add me to the 'servers that use this plugin" :)
  23. Offline


    that was very easy to implement, new version is up already =)
  24. Offline


    Need help! I don't really know why..but the plugin won't work! I'm using 1.0.1 though
  25. Offline


    what exactly doesnt work? do you get errors? please post them.
  26. Offline


    umm srry about that post what i meant was I keep getting this ' Could not pass event to PLAYER_JOIN ' thing
  27. Offline


    Please help, I just installed this awesome plugin but when I try any command like /apply {password} or anything else, I have a : An internal error occured while attempting to perform this command.

    My console :

    13:42:18 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'appl
    y' in plugin ThumbsApply v2.4
    at org.bukkit.command.PluginCommand.execute(
    at org.bukkit.command.SimpleCommandMap.dispatch(
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.
    at net.minecraft.server.NetServerHandler.a(
    at org.getspout.spout.SpoutNetServerHandler.a(
    at net.minecraft.server.Packet3Chat.a(
    at net.minecraft.server.NetworkManager.b(
    at net.minecraft.server.NetServerHandler.a(
    at org.getspout.spout.SpoutNetServerHandler.a(
    at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
    at net.minecraft.server.MinecraftServer.w(
    Caused by: java.util.regex.PatternSyntaxException: Illegal repetition
    at java.util.regex.Pattern.error(
    at java.util.regex.Pattern.closure(
    at java.util.regex.Pattern.sequence(
    at java.util.regex.Pattern.expr(
    at java.util.regex.Pattern.compile(
    at java.util.regex.Pattern.<init>(
    at java.util.regex.Pattern.compile(
    at java.lang.String.replaceAll(
    at me.Todkommt.ThumbsApply.Messaging.send(
    at me.Todkommt.ThumbsApply.ThumbsApply.onCommand(
    at org.bukkit.command.PluginCommand.execute(
    ... 14 more

    Here is my config.yml :

      promoteTo: Voyageur
      password: Eludia
      chatBlockEnabled: false
      joinMessageEnabled: true
      timedPromotion: false
      timeToPromote: 30
      tickDelay: 60000
    I didn't touch to the localization file.

    Please help ! :(
  28. Offline


    Das Plugin spinnt bei mir habe ich gemerkt...
    Die User werden erfolgreich zu den Gruppen hinzugefügt allerdings können sie immer wieder neu das Quiz beantworten. Also es wird nicht als beantwortet "markiert"...
  29. Offline



    My server also uses this. IP:
    great plugin btw
  30. Offline


    an error would be nice =)

    thats an error i didnt know about, should be fixed in the newest version =)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  31. Offline


    Okay thanks, when'll be this new version out ? :)

Share This Page