Needs, time, schedules, and routines

A living world needs reasons to act when no quest marker is flashing. Needs create pressure, world time creates sequence, and routines make ordinary life recur. Together they let characters surprise you without becoming random.

Decide what time means

The world clock records game time, ticks, and time scale. Mechanics use world epoch for cooldowns, due dates, schedules, weather, needs, and expiration.

Before authoring time pressure, decide:

Use exact epochs for mechanics and setting language for presentation. “At moonrise” should map to an observable time or light transition if it can cause failure.

Add needs that create choices

Needs work best when they compete with other priorities. Rowan's medicine delivery matters, but hunger and fatigue may make immediate travel risky. Sable wants the ferry reopened, but sleep and safety still matter.

Common life-sim needs include hunger, thirst, fatigue, hygiene, comfort, fun, social contact, privacy, and safety. Each meter advances through its own system and is satisfied by matching world actions and resources.

Use this design test for each need:

QuestionHealthy answer
Can the character perceive the need?prompt and client projections show meaningful bands
Can they satisfy it nearby?food, water, beds, people, shelter, or other affordances exist
Does satisfying it cost something?time, points, money, supplies, travel, or opportunity
Can it conflict with another goal?resting may miss a deadline; helping may delay a meal
Is neglect recoverable?consequences escalate clearly rather than causing unexplained failure

Do not initialize everyone at crisis level unless the scenario begins as a crisis. A world in which every autonomous character is starving will be about food no matter what the premise says.

Use routines for recurring intentions

RoutineComponent records an activity, interval, next due epoch, and last completion. A routine is a recurring prompt fact, not a teleport or guaranteed action. It tells an autonomous character that something is due; the controller still chooses among available verbs and constraints.

Examples:

Write activities as outcomes, not path scripts. “Inspect the ferry lantern” permits a reasonable route and recovery. “Move east, east, use entity_41” is brittle and should be a deterministic controller script if exact replay is truly required.

Use specialized schedules when mechanics own them

Some packages provide stateful schedules. Life-sim careers use JobScheduleComponent for next shift, duration, and interval. Environment plugins own day/night, calendar, and weather. Sim packages may own crops, production, watches, festivals, or travel timing.

Prefer the specialized component when its system changes authoritative state. A biography line saying “Fen opens the store every morning” will influence roleplay but does not open a door, start a shift, or enforce business hours.

Connect schedules to places and affordances:

Layer urgency carefully

Use three time horizons:

If everything is urgent, autonomous controllers will thrash among warnings. If nothing has a deadline or recurring pressure, they may exhaust their explicit goals and wait.

Keep the prompt legible by limiting active goals, open obligations, tracked quests, overdue routines, and critical needs. Archive or resolve stale state instead of letting it accumulate.

Design for absence and interruption

A character may be claimed by a human, suspended, sleeping, blocked by a locked route, or offline during the due epoch. Decide whether a routine:

Avoid spawning a new task entity every tick while a routine is overdue. One recurring state record should remain due until handled, then advance its next due time.

Routine review

Next, give characters continuity across those days in Memories, knowledge, and belief.