⏱️ In-game clock & calendar

👤 For: Game Masters · 💳 Plan: All plans · 🔄 Updated 2026-10-14

Wovenkeep's time-tracking layer keeps your in-fiction world ticking in sync with your table — from individual combat rounds all the way to multi-day travel — and automatically expires spells, conditions, and scheduled events as the clock advances.

Combat time at the top of Scenes & Sound: round and turn, Next Turn, the active effects with their remaining time, Short Rest and Long Rest

What it does

  • Displays the current in-game date and time on the Gregorian calendar, a neutral Fantasy calendar, or a fully configurable custom calendar
  • Advances time by a button press (+10 min, +1 h, +4 h, or +8 h), and automatically decrements spell/condition durations and fires scheduled events as the clock moves
  • Calculates travel time from distance + terrain + pace, then applies it to the clock in one click
  • Lets players see the current date, time, and their active effects on their phones in real time
  • Shows active Place Clocks (location-specific countdown timers) on the player HUD

When to use it

Open Live → In-Game Clock whenever the fiction cares about time: tracking concentration and buff durations during combat, computing a travel leg between locations, building pressure with a timed trigger ("at midnight, the gates close"), or just keeping the party honest about short vs. long rests.

Where to find it

Live → In-Game Clock in the live sidebar. The section has three cards: ⏱ In-Game Clock (date, time, calendar), 🗺️ Travel Calculator (distance + pace + terrain → time) and 📅 Scheduled Events (future triggers, e.g. at sunset). The round counter, effects and rests (combat time, see below) sit at the top of Scenes & Sound.

The In-Game Clock section: In-Game Clock, Travel Calculator and Scheduled Events

Pacing timer

In the top bar of the GM tool, next to the player count, a small timer shows your session's wall-clock duration:

⏱ 0:00

Click it to start or pause. The colour shifts from green → amber at 2 h, then red at 2 h 30 min — a silent nudge if the session is running long. The pacing timer is local to your browser and does not affect the in-game clock.

Combat time (rounds and rests)

This panel sits at the top of Live → Scenes & Sound. It overlaps with the Initiative tracker but adds rest mechanics.

Button Effect
← Rewind round Decrement round by 1
Next turn ▶ Same as the Initiative tracker's Next Turn
Next round → Force-advance to the start of the next round
🛌 Short Rest Removes effects with durationKind=rest_short; restores hit dice usage
🌙 Long Rest Removes effects with durationKind=rest_short or rest_long; restores HP / spell slots / abilities

Both rest buttons show a confirm prompt before applying.

💡 Tip: Players can also trigger Short Rest and Long Rest from their own character sheet on their phone — tap Rest in the player HUD. The result is the same as the GM pressing it.

In-game clock

The clock shows the current in-game date and time.

Default state

Fresh campaigns start at the Gregorian calendar, date 1492-04-01, time 08:00. You can switch to any calendar preset at any time; the underlying absolute time is preserved.

⚠️ The ↺ Reset button resets the clock back to 1492-04-01 08:00 (Gregorian). It asks for confirmation before applying.

Quick-advance buttons

[ +10 Min ] [ +1 h ] [ +4 h ] [ 🌙 Sleep (+8h) ] [ ↺ Reset ]
Button Minutes advanced
+10 Min 10
+1 h 60
+4 h 240
🌙 Sleep (+8h) 480 (treated as a long rest)

Every advance recomputes the date display, decrements minute- and hour-based effects, fires any scheduled events whose trigger time has passed, and pushes the new time to player phones.

Day parts

The clock appends a day-part label based on the hour:

Hours Label
05:00–07:59 Dawn
08:00–17:59 Day
18:00–20:59 Evening
all other hours Night

So 1492-04-01 14:30 renders as 1 Blossom Moon 1492 A.F. · 14:30 · Day when using the Fantasy calendar.

Switching calendars

A dropdown below the clock display lets you choose:

Preset Year notation Notes
Gregorian standard year Default for new campaigns
Fantasy calendar A.F. Neutral, setting-agnostic calendar: 12 moons of 30 days each (Ice Moon … Star Moon), 7-day week (Forgeday … Restday)
Custom user-defined Configurable months + holidays, up to 99 months with up to 99 days each

Switching calendar does not reset the time — the same absolute moment is re-rendered in the new calendar's format.

Custom calendars

If the Fantasy calendar doesn't fit your homebrew setting — or you're running a published campaign world with its own calendar — switch to Custom and click Configure.

A dialog opens with two sections:

Months

For each month provide a Name and a Days count. Add rows with + Add Month, remove with the × next to a row. Up to 99 months, each with up to 99 days, are allowed.

Holidays

For each named holiday provide a Name, Month (index from your months list), and Day (1–N within that month). Holidays are decorative — the clock display shows the holiday name when the current date matches.

Click 💾 Save Custom Calendar. The definition is stored with the campaign and the clock switches to it immediately.

💡 Tip: Running a published campaign world with its own calendar? Recreate it as a custom calendar — enter its month names and day counts here.

Effects and conditions

The effects panel tracks anything with a duration: spells, conditions, exhaustion, environmental effects.

Adding an effect

Click + Add Effect and follow the prompts:

  1. Effect name — e.g. Bless, Hunter's Mark, Poisoned
  2. Duration — pick from:
    • 1 Round · 1 Min · 10 Min · 1 h
    • Short Rest · Long Rest
    • Concentration
    • Permanent
  3. Target — leave empty for a global effect, or pick a character to bind to a specific combatant
  4. Visible to players? — OK = all players see it on their initiative panel; Cancel = GM-only

The effect appears in the Effects list:

Bless              Lena             3R
Hunter's Mark      Goblin 2         10min
Concentration      Mira             Concentration

Format: Name | Target | Remaining. Duration codes:

  • <n>R — rounds left
  • <n>min — minutes left
  • <n>×10min — 10-minute blocks left
  • <n>h — hours left
  • SR / LR — expires on next short / long rest
  • ∞ — permanent
  • Concentration — linked to a caster; auto-released if the caster takes damage

Auto-expiry

Wovenkeep decrements durations automatically:

  • Round-based effects tick down each time you click Next Turn (or Next Round)
  • Minute-based effects tick down on every clock advance
  • Rest-based effects expire when you apply a Short or Long Rest
  • Permanent effects never auto-expire

When an effect hits 0 it turns grey and the player's phone shows a toast: "Bless wore off". Click 🗑 to remove it. Expired effects stay visible (greyed) until cleared so you can see what just fell off at a glance.

Concentration

When you add an effect with the Concentration duration:

  • The effect is bound to the chosen character as its concentration owner
  • A Concentration row appears at the top of the effects panel
  • If that character takes damage (via the Initiative tracker → -HP), Wovenkeep prompts: "Lena was concentrating on Bless — release?"

To release manually, click Release next to the concentration entry. To swap to a new spell on the same character, just add a new concentration effect — Wovenkeep auto-releases the old one and shows a confirmation banner.

Travel Calculator

When the party travels between locations, the travel calculator turns distance + terrain + pace into time elapsed and applies it to the clock.

  1. In the Travel Calculator sub-panel, fill in:
    • Distance — a number plus a unit dropdown (Miles / Kilometers)
    • Pace — Slow (2 mph) / Normal (3 mph) / Fast (4 mph) / Forced March (3 mph, >8 h)
    • Terrain — Road / Plains / Hills / Forest / Mountain / Swamp
    • Optionally tick Mounted and enter a mount speed in mph to override the pace
  2. Click Compute.

Wovenkeep displays the travel time and projected arrival:

Distance: 24 miles  ·  Pace: Normal (3 mph)  ·  Terrain: Road
─────────────────────────────────────────────────────────────
Travel time: 8 h
Arrival: 1 Blossom Moon 1492 A.F. · 16:00 · Day
  1. Click Apply travel time to advance the clock. All minute/hour effects decrement, and any scheduled events between now and arrival fire in sequence.

Scheduled Events

Schedule a trigger to fire at a specific future in-game moment.

  1. In the Scheduled Events sub-panel, click + Schedule Event.
  2. Fill in:
    • Event Name — a short description (e.g. "The gates close")
    • Trigger date — in YYYY-MM-DD format (pre-filled to the current in-game date)
    • Trigger time — in HH:MM format (pre-filled to current in-game time + 1 h)
    • Notes — optional
  3. Click + Schedule Event to save.

The event appears in the list with a countdown. When the clock advances past the trigger time:

  • A pop-up notice appears in the GM tool: "⏰ The gates close"
  • The event row highlights to indicate it has fired but not been acknowledged
  • Click Dismiss to clear it

Events are ideal for clock-based pressure: arrive in the city → schedule the gates closing at sunset → travel and roleplay tick the clock → the notice fires at the dramatic moment.

Place Clocks (player-visible)

Place Clocks are location-specific progress clocks defined in your campaign's Worlds & Clocks section. Any clock marked visible to players appears on the player HUD as a segment display:

The Ritual Begins   ● ● ● ○ ○ ○   3/6
The Siege           ● ● ○ ○        2/4

Filled segments (●) are amber; empty segments (○) are dimmed. Players see the clock title and its fill state, but not the description or GM notes. The GM advances segments from the Worlds section of the prep tool; the player phone updates in real time.

What gets recorded

Clock ticks are not logged one by one. What is recorded in the Session Log: rests applied, scheduled events that fired, and calendar changes. The current time and all active effects persist between sessions — picking up a campaign resumes exactly where you left off.

Troubleshooting

Symptom Cause Fix
Effects don't decrement on Next Turn You clicked Next Turn in the Initiative tracker, not in the Combat Time sub-panel Use the Next Turn button inside the Combat Time sub-panel
Custom calendar doesn't render Months list is empty Add at least one month with at least 1 day, then 💾 Save
Travel time looks wrong Terrain or Mounted-speed mismatch Re-check the Terrain dropdown and the mounted-speed field
Scheduled event didn't fire Clock hasn't been advanced past the trigger time yet Click any advance button (+10 Min, etc.) to move the clock past the trigger
Player phone shows no time bar No in-game time state has been sent yet Click any +10 Min button to seed the initial state to connected players
Place Clock not showing on player phone Clock is not marked visible, or status is cancelled Open Worlds & Clocks, edit the clock, and enable Visible to players