Minecraft – How to get the server time in Minecraft

minecraft-java-edition

Is there a plugin to tell what time it is in my SMP server (time in game) without changing the time? I'm hoping for a plugin, and not a mod like Single Player Commands that I have to compile into the server .jar. My other idea is to parse the logs for the last time someone used /time and figure it out from there.

Best Answer

Figured it out. The data is in the level.dat file. Assuming you're using Python, here's a code snippet that should get the current time (run "sudo pip install nbt" first):

import nbt
def get_time():
    n = nbt.NBTFile('%s/%s/level.dat' % (minecraft_dir, session_name))
    if n == None:
        return None
    else:
        return n[0]["Time"].value % 24000

For bonus points, you can change the modulo to a division sign and get how many days it has been since you started.