Rank promotion spam/Per-world promotion #498


  • Defect
  • Replied
Open
Assigned to _ForgeUser8455416
  • iamvishnu created this issue Aug 17, 2014

    NOTE: If you supply copies of your .yml or console log files, please use pastebin, dropbox, or other service and provide link,  instead of copy/paste of the file into this report. Thanks!

    What Version of OnTime and Bukkit are you using?
    OnTime: 3.13.3
    Bukkit: Build #3092

    What storage option are you using? (YML or MYSQL) ?
    MYSQL

    What permissions plugin are you using? (Groupmanager, PEX,bPermissions, etc.)
    PEX

    Please provide a link to a copy of your plugins/OnTime/config.yml:
    http://pastebin.com/taeVyuYx
    What steps will reproduce the problem?
    1.
    2.
    3.

    What is the expected output? What do you see instead?
    Expected players perm group to be set globally, however groups were set per-world. Also, broadcast message for the reward plays repeatedly when a player receives a promotion reward and doesn't stop until the player logs off.

    Do you have an console log of what happened?
    No console message.

    Are you having a "rewards" problem?  Please provide a link to a copy of your /plugins/OnTime/rewards.yml :
    http://pastebin.com/iw8JAWWS

    Did you turn on OnTime logging (/ontime logfile enable 1)?  If so, provide a link to that file too.

    Please provide any additional information below.
    Basically, what's happening is we have a number of rank promotion rewards, which we've never had issues before, however ever since we turned on world whitelist feature, to make sure our item-based rewards are given in the correct worlds, players are only promoted to the correct rank in the whitelisted worlds. So instead of the permissions looking something like this:
    "player123:
        groups:
        - Member"
    They end up looking like this:
    "player123:
        groups:
        - Guest
        worlds:
          survival:
            - Member
          creative:
            - Member
          pvp:
            - Member
          ..."
    etc.
    This causes havoc with a lot of our plugins that can't distinguish between per-world ranks. Also, whenever a player receives a rank-based reward, the promotion message ("player123 has been promoted to rank XYZ") is broadcast every couple seconds until the player logs off the server. Is there any way to fix this without disabling the enabled worlds feature?

  • iamvishnu added the tags New Defect Aug 17, 2014
  • _ForgeUser8455416 posted a comment Aug 18, 2014

    Once you list out all of the worlds where rewards are enabled, OnTime will apply the promotion to each world individually. If you want it to be assigned globally, then you need to remove the list of worlds and simply use "- global" under the "worlds:" keyword in rewards.yml.

    As to why you see endless notifications, I will have to look into that some more to find the root of that problem.

  • iamvishnu posted a comment Aug 19, 2014

    Well yeah, I know that. We have item-based awards that we don't want going to people who are in certain worlds, hence why we need the enabled worlds feature. However, we also need to have users' group promotions applied globally, as there isn't a whole lot of point only applying the groups in certain worlds, especially since other plugins can't handle it. I assume from this response that there isn't an elegant way to do this. It's a shame, because it means effectively having to choose between top player rewards and working rank rewards. Perhaps an option to make certain rewards global could be added?

  • _ForgeUser8455416 posted a comment Aug 19, 2014

    @griffenx: Go

    Yes, sorry right now you would have to choose, but there is one option you could try to make work.

    You can define a reward such that it is only awarded when a player is on one particular world. If the player is in another world when such a reward is earned, it will be put on hold until the next time they enter the right world for that reward. They will be informed the reward is waiting for them in that world.

    E.g.

    /ontime reward add item 2 diamond 2h world=default

    With the above a player would receive a reward of 2 diamonds for 2 hours of play, but they would only get the diamonds if they were in the world named "default" or when they next entered that world.

    It is possible to define several identical rewards each valid in one world, and if the player is in one of those worlds at the time the reward is issued they will get the reward. But with this method they would not get any reward if they were not in one of the eligible worlds, and they would not even be informed that they missed something.

    See here: http://dev.bukkit.org/bukkit-plugins/ontime/pages/rewards/#w-world-specific-rewards

  • _ForgeUser8455416 removed a tag New Aug 20, 2014
  • _ForgeUser8455416 added a tag Waiting Aug 20, 2014
  • TrivalentClanMizar posted a comment Sep 12, 2014

    aaaa


    Edited Sep 12, 2014
  • TrivalentClanMizar removed a tag Waiting Sep 12, 2014
  • TrivalentClanMizar added a tag Replied Sep 12, 2014

To post a comment, please login or register a new account.