[ADMIN/INFO] OnTime v3.8.4 -Track playing time - Time-based rewards - Auto Promotions [1.5.2-R1.0]

Discussion in 'Archived: Plugin Releases' started by Edge209, Jun 22, 2012.

?

If you are already using OnTime, what features do you find the most beneficial to your server?

  1. Playing time tracking

    34 vote(s)
    68.0%
  2. Top Player Lists

    14 vote(s)
    28.0%
  3. Automated Rewards - items, econ, XP

    14 vote(s)
    28.0%
  4. Automated Rewards - Permission Group Promotions

    20 vote(s)
    40.0%
  5. Automated Rewards - permission granted, command execution

    8 vote(s)
    16.0%
  6. Automated Rewards: Exclusive to certain groups

    6 vote(s)
    12.0%
  7. Referral Rewards

    8 vote(s)
    16.0%
  8. OnTime Reports

    9 vote(s)
    18.0%
Multiple votes are allowed.
  1. Offline

    Edge209

    OnTime

    Now every MineCraft server can track the playing time (current login, daily, weekly, monthly, and all time) for all players with this powerful, full function plugin. With OnTime a “top 10” list can be generated in game, current and total playing statistics can be displayed (also in game), and daily/weekly/monthly reports of all players can be generated and viewed (off line). Administrators can define OnTime Rewards which will result in econ amounts, items (including enchanted items and potions), item kits, group add/delete, group promotion/demotion, permission grant/denial, command executions, personalized messages, and XP to be automatically issued to a player when they have achieved a specified amount of daily, weekly, monthly, or total playtime on the server. Rewards can also be issued when players refer other players to the server, voted for the server, played for a specified number of different days, or they achieve status as a top player. A built in Votifier Listener makes issuing of rewards for web-site voting a snap. Vault is used so OnTime Rewards and permissions are supported by multiple economy and permission plugins.
    For more information, documentation, and download please visit
    IMPORTANT NOTES on V3.8.1 & V3.8.2

    The recommended setting in the rewards.yml file for the "worlds:" keyword has changed/been expanded. Set this list as follows:
    • " - global" - If your permissions plugin supports a "global" group/player configuration files.
    • " - all" - If your permissions plugin supports multiple group/player configuration files (e.g. one per wrold)
    • To a list of specific worlds if your permission plugin supports multiple group/configuration files (one per world), but you want rewards to only be active in certain worlds.
    • Click here for more information
    NOTE: In V3.8.0 I had introduced the use of the word 'default' for the "worlds" setting. I've decided that was confusing, when I really meant 'global'. OnTime will still handle 'default' and will update your rewards.yml file automatically to 'global'
    IMPORTANT NOTES on V3.8.0

    • If you are upgrading from V3.6.1, I have reverted back to an internal version of the SQLibrary, so if you added SQLibrary.jar when you upgraded to OnTime v3.6.1, you can now delete that jar from your plugin directory.
    • This release supports CraftBukkit versions 1.5.2, 1.5.1, 1.4.7, 1,4.6, 1.4.5, 1.4.4, and 1.42 !

    • When upgrading from v3.7.2 or earlier, this version will perform auto updates to theontime/config.yml ontime/rewards.yml and ontime/output.yml files. It is recommended that you make backups of your current copies of these files before installing and running this version for the first time.

    • For a detailed list of changes see here.
    Features:

    (Items in BOLD are new in the latest 3.8.x release of OnTime)

    Player Statistics

    • Display your own OnTime data: (configurable) plugin default: current login, daily, weekly, monthly, and total time on the server
    • Display anther player's OnTime data: (configurable) plugin default: days since first login, different days on server, current login time, AFK status, AFK time for login, today, week and month; current day, week, and month play time, total OnTime, next OnTime reward(s), and voting and referral statistics.
    • Display all online players’ current session and total time
    • Display ‘top #’ players, ranked by play time
    • Display ‘top #’ players, ranked by total time for the day, week, and month
    • Display 'top #' players who have voted for your server for today, week, month or total
    • Display the 'top # sites' to see where the votes are originating
    • Display the 'top #' players who have referred other players for today, week, month or total
    • Display list of players referred by a specified player.
    Rewards
    • Define rewards issued to players for their time played on the server:
    • Cash! (Economy)
    • MineCraft Items
    • Enchanted Items
    • Potions
    • Item sub-types (e.g. Chiseled Stone)
    • MineCraft Item Kits
    • Permission Group Add/Remove
    • Permission Group Promotion/Demotion
    • Give Permissions
    • Take Away Permissions
    • Execute (almost) any command
    • XP (experience points)
    • Send a message


    • Issue Rewards based on daily, weekly, monthly, or total playtime
    • Define Econ, Item, Command, and XP rewards as recurring or perpetual
    • Define rewards for referring new players to the server
    • Define reward to be issued when a player identifies who referred them.
    • Define rewards to be issued when players vote online for your server (via Votifier)
    • Definition of Individual (or indi) Rewards, which can be issued to a specific player at a specified future time.
    • Issue some rewards to only members of certain permission groups. e.g. donors
    • Issue rewards to the 'top' playtime, voting, or referring players daily, weekly, and/or monthly
    • Give ‘temporary’ rewards such as rank/group memberships or permissions
    • Enable/disable display of 'reward issued' messages to all players
    • Enable/disable display of ‘reward issued’ messages on a per-reward basis
    • Customize displayed ‘reward issued’ message on a per-reward basis
    • Broadcast a message to all Online players when someone else receives a reward. (Good way to advertise rewards issued for voting and referring players.)
    • Display of the next rewards to be issued to all online players
    • Ability to suspend issue of rewards while a player is AFK.
    Messages
    • Pre-define messages that can be issued to players at login, or based on time
    • Define messages adhoc (on the fly) that can be issued to players at login, or based on time
    • Assign customized messages to be displayed when rewards are issued
    • Send a message to a player based on play time (daily, weekly, monthly, or total play time)
    • Define 'welcome' messages to the player, and server announcements on player's login showing OnTime data
    • Enable/Disable server broadcast announcements per player via permissions node
    • Manage messages set via edit of .yml file or in-game/console add/remove/list commands.
    Manipulate a Player's Data
    • Set a player's total OnTime
    • Set a player's number of different days on server
    • Set a player's first login to the server date
    • Add time to a player's total OnTime
    • Remove a player from the OnTime data files
    • Configure plugin to exclude players time 'AFK' from total and daily/weekly/monthly calculations
    • Import player names and their total OnTime (play time) data from YML files, OnTime Reports, or LogBlock plugin.
    Generate Reports
    • HTML and TXT Report format options
    • Generate a report file of all players total time and time stamp of last login event
    • Generate a report file of all players time on your server today, for the week, or for the month
    • Generate a report of player's AFK time daily, weekly, and monthly
    • Configure the 'first day of the week' for weekly reports
    • Configure the 'first day of the month' for monthly reports.
    • Auto generation of total, daily, weekly, and monthly reports
    Manage The OnTime Plugin
    • Automated detection of the availability of a new version of OnTime
    • Select method for storing the OnTime player data: .yml files (default), or MySQL database
    • Auto-purge inactive or players with low total OnTime from the data files
    • Scheduled saves of OnTime data to disk
    • Auto update of all online players data, file save, and data purge on server shutdown/reset
    • 'test’ commands to simulate login/logout events; creating fake OnTime records; test daily reports; test votifier rewards
    • Logging of OnTime auto purge activity, player login and quit events, and reward system events
    • Manual and Automated Generation of Backup versions of OnTime '.dat' files.
    • Import playername and total OnTime data from a .yml file.
    • Importplayername, total OnTime and last login data from the 'logblock plugin' MySQL database.
    • Configure OnTime Report file names and location
    • Administrator defined "help" information that players can easily access.
    • Suspend/Resume all OnTime activity while administering rewards or other OnTime data manipulation
    • Enable/Disable/Configure OnTime LogFile and Console data in game or from the console
    Other Plugin Integration
    • Use of Vault for support of multiple economy and permission plugins [REQUIRED]
    • Integration with Vault Permissions for group changes and permissions add
    • Import playername, total OnTime and last login data from the 'logblock plugin' MySQL database.
    • Issue rewards when players vote for you server on website which also support Votifier.
    • Integration with "AfkTerminator" for discounting time spent AFK while using an AFK Machine
    • Integration with OnSign, to display and auto-update player information on user defined signs.
    • API: OnTime offers an APIto allow other plugin integration with access to OnTime's collected data for player's time on the server.
    • Collection of OnTime plugin usage data via MCStats


    Please see the pages for permissions, configuration, commands, etc.
    Change Log

    For a more detailed change log, see here.

    V3.8.4

    Compiled with Bukkit 1.5.2-R1.0; Java7; Vault 1.2.25;Votifier 1.9

    Fixes

    • Fixed MySQL issue on player logout (introduced in v3.8.3) (Ticket #299)
    • Fixed issue with HTML report output not including total server time in daily, weekly, monthly reports (Ticket #297)
    V3.8.3

    Compiled with Bukkit 1.5.2-R1.0; Java7; Vault 1.2.25;Votifier 1.9

    Fixes

    • Added support for mixed case player names when interfacing with econ plugins (Ticket #246)
    • Improved handling of players that login and logoff within 5 seconds (Ticket #279)
    • Fixed typo in default version of output.yml resulting in bad output for votifier rewards (Ticket #282)
    • Fixed issue where player names 15 or 16 characters long were truncated in reports and screen output (Ticket #287)
    • Fixed NPE seen sometimes with '/ontime' command (Ticket #289)
    • Fixed NPE seen randomly on player login (Ticket #294)
    • Fixed issues with LogBlock import when dataStorage: MYSQL is used (Ticket #293)
    V3.8.2

    Compiled with Bukkit 1.4.7-R1.0; Java7; Vault 1.2.25

    Fixes

    • No longer including patpeter sqlibrary. Replaced with a lighter set of sql functions
    V3.8.1

    Compiled with Bukkit 1.4.7-R1.0; Java7; Vault 1.2.25

    Fixes

    • Fixed error where OnTime reports would fail for servers with >9999 player entries (Ticket#269)
    • Fixed Issue with promotion rewards happening inconsistently (Ticket #267, #264)
    • Fixed issue with ontime.top.exclude not working due to plugin timing error (Ticket #260)
    V3.8.0

    Compiled with Bukkit 1.4.7-R1.0; Java7; Vault 1.2.25

    Functional Enhancements

    • Added "top ten" lists for votes and referrals on a daily, weekly, monthly, and total basis (Tickets #231, #160)
    • Added function to display the names of all players referred by a specified player (Requires MYSQL) (Ticket #150)
    • Added function to suggest possible player names, when name used in the "referred by" command is not in the OnTime database (Requires MYSQL) (Ticket #232)
    • Added function to find players in database 'like' a name, when the exact name is not found. When there are multiple possible matches, they will be displayed to the user of the 'ontime <playerName>' command. (Requires MYSQL)
    • Global (multi & mirrored) world support of permission and group rewards. (Group changes/promotion/demotion and permission add/remove applied equally to all worlds where rewards are enabled.) (Ticket #215)
    • Admin configurable output for "referred by" commands
    • Admin configurable output for when no OnTime record is found for a player specified in a command
    • Added basic API to allow other plugins to access some OnTime data
    • Added Automated backup of output.yml, rewards.yml, and config.yml when OnTime does auto updates to these files.
    New Commands

    • ontime top <#> vote [total/today/week/month]
    • ontime top <#> refer [total/today/week/month]
    • referred list <playerName>
    New Permission

    • ontime.referredby.list
    When true a player is able to execute the "referred list <playerName>" command.
    Fixes

    • Fixed issue where long player names (>14 chars) were losing their first character when added to OnTime reports. (Ticket #209)
     
  2. Offline

    cublikefoot

    This looks a whole lot better than my current playtime plugin. I would use it, but having all of my player's current playtime reset would cause the majority of my server members to quit :p
     
  3. Offline

    Edge209

    The plugin supports import of data so it would be possible to move your current data if there is a way to get the data out of the one you are using. Is the data in MySQL db or .yml/text files?
     
  4. Offline

    Edge209

    How do I get this moved to 'plugin releases'?
     
  5. Offline

    LiLChris

    Thanks for the plugin, really love the reward part. :)
     
  6. Offline

    Edge209

    What do I need to do to get this moved from "plugin submissions" to "plugin releases"?
     
  7. Offline

    c0mp

    Merged nearly-duplicate threads. OP can decide which post they want to keep and delete the other.
     
  8. Offline

    Edge209

    I was not sure what to do since the first post never was moved out of the "submission" state and I had just done a major update. This post is now current and I would appreciate it if this can now be moved to "released". Sorry if I caused confusion or extra work for the moderators.
     
  9. Offline

    md_5

    Ok, approved, similar concept to one of my first plugins.
     
  10. Offline

    Edge209

    New Version 3.0.4 has been uploaded.
     
  11. Offline

    RasCas

    Error in 3.05 with latest Dev Build:
    Code:
    2012-08-05 09:19:11 [WARNING] [OnTime] "OnTime v3.0.5" has registered a listener for org.bukkit.event.player.PlayerChatEvent on method "public void me.edge209.OnTime.PlayerEventListener.onPlayerEvent(org.bukkit.event.player.PlayerChatEvent)", but the event is Deprecated. Server performance will be affected; please notify the authors [Edge209].
    org.bukkit.plugin.AuthorNagException
        at org.bukkit.plugin.java.JavaPluginLoader.createRegisteredListeners(JavaPluginLoader.java:302)
        at org.bukkit.plugin.SimplePluginManager.registerEvents(SimplePluginManager.java:507)
        at me.edge209.OnTime.OnTime.onEnable(OnTime.java:198)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:357)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:263)
        at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:245)
        at net.minecraft.server.MinecraftServer.i(MinecraftServer.java:296)
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:275)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:225)
        at net.minecraft.server.DedicatedServer.init(DedicatedServer.java:140)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:380)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:539)
    In the thread about 1.3.1 there is a solution, i think:
     
  12. Offline

    Joxrox

    I know this probably a dumb question ;) but how do I make it so a certain Group (in Group Manager) cannot get rewards? Is there a permission node? Thanks in advance for your help! :)
    P.S. Just as a thought, you should make a wiki with the permissions and stuff.
     
  13. Offline

    Edge209

    Yes, there is a permissions node. It is ontime.rewards.receive

    Have you seen the pages tab on bukkitdev for the permissions, tutorials, and other documentation? http://dev.bukkit.org/server-mods/ontime/pages/

    Are you suggesting that I should do a wiki in addition to this?
     
  14. Offline

    Joxrox

    Oh thank you! And that would be cool to have a Wiki about it because this is a great plugin! Or... maybe just a link at the top of the page telling you to "Click here to view permissions", or something like that. :)
     
  15. I put the .jar of ontime in my plugin folder and it's not creating the config file or the folder for it.
     
  16. Offline

    Edge209

    Did you also download and put the Vault.jar file in your plugin directory?
     
  17. Yes.
     
  18. Offline

    didlyi

    Hi I just found this and it looks really cool..I added to server,imported logblock and set a few rewards up.but when checking time no one's time is going up...I added my self in game and now I think its working for me..but question is..do I have to manual add all player or should it be doing it auto...?...thanks in advance.
    I'm using permissionsbukkit and on tekkit 3.1.2...(also put vault on)
     
  19. Offline

    Edge209

    Hi. There is a permission string needed to enable tracking which is 'ontime.track', but by default this is enabled, so you should not have to do anything more than install the plugin to make this basic function work for all players.

    I assume that you are 'op' for the server, so it could explain why it seems to work for you and not for anyone else, because bukkit handles permissions differently for 'ops'. This would mean that for some reason OnTime is not working correctly with permissionsbukkit in your configuration.

    One thing you could do to help me figure out what is going on is to enable logging from the /plugin/ontime/config.yml. And set the following:

    longEnable: true
    logLevel: 1
    consoleLogLevel: 1

    This will generate a new file /plugin/ontime/OnTimeLog.txt and will geneate some more detailed handling information in your console. Especailly the content in the .txt file will give me a better clue of what is happening (or not happening ;-) ) on your server. If you put this file to pastebin I can take a look to see if there are any nuggets of info in there. Also please note if you see any strange messages in your console.

    I should have time tonight to load up permissionsbukkit on my test server and see if I can reproduce the same senario. I've had some issues with permisionsbukkit in the past becuase it acts differently than other permissions plugins, so pehaps this is happening again.
     
  20. Offline

    didlyi

    Thanks for quick reply ...so sorry for noob question but would I give groups the 'ontime.track' node?...
    And in regard to the log file.I will get on to that when I finish work later..thank-you again..
     
  21. Offline

    Edge209

    The very first thing the plugin does is to create the folder, so I'm baffeled as to why you are not even getting that far. Is there any output in your console related to OnTime being generated? If so can you please post that?

    You can give them that permission node but you should not have to, and doing so would really just be redundnat because the plugin defaults this to 'enable' for all players. I created it in the case that you wanted to take away tracking from a player or group.

    I'd rather try to figure out what is going on with your server, so don't add the node to your player just yet it will only introduce a new variable to the problem as we try to figure it out.

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

    Siphonex

    Any way of tracking a players kills in pvp as well?
     
  23. Offline

    didlyi

    hi again..i enabled the log but the funny thing is it has nothing in it..just ([08/09/2012 05:51:56] Loaded 1 player's data from MySQL DB:didlyi) thats the ontime.log.txt (just restarted server before i got this..

    and i looked in the server log and it give's this ([SEVERE] Plugin OnTime is attempting to register event org/bukkit/event/player/AsyncPlayerChatEvent, which does not exist. Ignoring events registered in class me.edge209.OnTime.PlayerEventListener) and server has crashed now lol..
    deleted restarted and get this now...INFO] [ONTIME] ERROR {TodayTime.checkNewDay}'TodayDate' expected but not found. 'TodayDate' set to today.

    and client gives this error but cannot get on server [SEVERE]java.io.IOException: Server returned HTTP response code: 503 for URL: http://session.minecraft.net/game/j...7e577839e6e80385faa&serverId=2db1865012280787

    Turns Out minecraft worldwide just crashed..lol..i deleted all that work thinking it was me lol..

    Make any sense??
     
  24. Offline

    Edge209

    Sounds like you have all kinds of problems. :)
    1. I'm guessing that if no tracking is going on, it should not be too suprisng that the logfile is pretty much empty, but I was hoping to see more than what you have in there.
    2. The [SEVERE] error you see about the 'AsyncPlayerChatEvent', tells me you are running a Bukkit 1.2.5 version and not the new Bukkit 1.3.1. The OnTime V3.1.0 is only compatible with Bukkit 1.3.1. You would need to load OnTime V3.0.4 or V3.0.5 if you still want to use Bukkit 1.2.5-R5.0
    3. The 'TodayDate' error likly a result of the server crash, and OnTime should have fixed this, and was just telling you that is what it did. On the next server restart you should not see this again.
    4. Can't help youwith the client side error ....
    Going back to your original problem, it might help if I can see your /plugin/ontime/config.yml. Can you put this up on pastebin? (remember to blank out in that post your MySQL DB password)

    "Anything is possible, it only requires sofware" or so the saying goes.

    Take a look at this link for an idea I am toying with, because if I add PVP tracking it would likly be in conjunction with this extension.

    http://forums.bukkit.org/threads/concept-playtime-based-bounty-ontime-plugin-extension.90594/

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

    didlyi



    me again lol..you love me dont ya lol....THANKYOU i think the version i was using was wrong as you suggested...trying V3.0.5 and players seem to be logging now...what a dumb guy i am lol..thank you again for your help and such a great plugin...
    Oh and all the other error's was because minecraft.net went down for a while lol...
    lets hope i dont spam this thread any more .lol..love ya
     
  26. Offline

    Edge209

    Hey, no problem. Glad you got it working. Next time I'll know to ask the specifics of the versions people are running both on the server and plugin sides before I try to analyze the problem. So I got something out of this exchange too.​
     
  27. Offline

    mclobby

    Hello,

    Would certainly appreciate some help on this issue. I have tried using 3.05 and still same error.
    I receive this error only when i remove # from the group in rewards.yml

    23:13:28 [SEVERE] [ONTIME] Rewards have been disabled due to rewards.yml incompatibility. Your rewards.yml is version 3 or earlier
    23:13:28 [SEVERE] [ONTIME] You must install and reset server with OnTime version 3.0.5, before installing OnTime version 3.1.0 or later.
    Use both 3.0.5 and 3.1.0 but still not able to have this resolve
    any help is highly appreciated.
    Thanks in advance
     
  28. Offline

    Edge209

    Probably the easiest thing to do is to have you post the rewards.yml file you are trying to get to work to pastebin (or similar site) and let me take a look at it. Just post the link here. I don't think it will take long for me to figure out what is wrong.
     
  29. Offline

    mclobby

    I did not edit much regarding the file, all i did was made these changes

    HERE # groups:
    - Default
    - Member
    - Builder
    - Moderator
    - Admin
    #
    # commands:
    # - creative:'creative [player]' NOTES: The (') around the string are REQUIRED & there should be no space before
    # - kill:'kill [player]' or after these (') marks; [player] will be replaced
    # with the target player's name when executed
    #
    #rewards:
    HERE - S,A,0,2,0,0,0,0,G,1,member,S4G1member
    # - S,E,1,0,0,0,0,0,E,1,200,S5E1200
    # - S,A,2,8,10,0,0,0,E,1,1000,S6E11000
    # - R,A,3,0,0,0,4,0,I,2,DIAMOND,S7I2DIAMOND


    Thanks for your prompt response
     
  30. Offline

    Edge209

    I think that you are trying to edit the file in the wrong way, which is why I really need to see the whole file, exactly as you have it. This way it will be easiest for me explain where you may be going wrong.
     

Share This Page