Alright, so I wanted to set up a timer for this “bloodmoon” event in the game. I figured it would be handy to know when the next one’s coming up. Here’s how I got it working, step by step.
First, I looked around for any ready-made solutions. I mean, someone must’ve done this before, right? I found a few forum threads and some old Reddit posts, but nothing that was exactly what I was looking for. Most were outdated or just didn’t work anymore.

So, I decided to take matters into my own hands. I started by figuring out the timing of the bloodmoon event. After some observation, it was clear: it happens every seven in-game days. Okay, that’s a solid start.
Next, I needed a way to track in-game time. Luckily, the game has a built-in clock. I wrote down the in-game time of the last bloodmoon, and then I played through a few in-game days, keeping an eye on the clock. I noticed that each in-game day takes about an hour of real-world time. This gave me the crucial conversion factor I needed.
With the timing sorted, I needed to build the actual timer. I dusted off my old programming skills and whipped up a simple script. I chose Python because it’s easy to use and has tons of libraries. The script basically does this:
- Get the current real-world time.
- Calculate the time elapsed since the last bloodmoon, based on my notes.
- Convert that elapsed time into in-game days.
- Figure out how many in-game days are left until the next bloodmoon.
- Convert that back into real-world time.
- Display the remaining time in a user-friendly format.
I ran the script, and boom, it worked! It wasn’t pretty, but it showed me exactly how much time was left until the next bloodmoon. I played around with it for a while, making sure it was accurate. I even left it running in the background while I played the game.
Making it pretty
Of course, a command-line script isn’t the most user-friendly thing. So I spent some time adding a simple graphical interface. I used a library called Tkinter, which is pretty basic but gets the job done. Now the timer has a nice little window that displays the countdown clearly.
Finally, I wanted the timer to run automatically whenever I start the game. That way, I don’t have to remember to launch it manually. I did some digging and figured out how to add the script to my system’s startup processes. Now, every time I boot up my computer, the timer starts up too, ready to keep track of that bloodmoon.
So there you have it. That’s how I built my own bloodmoon event timer. It wasn’t too complicated, but it involved a bit of research, some trial and error, and a dash of coding. Now I’m always prepared for the next bloodmoon, and that’s pretty satisfying.