Average Promotion/Demotion #429


  • Accepted
  • Enhancment
Open
Assigned to _ForgeUser8455416
  • _ForgeUser8318808 created this issue Feb 5, 2014

    Hey,

    anything is fine, with you plugin, but I'm missing an option for average playtime promotion/demotion ability.
    I would like to have a system, that promotes/demotes a player to next group up/donw by an average playtime per day, depending on the last customisable days. For example 28 days.

    When a player gathered 21h 30 minutes in the last 28 days, the average playtime is 1290 minutes / 28 =~ 46 minutes

    Calculation: gathered_time_in_period / period = average_playtime

    Expamle settings in config.yml:

    # how often should average be checked in minutes:
    average_checktime: 60
    # who should get checked, false = all users (make no sens), true only online players:
    average_check: true
    # days for calculating average_day_time
    average_period: 28
    # 
    promote message: 'Congratulations: Your average played time in the last %avarage_period% days raises about %time% minutes,  therefore you got promoted to group: %nameofgroup%'
    demote message: 'Sorry, but your played time in the last %avarage_period% days fell to %time% minutes, therefore you got demoted to group: %nameofgroup%
    # time in minutes = groupname
    30 = Pathfinder
    60 = Adventurer
    120 = Scout
    ...
    ...
    600 = Globetrotter...X
    

    The average time should be checked, when a player joins a server and on the predefined interval in config. If a player reaches 30 minutes he gets promoted to group Pathfinder, if he reaches 60 minutes he gets promoted to group Advnenturer, reaching 120 minutes promotes him to group Scout. When he didn't play for a while and only has an average of 36 minutes he gets demoted to group Pathfinder. If a admin could set an player absense, ti would be great. We have a forum, and they have to announce there absence on vaction and so on.

    What do you think about it?

  • _ForgeUser8318808 added the tags New Enhancment Feb 5, 2014
  • _ForgeUser8455416 posted a comment Feb 5, 2014

    I think this is a good idea and definitely doable. The final method for configuration will likely be different than what you suggested, but all of the capability would be there, and if you use MySQL as the data storage, then a "vacation" function would be possible.

    Regarding this "vacation" function, what information would the admin enter? Just the fact that they are on vacation, and then they would have to turn that back off? Or better I think would be to put in a number of vacation days, and that would be taken into account when calculating the "average" the next time the player logs in.

  • _ForgeUser8455416 removed a tag New Feb 5, 2014
  • _ForgeUser8455416 added a tag Waiting Feb 5, 2014
  • _ForgeUser8318808 posted a comment Feb 5, 2014

    Hey,

    at first: AWESOME that you will implement this. Thanks!

    How the settings are done doesn'nt matter for me , if they are there and configurable. It only was an example. But I see you now what I meant. I have my own root server an use MySQL where it's possible.

    Days of absence sounds great. If it could be done by the players themselves, it would be great. -> Less work for the team ;). But an information for staff, that a player set a vacation and how much days, would be nice when a staff member logon and he has the right to see it.

    I got another idea just in time. :D There should also be a maximum amount of vacation days for a year. And if a player exceeds this limit in last 365 days, the vacation could not been set, until they have new free days.

    Vacation should automatically be disabled when a player comes on during vacation or the time they announced for this vacation is exceeded! When a player come on during vacation not used days should be available for next vacation.

    Some permissions would be fine. Like:

    can_use_vacation
    has no vacation limit

    Let me know if you need more information. If my engslih is not that good, be patient, I'm a native german talker.

    I'm looking forward to it when it is finished.


    Edited Feb 5, 2014
  • _ForgeUser8318808 removed a tag Waiting Feb 5, 2014
  • _ForgeUser8318808 added a tag Replied Feb 5, 2014
  • _ForgeUser8318808 posted a comment Feb 5, 2014

    @ThoLav: Go

    If it could be comdined with a reward, would be fine.


    Edited Mar 11, 2014
  • _ForgeUser8455416 posted a comment Feb 5, 2014

    I'm not 100 percent positive I understand what you mean by combined with a reward? In addition to the promotion ?

    But if I understand correctly .....

    The way this would work you could setup a number of different rewards to be issued when the average play goal is met, one would be a promotion, another could be an item, and anything else OnTime already supports for rewards.

  • _ForgeUser8318808 posted a comment Feb 5, 2014

    @Edge209: Go

    You got it.


    Edited Mar 11, 2014
  • _ForgeUser8455416 removed a tag Replied Feb 5, 2014
  • _ForgeUser8455416 added a tag Accepted Feb 5, 2014
  • _ForgeUser8318808 posted a comment Mar 11, 2014

    @Edge209: Go

    Any Idea when it will be implemented?

  • _ForgeUser8455416 posted a comment Mar 11, 2014

    @ThoLav: Go

    The simple answer is 'no, I don't have a target date for this yet'. I'm just today back from a very long trip and need to plan out my next couple of plugin updates. Give me a few days and then check back on the main page, as I will try and publish an update plan.

  • _ForgeUser8318808 posted a comment Mar 11, 2014

    @Edge209: Go

    Too bad. But then I do not need it anymore. Thank you for your attention

    I will make my own with Skript.


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