Ontime per worlds specified in config #90


  • Accepted
  • Enhancment
Open
Assigned to _ForgeUser8455416
  • _ForgeUser9276864 created this issue Sep 16, 2012

    An option to track playtime separately in different worlds.

    Lets assume we have Worlds A,B and C. A is smp world where playtime gives promotions, B is creative world where playtime also gives promotions but C is just a gallery and being there does not give any playtime bonuses.

    I would like to be able to set in a config which worlds Ontime would be tracking and be able to add world tracking should there be more worlds created later on. I consider the overworld, nether and end in smp as one world in case you wonder about it.

    example:

    worlds:
        - A
        - B

    so I get the total playtime, which is not that important to me but people seem to like it, and then the playtimes in the worlds A and B but not C (being in world C would still count towards the global online time but would not want to let people to idle there to gain advantages in either world A or B)

    That is the basis of what I mean.

    Thanks

  • _ForgeUser9276864 added the tags New Enhancment Sep 16, 2012
  • _ForgeUser8455416 posted a comment Sep 18, 2012

    I think I understand what you want, but have at least one initial question. Would the time from worlds A & B be tracked separately, or would this be one total combined?

    It is going to take some time to figure out the impacts of doing this, since my design make an assumption across the board that there is only one set of data per player, but there is no technical reason why this can't be done.

    There are a bunch of other enhancement tickets that I said I would do sitting in front of this one, so that too wont help me get to this in short order.

    Having said that I will look forward to doing this one because I think it will present me with some good design/coding challenges.

  • _ForgeUser8455416 removed a tag New Sep 18, 2012
  • _ForgeUser8455416 added a tag Accepted Sep 18, 2012
  • _ForgeUser9276864 posted a comment Sep 20, 2012

    @Edge209: Go

    Well, ideally it would have the total time spent in the server and then separate total times per worlds defined in the config.

    The reasoning is that we really want to reward players according to what they do, you play smp long you get smp rewards and creative rewards for creative stuff but we also have areas that we do not want to reward you for being there as those are things like gallery, where you can watch but not do anything.

    So it would not necessarily need the total of all world combined but even if I see no use for that value at the moment there might be use for it anyway.

    a breakdown like this is probably what I try to explain. So we can add automatic rewards to worlds A and B and well perhaps even on total time played for all the addicts :)

    World A 1h (get rewarded larger claim for playing)
    World B 5h (get extra plots to build on for playing)
    World C 2h (no rewards for being there but would add to total)
    -----------------
    Total 8h
    

    so would probably need separate tracking per world.


    Edited Sep 20, 2012
  • _ForgeUser8455416 posted a comment Sep 21, 2012

    Ok, got it.

    I can't remember if on other issues if you shared your dataStorage option, but I'm thinking that to make this doable will require you to use MySQL as your OnTime data storage method.

    This is going to be a bit of work so it will take some time, and I don't think I can even start to seriously tackle it until the start of October. But I will do it.

  • _ForgeUser9276864 posted a comment Sep 21, 2012

    @Edge209: Go

    SQL is not a problem it is a boon as we really prefer SQL based solutions over others when possible. thanks

  • nightfire187 posted a comment Sep 18, 2013

    This is just almost what i mean. In my usage i would not really need multiworld time tracking. More like multiworld inventory saves or "Adds" to the players inv file when in another world.

    Player hits a mark in world a/b and gets all normal rewards and players inventory is altered in world b/a with its reward.

    Maybe an optional dependency on an inventory plugin. ( Multiverse Inventory ) This is so far above my head when i comes to java.

  • _ForgeUser8455416 posted a comment Sep 19, 2013

    @nightfire187: Go

    I need to confirm what you mean. So when a player hits the mark for a reward and they are in world "A", you would like them to receive the reward in their inventory of both worlds "A" and "B",

    or

    you would like them to receive the reward in the world (could be "A" or "B") that is specified as part of the definition of the reward.

    ???

  • nightfire187 posted a comment Sep 20, 2013

    Could be ("A" or "B") defined by the reward.

    In this case it would reward by default "my normal rewards" in witch ever world the player is in at that time. Nothing new?

    Then if I wanted to add another "world specific" reward it would only give it to that worlds inventory?

    Example: player votes or hits time mark and rewards are given

    (Normal)

    - time/vote rewards promotion in all worlds

    - time/vote rewards money to there balance

    - time/vote rewards exp to player

    (World rewards)

    - time/vote rewards diamonds in world "A"

    - time/vote rewards grass in world "B"

    With the player being in world "A" or "B"


    Edited Sep 20, 2013

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