[INACTIVE][INFO] Playtime Tracker v0.6 - Log player time and activities online (MySQL/SQLite) [1240]

Discussion in 'Inactive/Unsupported Plugins' started by cwingrav, Aug 23, 2011.

  1. Offline

    cwingrav


    Description:
    Tracks time players have been online (total time as well as last time on), as well as useful stats of their activity, in a MySQL or SQLite db. Gives top X reports as well (like top 5 players in time spent playing).
    NOTE: I've seen other plugins do this but they either are discontinued, buggy or use flat files. They've done a great job. They didn't fit our needs however so Playtime Tracker was created to fill our, and hopefully some other people's needs.

    Download: PlaytimeTracker.jar
    Source: moc_PlaytimeTracker_v0.2.tar.gz
    Dependency: MOCDBLib.jar - see its forum page, project page

    Wiki Link: Minds of Chimera: PlayTime Tracker


    Demonstration Video:


    Screen Shot:
    As of version 0.3, it logs player events per world. Here is what the output of: "/playtimetracker user cwingrav world" displays, where the user is "cwingrav" and the world name is "world".
    [​IMG]

    [​IMG]

    Commands:

    Code:
    /playtime sum- Prints amount of time you have played.
    /playtime sum [player] - Prints stats about time spent playing.
    /playtime sumall- Prints stats about time spent playing for all players ever logged in.
    /playtime laston - Lists last login times of self.
    /playtime laston [player] - Lists last login times of the given player.
    /playtime lastonall - Lists last login times of all players.
    /playtime full - for the player, list their sum and laston
    /playtime full [player] - for the given player, list their sum and laston
    /playtime user [player] [world] - prints user states about their activities in the world
    /playtime top [criteria] [# to print] [world] - Prints the top 5 in the categories this is tracking. Default is top 5 online time.
                       [criteria] currently include: online, place, destroy, die, moved, pk, hk, fk
                           pk=player kills, hk=hostile kills, fk=friendly kills (like cows, pigs, etc).
    Permissions:
    Show Spoiler
    PlaytimeTracker.self:
    description: Gives access to discover the amount of time the player is online.
    default: true
    PlaytimeTracker.player:
    description: Gives access to discover the amount of time a player is online or last on.
    default: false
    PlaytimeTracker.all:
    description: Gives access to discover the amount of time all players are online or last on.
    PlaytimeTracker.top:
    description: Lets people list the top X for a given value.


    Installation:
    1. add the PlaytimeTracker.jar file to your plugins directory.
    2. add the MOCDBLib.jar file to your plugins directory.
    3. follow the configuration instructions below.

    Configuration:
    Show Spoiler

    It uses MOCDBLib for its persistence so see that plugin for more details. Here is a bit that might help you out:

    File: ./plugins/PlaytimeTracker/DBLib.properties:

    Code:
        MySQL=false
        host=localhost
        database=playtimetracker
        username=root
        password=pass
        port=3306
    These settings configure the storage of people's online time. If MySQL is false, then it creates an SQLLite db. If you use MySQL, remember to manually create the given database in mysql. Thanks to the SQLite project for original database code. Currently uses a new DB library based upon it.
    NOTE: This file should generate on the fly if you don't have it. Default is MySQL=false.

    Features Requested:
    • Properties file for setting the names of the databases this is using. This will allow multiple servers to run off the same MySQL server. (ok, will do)
    • Is it possible to have playertime be a variable the MOTD can use? So "Welcome <player> who has been online <X>days and <Y> hours." (ok, will do)
    • /afk support (interesting, might do but I will have to make a lot of changes to support this and to make sure it doesn't impact the server)
    • Report top X for all, for things other than the login time. (This requires a rework of my datastructures, but it will be more optimal so will do it)
    • Log sumall to the server fine.
    Revision History:
    see the project page
     
  2. Offline

    cwingrav

    Cool. Let me know about performance. I queue up DB writes, keeping it in a separate loop. However, the online time checks require going to the DB. I can write code to load all that into memory when they join the server if needed. Or heck, even spawn it in a separate thread if need be. Just haven't bothered yet.
     
  3. Offline

    rskelhorn

    Here is what I am getting with the 2 files I downloaded linked on page on tonight:

    2011-09-29 20:37:58 [SEVERE] Could not pass event PLAYER_QUIT to PlaytimeTracker
    java.lang.NullPointerException
    at moc.PlaytimeTracker.PlaytimeTracker.logoutPlayer(PlaytimeTracker.java:621)
    at moc.PlaytimeTracker.PlaytimeTrackerPlayerListener.onPlayerQuit(PlaytimeTrackerPlayerListener.java:50)
    at org.bukkit.plugin.java.JavaPluginLoader$2.execute(JavaPluginLoader.java:251)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
    at net.minecraft.server.ServerConfigurationManager.disconnect(ServerConfigurationManager.java:154)
    at net.minecraft.server.NetServerHandler.disconnect(NetServerHandler.java:127)
    at org.getspout.spout.SpoutNetServerHandler.disconnect(SpoutNetServerHandler.java:507)
    at org.bukkit.craftbukkit.entity.CraftPlayer.kickPlayer(CraftPlayer.java:157)
    at com.earth2me.essentials.PlayerWrapper.kickPlayer(PlayerWrapper.java:57)
    at com.earth2me.essentials.commands.Commandkick.run(Commandkick.java:32)
    at com.earth2me.essentials.commands.EssentialsCommand.run(EssentialsCommand.java:90)
    at com.earth2me.essentials.commands.EssentialsCommand.run(EssentialsCommand.java:84)
    at com.earth2me.essentials.Essentials.onCommandEssentials(Essentials.java:450)
    at com.earth2me.essentials.Essentials.onCommand(Essentials.java:360)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:39)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:163)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:353)
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:756)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:721)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:714)
    at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
    at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:500)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:464)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
     
  4. Offline

    cwingrav

    Thanks. I need to clean it up. Has to do with people logging out when they were already booted. I can probably clean up the bug but it shouldn't be severe enough to hurt the server.
     
  5. Offline

    rskelhorn

    np bud, sounds good to me. Love the plugin, and so do our users.

    It is great for us, because our ranks are default then regular. I'm not always on, and I don't like letting mods rank up users so I can now base it on playtime.

    I'm wondering if it is possible without too much work or without too much lag to have an on join message:

    Like right now ours is;
    "welcome to *****"
    Rank_User_Name has joined the game.

    Would be interesting to add a "true" in a config to display like:
    "welcome to *****"
    Rank_User_Name has joined the game.
    Rank_User_Name has played on %server for %days/hours and is ranked # % in playtime

    Something to think about anyway

    Kindly

    Rskel
     
  6. Offline

    Tendonsie

    Please add table name option. If you have 5 servers, you need 5 databases, 1 database with 2x 5 tables is better :) Thanks
     
  7. Offline

    cwingrav

    Hmm, I wouldn't know where to start with that. Unless there is something in the API to add environmental variables to the MOTD API. Hmm... will look.

    Hmm, ok. I'll see what I can do. You're going to make me create a configuration file aren't you... ;)

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

    rskelhorn

    Hey no problem,

    Is there not just a way to trigger a message on login, outside of the motd?
     
  9. Offline

    Tendonsie

    We just need the option in your file: table=*******
    Other plugins have it to :)
     
  10. Offline

    cwingrav

    Yeah, I can do it as a one-off line. I was hoping to integrate it into the existing API so people have full control of the data. I'll probably just put this in the above config file as well. Shouldn't be too hard but it won't be all that configurable. I already am capturing the event so shouldn't be too much of a problem.
     
  11. Offline

    wheresmyhotdog

    Any chance on making a spout version?
     
  12. Offline

    cwingrav

    For what functionality in particular? This works just fine in the SpoutCraft client. It use it for my work. I guess a neater display of information is what you mean?
     
  13. Offline

    wheresmyhotdog

    Nevermind. I thought the errors were because spout has it's own packet processor and it was causing the problem. I changed it from the default database information to a mysql one and it works fine now
     
  14. Offline

    rskelhorn

    @cwingrav it is weird that in super permissions as an op and with * perms in mcmyadmin that I have to give myself your specific permissions to be able to use the commands?
     
  15. Offline

    cwingrav

    @rskelhorn - Getting information about yourself is on by default. About others requires permissions. It's up to the admin to set up the permissions they want.
     
  16. Offline

    DopeyBovineMan

    I would really like to see some kind of /afk support, where it doesn't track playtime when the player is /afk.

    Great plugin by the way! Mucho appreciated.
     
  17. Offline

    rskelhorn

    Interesting.. might be hard? as we use mchat there is a mafk as well.. but I think this would be a nice feature.. maybe install a mod to kick afkers that are logged in more than 5 mins so your stats are good?
     
  18. Offline

    DoreeGP

    I have just installed this plugin and it shows everyone's playtime as 15,250 days. How do I fix or reset this?
     
  19. Offline

    cwingrav

    Somehow, it's inserting NULL as a login time as 15,250 days is Jan 1st, 1970 which is 0 for unix filesystems.

    Can you give me more information such as MySQL/SQLite? Maybe a database dump of the PT_timelog table? I haven't seen this before. Java version? Any error messages in the server.log file. Let me know and I'll see what I can do to help.
     
  20. Offline

    DQuaN

    I just did a fresh install and get the same.
     
  21. Offline

    cwingrav

    Ok all, ty for the feedback. I'll fix tonight. 10/5/2011

    @DQuaN @DoreeGP

    Fixed. You'll need to get the MOCDBLib.jar and this one. Had to do with SQLite/MySQL compatibility issues w/ Java as well as differences with timezones. Let me know if there are further problems.

    Also, let me know MySQL vs SQLite when you are reporting issues. Helps be when I try to reproduce the bug.

    Cheers.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 18, 2016
  22. My ServerLog is full with this error:
    It's spamming every second! I have installedPlaytimeTracker.jar and MOCDBLib.jar.
    I'm using MySql

    Code:
    13:31:06 [SEVERE] Could not pass event PLAYER_MOVE to PlaytimeTracker
    java.lang.NullPointerException
            at moc.PlaytimeTracker.PlaytimeTrackerPlayerListener.onPlayerMove(PlaytimeTrackerPlayerListener.java:49)
            at org.bukkit.plugin.java.JavaPluginLoader$7.execute(JavaPluginLoader.java:286)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:180)
            at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:618)
            at net.minecraft.server.Packet10Flying.a(SourceFile:126)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:500)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:464)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
     
  23. Offline

    cwingrav

    @ Pheonix Minecraft

    I've spent an hour on my personal machine and on our main server and I can't reproduce this. I know exactly where the problem is but I can't figure out why. I even used Bukkit version 1240 to see if that was related but still no dice.

    I hot patched the PlaytimeTracker.jar file to reduce the spewing errors. Can you send me your full server.log file? Also, if you could send me a mysql dump of the PT_timelog that would be great, but I know that can be harder to do.

    This error is related to something that is happening earlier that keeps the player's login event from occurring properly and adding the player to memory. If it is a one-off error, this patched file will correct it, though I want to address the source of the error. If this is a failure of the creation of a player entry in memory, this will continue to stream errors.

    Sry you have to debug my code.
     
  24. I think i solved the problem.
    I changed the startsript and now my server gets 2 Gb Ram instead of 3Gb Ram.
    Now my ServerLog doesn't get spammed anymore and the server isn't overloaded anymore.
    Perhaps its only currently. I will give status update, if the problem comes back.

    Sry i'm german, my english isn't very well anymore

    Thanks a lot for your work!
     
  25. Offline

    cwingrav

    Awesome. Thanks for getting back to me. Hope it continues to work.

    ... and your English is better than my German. ;) Ich spreche nicht Deutsch.
     
  26. Offline

    cublikefoot

    In MySQL, where is the total time stored? I'm trying to make it so a player gets more hours added when they pay in-game cash (for rank ups), but when trying to edit the MySQL databases, I don't see a column for playtime sum?
     
  27. Offline

    cwingrav

    Huh, interesting. I don't store a sum though. Probably will optimize this in the future, but I store each login in the PT_timelog table. You could add fake entries there.
     
  28. Got a new problem ! xD
    This error comes a thousand times, when no one is on my server!!!

    Code:
    2011-10-06 20:23:59 [WARNING] [PlaytimeTracker] Could not find player for on player move event. Readding them.
    2011-10-06 20:23:59 [WARNING] [PlaytimeTracker] Could not find player for on player move event. Readding them.
    2011-10-06 20:23:59 [WARNING] [PlaytimeTracker] Could not find player for on player move event. Readding them.
    ......
    and this error comes, when no one is on my server, too:

    Code:
    SEVERE] Could not pass event BLOCK_PLACE to PlaytimeTracker
    java.lang.NullPointerException
        at moc.PlaytimeTracker.PlaytimeTrackerBlockListener.onBlockPlace(PlaytimeTrackerBlockListener.java:26)
        at org.bukkit.plugin.java.JavaPluginLoader$31.execute(JavaPluginLoader.java:455)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
        at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:90)
        at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:74)
        at net.minecraft.server.ItemBlock.a(ItemBlock.java:94)
        at net.minecraft.server.ItemStack.placeItem(ItemStack.java:62)
        at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:275)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:592)
        at net.minecraft.server.Packet15Place.a(SourceFile:57)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
        at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:500)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:464)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)

    Here's my Startlog from last night, after a restart everyone got into bed:

    Code:
    2011-10-06 23:18:29 [INFO] LWC: Loading shared objects
    2011-10-06 23:18:29 [INFO] LWC: Protection cache: 0/10000
    2011-10-06 23:18:29 [INFO] LWC: Native library: plugins/LWC/lib/native/Linux/amd64/libsqlitejdbc.so
    2011-10-06 23:18:29 [INFO] [LogBlock] Version check: There is a newer version: v1.32
    2011-10-06 23:18:29 [INFO] [LogBlock] Connecting to plugins@jdbc:mysql://localhost:3306/plugins...
    2011-10-06 23:18:29 [INFO] Spout 1.0.6.403 has been initialized
    2011-10-06 23:18:29 [INFO] FalseBookExtra v0.88alpha by GeMo enabled
    2011-10-06 23:18:29 [INFO] Using locale de_DE
    2011-10-06 23:18:29 [INFO] Using locale de_DE
    2011-10-06 23:18:29 [INFO] Plugin Essentials Version 2.6.2 geladen, erstellt von Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits, übersetzt von snowleo
    2011-10-06 23:18:29 [INFO] Essentials: Using config based permissions. Enable superperms in config.
    2011-10-06 23:18:29 [INFO] [Essentials] Payment method found (iConomy version: 6)
    2011-10-06 23:18:29 [INFO] [PlaytimeTracker] DBLib Initializing
    2011-10-06 23:18:29 [INFO] [PlaytimeTracker]  openConnection: jdbc:mysql://localhost:3306/playtimetracker:playtimetracker
    2011-10-06 23:18:29 [INFO] [PlaytimeTracker]  Database connection successful
    2011-10-06 23:18:29 [INFO] [PlaytimeTracker] has been enabled! v0.6
    2011-10-06 23:18:29 [INFO] MCBans: Loading language file: german
    2011-10-06 23:18:29 [INFO] MCBans: Starting to save to log file!
    2011-10-06 23:18:30 [INFO] Found Diamonds STARTED
    2011-10-06 23:18:30 [INFO] BookWorm 'Spout' support enabled.
    2011-10-06 23:18:30 [INFO] BookWorm v1.7 loaded!
    2011-10-06 23:18:30 [INFO] [VoxelSniper] Config loaded
    2011-10-06 23:18:30 [INFO] VoxelSniper version 5.019 is enabled! Snipe away.
    2011-10-06 23:18:30 [INFO] [MinecraftViewer] Query running on 95.156.229.212:25565
    2011-10-06 23:18:30 [INFO] [MinecraftViewer] v1.0d Plugin Enabled.
    2011-10-06 23:18:30 [INFO] SignRank version 1.2 loaded!
    2011-10-06 23:18:31 [INFO] [iConomy - Celty] Enabled (13 ms)
    2011-10-06 23:18:31 [INFO] [MOCDBLib] has been enabled! v5
    2011-10-06 23:18:31 [INFO] [FalseBook Core] FalseBookCore v0.88alpha by GeMo enabled!
    2011-10-06 23:18:31 [INFO] FalseBookCart v0.88alpha by GeMo enabled
    2011-10-06 23:18:31 [INFO] [HeroicDeath] 1.11.2 enabled.
    2011-10-06 23:18:31 [INFO] Plugin EssentialsSpawn Version 2.6.2 geladen, erstellt von essentials team, übersetzt von snowleo
    2011-10-06 23:18:31 [INFO] GroupManager - INFO - Superperms support enabled.
    2011-10-06 23:18:31 [INFO] GroupManager - INFO - Scheduled Data Saving is set for every 10 minutes!
    2011-10-06 23:18:31 [INFO] GroupManager version 1.2 (Phoenix) is enabled!
    2011-10-06 23:18:31 [INFO] [FalseBook Chat] 0 ChatRooms loaded.
    2011-10-06 23:18:31 [INFO] FalseBookChat v0.88alpha by GeMo enabled
    2011-10-06 23:18:31 [INFO] WorldEdit 358-4f80e78 enabled.
    2011-10-06 23:18:31 [INFO] WorldEdit: Using the Bukkit Permissions API.
    2011-10-06 23:18:31 [INFO] Plugin EssentialsChat Version 2.6.2 geladen, erstellt von essentials team, übersetzt von snowleo
    2011-10-06 23:18:31 [INFO] [AdminChat] Connected to Permissions.
    2011-10-06 23:18:31 [INFO] [AdminChat] Version 0.5.1 enabled successfully.
    2011-10-06 23:18:31 [INFO] [CFBanner] Plugin Enabled
    2011-10-06 23:18:31 [INFO] [CFBanner] CFBanner was created by CainFoool. Rewrote.
    2011-10-06 23:18:31 [INFO] [CFBanner] Permissions found. Using Permissions v3.1.6
    2011-10-06 23:18:31 [INFO] [MultiWorld] Enabling MultiWorld
    2011-10-06 23:18:31 [INFO] [MultiWorld] Permissions system detected!
    2011-10-06 23:18:31 [INFO] [MultiWorld] load complete
    2011-10-06 23:18:31 [INFO] [MultiWorld] v1.5.1 enabled.
    2011-10-06 23:18:31 [INFO] BorderGuard version 4.2 is enabled!
    2011-10-06 23:18:31 [INFO] Version: 91
    2011-10-06 23:18:31 [INFO] [NarrowtuxLib] v0.8.11 by [narrowtux] enabled.
    2011-10-06 23:18:31 [INFO] [NarrowtuxLib] Payment method found (Essentials version: 2.2)
    2011-10-06 23:18:31 [INFO] [FalseBook Block] 3100 Books loaded!
    2011-10-06 23:18:31 [INFO] FalseBookBlock v0.88alpha by GeMo enabled
    2011-10-06 23:18:31 [INFO] [FalseBook Block] 2 Cauldrons successfully loaded.
    2011-10-06 23:18:31 [INFO] [HelpMessage] Started successfully.
    2011-10-06 23:18:31 [INFO] [VANISH] Now hooking into Dynmap
    2011-10-06 23:18:31 [INFO] [VANISH] Version 1.6.5 enabled.
    2011-10-06 23:18:31 [INFO] Permissions is enable for sdBountyHunter.
    2011-10-06 23:18:31 [INFO] [World Portal] Loading World Portals...
    2011-10-06 23:18:31 [INFO] [World Portal] World Portals loaded
    2011-10-06 23:18:31 [INFO] [World Portal] World Portal V0.1.1 Started
    2011-10-06 23:18:31 [INFO] Lockette version 1.4.4 is being enabled!  Yay!  (Core version 1.2.3)
    2011-10-06 23:18:31 [INFO] Lockette: Detected craftbukkit build [1185] ok.
    2011-10-06 23:18:31 [INFO] Lockette: Linked to GroupManager plugin version 1.2 (Phoenix)
    2011-10-06 23:18:31 [INFO] Fake Permissions version 3.1.6 is enabled!
    2011-10-06 23:18:31 [INFO] Essentials: Using Permissions 3 based permissions.
    2011-10-06 23:18:31 [INFO] WorldEdit: Using the Bukkit Permissions API.
    2011-10-06 23:18:31 [INFO] [AdminChat] Connected to Permissions.
    2011-10-06 23:18:31 [INFO] Lockette: Failed to link to Permissions plugin version 3.1.6!
    2011-10-06 23:18:31 [INFO] Lockette: Ready to protect your containers.
    2011-10-06 23:18:31 [INFO] MoveCraft 0.7.1 plugin enabled
    2011-10-06 23:18:31 [INFO] [MYWARP] [MYWARP]: 9 warps loaded
    2011-10-06 23:18:31 [INFO] [MYWARP] Permissions enabled using: GroupManager v1.2 (Phoenix)
    2011-10-06 23:18:31 [WARNING] [MYWARP] Help plugin not detected. Only providing help via /warp help.
    2011-10-06 23:18:31 [INFO] [MYWARP] MyWarp 2.0 enabled
    2011-10-06 23:18:31 [INFO] NoSpeedKick: Found and will use plugin Permissions v3.1.6
    2011-10-06 23:18:31 [INFO] NoSpeedKick 0.2 enabled
    2011-10-06 23:18:31 [INFO] WorldGuard: Using the Bukkit Permissions API.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa) Single session is enforced.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa) TNT ignition is blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa) Lighters are blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa) Lava fire is blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa) All fire spread is disabled.
    2011-10-06 23:18:31 [INFO] WorldGuard: Loaded configuration for world 'Saresa"
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa_nether) Single session is enforced.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa_nether) TNT ignition is blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa_nether) Lighters are blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa_nether) Lava fire is blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Saresa_nether) All fire spread is disabled.
    2011-10-06 23:18:31 [INFO] WorldGuard: Loaded configuration for world 'Saresa_nether"
    2011-10-06 23:18:31 [INFO] WorldGuard: (Farmwelt) Single session is enforced.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Farmwelt) TNT ignition is blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Farmwelt) Lighters are blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Farmwelt) Lava fire is blocked.
    2011-10-06 23:18:31 [INFO] WorldGuard: (Farmwelt) All fire spread is disabled.
    2011-10-06 23:18:31 [INFO] WorldGuard: Loaded configuration for world 'Farmwelt"
    2011-10-06 23:18:31 [INFO] WorldGuard: 90 regions loaded for 'Saresa'
    2011-10-06 23:18:31 [WARNING] WorldGuard: Region file for world "Saresa_nether" missing or inaccessible.
    2011-10-06 23:18:31 [WARNING] WorldGuard: Region file for world "Farmwelt" missing or inaccessible.
    2011-10-06 23:18:31 [INFO] WorldGuard 5.3 enabled.
    2011-10-06 23:18:31 [INFO] FalseBookIC v0.88alpha by GeMo enabled
    2011-10-06 23:18:31 [INFO] [Showcase] Registriere Typ [basic] (379 Einheiten geladen)
    2011-10-06 23:18:31 [INFO] [Showcase] Registriere Typ [finite] (0 Einheiten geladen)
    2011-10-06 23:18:31 [INFO] [Showcase] Registriere Typ [infinite] (0 Einheiten geladen)
    2011-10-06 23:18:31 [INFO] [Showcase] Registriere Typ [exchange] (0 Einheiten geladen)
    2011-10-06 23:18:31 [INFO] [Showcase] Registriere Typ [tutorial] (0 Einheiten geladen)
    2011-10-06 23:18:31 [INFO] [Showcase] Version 0.7.7.11 wurde aktiviert.
    2011-10-06 23:18:31 [INFO] [dynmap] Using Permissions 3.1.6 for access control
    2011-10-06 23:18:31 [INFO] [dynmap] Loaded 12 shaders.
    2011-10-06 23:18:31 [INFO] [dynmap] Loaded 56 perspectives.
    2011-10-06 23:18:31 [INFO] [dynmap] Loaded 7 lightings.
    2011-10-06 23:18:31 [INFO] [dynmap] Loaded 2 maps of world 'Saresa'.
    2011-10-06 23:18:31 [INFO] [dynmap] Loaded 2 maps of world 'Saresa_nether'.
    2011-10-06 23:18:31 [INFO] [dynmap] Loaded 2 maps of world 'Farmwelt'.
    2011-10-06 23:18:31 [INFO] [dynmap] Dynmap WebServer started on null:8123
    2011-10-06 23:18:31 [INFO] [dynmap] version 0.23 is enabled
    2011-10-06 23:18:31 [INFO] [Citizens] NPC types loaded: healer, wizard, blacksmith, quester, guard, trader
    2011-10-06 23:18:32 [INFO] [Citizens] Permissions system found (GroupManager v1.2 (Phoenix))
    2011-10-06 23:18:32 [INFO] [Citizens] version [1.1.1] loaded.
    2011-10-06 23:18:32 [INFO] [Citizens] Economy plugin found (iConomy v6)
    2011-10-06 23:18:32 [INFO] [Jail] Loaded 1 jail zones.
    2011-10-06 23:18:32 [INFO] [Jail] Loaded 2 prisoners.
    2011-10-06 23:18:32 [INFO] [Jail] Loaded 48 cells.
    2011-10-06 23:18:32 [INFO] [Jail] Jail v2.0.1 loaded!
    2011-10-06 23:18:32 [INFO] LWC: Loaded 137 locale strings (0 overrides)
    2011-10-06 23:18:32 [INFO] LWC: Permissions API: NijiPermissions
    2011-10-06 23:18:32 [INFO] LWC: Currency API: iConomy6Currency
    2011-10-06 23:18:32 [INFO] LWC: Loading SQLite
    2011-10-06 23:18:32 [INFO] LWC: Using: Native
    2011-10-06 23:18:32 [INFO] LWC: Precached 48 protections.
    2011-10-06 23:18:32 [INFO] LWC: At version: 3.53 (b294)
    2011-10-06 23:18:32 [INFO] [LogBlock] Permissions plugin found.
    2011-10-06 23:18:32 [INFO] [LogBlock] Scheduled consumer with bukkit scheduler.
    2011-10-06 23:18:32 [INFO] LogBlock v1.30 by DiddiZ enabled.
    2011-10-06 23:18:32 [INFO] [ChestShop] Permissions version 3.1.6 loaded.
    2011-10-06 23:18:32 [INFO] [ChestShop] LWC version 3.53 loaded.
    2011-10-06 23:18:32 [INFO] [ChestShop] Lockette version 1.4.4 loaded.
    2011-10-06 23:18:32 [INFO] [ChestShop] version 3.21 initialized!
    2011-10-06 23:18:32 [INFO] [ChestShop] iConomy 6 loaded.
    2011-10-06 23:18:32 [INFO] Server permissions file permissions.yml is empty, ignoring it
    2011-10-06 23:18:32 [SEVERE] Could not pass event BLOCK_BREAK to PlaytimeTracker
    java.lang.NullPointerException
        at moc.PlaytimeTracker.PlaytimeTrackerBlockListener.onBlockBreak(PlaytimeTrackerBlockListener.java:19)
        at org.bukkit.plugin.java.JavaPluginLoader$39.execute(JavaPluginLoader.java:511)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
        at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:195)
        at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:92)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:497)
        at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:160)
        at net.minecraft.server.Packet14BlockDig.a(SourceFile:43)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
        at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:500)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:464)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
     
  29. Offline

    Rayden

    Some way to add gametime would be nice though. Our server has been running for 2 months now, and I want to add their total gametime from before as well. I have a php plugin that can read the server.log and display the total playtime, but it doesn't work with larger logfiles, and since we got mcmyadmin our logfile rotates each day as well.

    Otherwise, great plugin. Only installed it a few hours ago, and my staff already love it. :)
     
  30. Offline

    cwingrav

    It's the same error, i just reduced the output spew. Try a new version of the jar file I just put online. It tries another way to recover from the error and it streams debug information.

    I'm really at a loss as to what is causing this bug. I can't reproduce it.
     
  31. Offline

    Schuetrumpf2

    I had the same error. I also had the same error with on PLAYER_MOVE and on BLOCK_DESTROY. I was tinkering, and somehow fixed it. Idk what I did, it just stopped happening.

    Ok. I am trying to resolve all error messages on my console and am down to 2.
    Code:
    00:02:57 [SEVERE] Error occurred while enabling PlaytimeTracker v0.6 (Is it up to date?): For input string: "0.4"
    java.lang.NumberFormatException: For input string: "0.4"
    	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
    	at java.lang.Integer.parseInt(Integer.java:458)
    	at java.lang.Integer.valueOf(Integer.java:554)
    	at moc.PlaytimeTracker.PlaytimeTracker.onEnable(PlaytimeTracker.java:93)
    	at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:126)
    	at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:920)
    	at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:278)
    	at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:173)
    	at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:156)
    	at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:297)
    	at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:284)
    	at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:152)
    	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:348)
    	at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    I am running CraftBukkit #1185. I had compatibility issues when I upgraded to 1240 and to 1317, so I had to downgrade. But I still get this error. Any ideas?
     

Share This Page