All posts

When Does It Get Dark?

Rebuilding Time-of-Day From a Fourteen-Turn Voyage

5 min read
playtesting
game-systems
time-of-day
pacing
Caption text here
Caption text here

The 25th sea voyage playtest ran fourteen turns. I bought passage on a ship, boarded, explored the deck, chatted with the crew, walked to the galley for lunch, ate stew, headed topside, watched fog roll in, tried to sleep, woke to bioluminescent predators converging on the hull, and fought creatures crawling over the railing.

Midday arrived at the galley walk. It felt right. Six turns of settling into the ship, meeting people, getting my bearings. That was a morning. Then I walked to the galley and it was lunchtime.

But the way I had built it, that timing was an accident.

Starting With Fixed Turns

When I first built time-of-day, I did the simplest thing that could work: count turns since the player last slept. After a fixed number of turns, dawn became midday. After more, midday became evening. I picked the thresholds by gut feeling and adjusted them twice during earlier playtests when they felt too fast.

It worked well enough that I moved on to other systems. But during this playtest I sat with the session data and realized the thresholds were not actually right. They just happened to land close enough on this particular run.

The issue hit me when I thought about what each turn actually represented. Nodding to a tinker as you walk past takes a few seconds. Exploring a new deck of a ship takes twenty minutes. Eating a bowl of stew in the galley takes half an hour. Fighting a creature takes six seconds of in-world time but feels like it takes much longer. A fixed turn counter treats all of these the same.

If the threshold is "midday after twelve turns," then twelve turns of chatting with the same person at the bar produces the same time passage as twelve turns of hiking through wilderness. One of those is a long conversation over drinks. The other is half a day of travel. The clock should not treat them identically.

What the Playtest Actually Told Me

I went back through the fourteen turns and annotated where each time transition should have landed based on what the player was doing, not how many turns had passed.

Turns one through six were social. Buying passage, boarding, walking the deck, chatting. That sequence felt like a morning. Dawn holding through turn six was correct. Turn seven was me walking to a new location, moving through the ship, finding the galley. That is when midday should fire. It was lunchtime.

Turns eight through eleven were an afternoon. Eating, returning to the deck, watching the weather change, trying to rest. Midday holding through turn eleven was correct. Then turn twelve, the bioluminescent creatures appeared. The sky should be darkening. Evening at turn twelve was correct.

The data was telling me something I should have seen from the start: the right answer depends on what the player is doing, not how many turns have passed.

The Other Problem I Had Been Ignoring

While I was rethinking the system, I noticed something I had been ignoring. On land, time did not advance at all.

The turn-based time system only existed for sea voyages. I had built it specifically for ships because that was where I was playtesting. If a player spent thirty turns exploring a city, talking to merchants, investigating a warehouse, and getting into a bar fight, the sun never moved. It was dawn when they arrived and dawn thirty turns later. The only way time advanced on land was to sleep.

I had not noticed because most of my extended playtesting happened on ships. But it meant every land-based scenario was permanently frozen at whatever time of day I arrived. Night vision penalties, atmospheric descriptions, NPC routines, the cook lighting lanterns at dusk: none of that could happen on land because dusk never came. I needed a system that worked everywhere, not just on ships.

Rebuilding It

I threw out the turn counter and replaced it with something that tracks how much in-world time has passed based on what the player is actually doing. Walking somewhere takes more time than saying something. Searching a room takes more time than opening your pack. Exploring a new area takes more time than asking a question.

Each action the player takes contributes a different amount of weight toward the next time transition. Heavy actions like travel and exploration push the clock forward faster. Light actions like dialogue and inventory management push it slowly. After enough weight accumulates, the time period advances. Sleeping resets everything to dawn.

Now a morning spent entirely in conversation lasts longer than a morning spent hiking. If I spend six turns talking to an interesting NPC, I stay in the same time period. If I spend six turns moving through different locations, I see the sun climb noticeably. I never counted my turns. The world just responded to what I was doing.

And because it runs on action types, not location types, it works everywhere. Ships, cities, dungeons, wilderness, combat. There is no longer a separate time system for sea voyages and a missing one for everything else.

Testing Against the Playtest

I used the fourteen-turn playtest as ground truth. I fed the exact sequence of actions through the new system and checked whether it produced the transitions I had annotated by hand: dawn for the first six turns of settling in, midday when the player walks to the galley, evening when the creatures appear. It matched exactly. I then ran it against other scenarios to make sure a full day of mixed activity reaches night at roughly the right turn count.

The old system happened to get it right on this one run. The new system gets it right because it understands what the player is doing.