Locations
All 14 locations in the v1 town, with their NPCs, schedules, events, and AI behavior weights.
Each location follows the same documentation template:
- Identity — what it is, who owns it
- Schedule — when it's open, when it's busy
- NPCs — who is regularly present
- Events — what commonly happens here
- Behavior weights — how the AI prioritizes this location vs others
1. 🏛️ Town Square
Identity: A central open square with a fountain, a few benches, and weekly market stalls. The heart of the town.
Schedule: Always open. Busy 10:00–14:00 and 17:00–19:00. Quiet at night.
NPCs:
- 🧓 Eleanor Hartwell (63, retired teacher) — feeds the pigeons every morning
- 👦 Tommy Briggs (12, student) — cuts through on his way to school
Common events:
- Casual conversations between passing NPCs
- NPCs pausing to rest
- Eleanor greeting familiar faces
Behavior weights:
- Morning passersby: high
- Lunch gatherings: medium
- Evening loitering: medium
- Night: low
2. 🏛️ Town Hall
Identity: Administrative building. Mayor's office, records, public notices.
Schedule: Open 09:00–17:00 weekdays. Closed weekends.
NPCs:
- 👔 Mayor Patricia Holloway (54) — works here
- 🧑💼 Clerk Robert Ng (38) — works here
Common events:
- Official announcements
- Citizens coming to ask questions (rare)
- Robert complaining about paperwork in his diary
Behavior weights:
- Citizens visiting: very low (most don't have reason to)
- Worker presence during hours: 100%
3. ⛪ Church
Identity: Small stone church. Weekly service Sunday 10:00. Weddings and funerals as scheduled.
Schedule: Open daily 08:00–18:00. Sunday service 10:00.
NPCs:
- ⛪ Father Marcus (51, priest) — works here
- 🧓 Eleanor Hartwell (volunteer bell-ringer)
Common events:
- Sunday service (well-attended, ~15 NPCs)
- Weddings (emergent, triggered by relationship milestones)
- Funerals (emergent, triggered by NPC death)
- Quiet contemplation
Behavior weights:
- Sunday morning: high
- Weekday: very low
- Weddings/funerals: 100% for invited NPCs
4. 🛒 Market
Identity: Open-air market with ~8 stalls. Vegetables, meat, fish, flowers, bread, tools.
Schedule: Open 07:00–14:00 daily. Closed Mondays.
NPCs:
- 🥕 Maria Esposito (47, greengrocer) — runs a stall
- 🌸 Yuki Tanaka (29, florist) — runs a stall
- 🐟 Old Jack (67, fishmonger) — runs a stall
Common events:
- Daily shopping (most NPCs visit 2–3x/week)
- Conversations between shoppers
- Maria and Yuki occasionally arguing over stall placement
- Old Jack telling fishing stories
Behavior weights:
- Morning shopping: high
- Mid-day: medium
- Afternoon: low (most stalls close)
- Rainy days: very low (nobody likes a wet market)
5. 🥖 Bakery
Identity: Small family bakery. Bread, pastries, coffee to-go.
Schedule: Open 06:00–14:00 Tue–Sat. Closed Sun-Mon.
NPCs:
- 🥐 Anna Schmidt (41, baker) — owns and runs it
- 🧒 Lukas Schmidt (14, her son) — helps on weekends
Common events:
- Morning rush (06:30–08:00)
- Anna chatting with regulars
- Lukas complaining about school in his diary after Saturday shifts
Behavior weights:
- Morning: very high (most NPCs pass through for breakfast)
- Other times: low
6. 🏪 General Store
Identity: Provisions, tools, household goods. A bit of everything.
Schedule: Open 08:00–19:00 daily.
NPCs:
- 🧑💼 Henry Lawson (52, owner) — works here
Common events:
- NPC restocking runs (typically 1–2x/week per NPC)
- Henry complaining about shoplifting in his diary (low base rate, rises with town events)
Behavior weights:
- Regular visits: low frequency, but high when NPCs need supplies
7. 💊 Pharmacy
Identity: Small pharmacy. Medicines, bandages, basic health advice.
Schedule: Open 09:00–18:00 Mon–Sat.
NPCs:
- 👩⚕️ Dr. Sarah Kim (39, pharmacist) — works here
- 🧑⚕️ Nurse Daniel Park (32) — works here
Common events:
- NPC picking up prescriptions
- Health advice (subtle, emergent)
- Daniel and Sarah bickering like an old couple (they're not)
Behavior weights:
- NPC visits: low frequency, triggered by illness or injury
8. 🍺 The Rusty Anchor (Pub)
Identity: The town's primary social location. Beer, simple food, a dartboard.
Schedule: Open 16:00–24:00 Mon–Thu, 14:00–01:00 Fri–Sat, 14:00–22:00 Sun.
NPCs:
- 🍻 Sam O'Brien (45, publican) — owns and runs it
- 🍻 Tom Whitfield (52, hospital orderly, night shift) — regular
- 🍻 Margaret Caldwell (58, retired librarian) — regular
Common events:
- Friday night crowd (highest attendance)
- Arguments after too many drinks (LLM-generated, validated by rules)
- New friendships forming
- Sam cleaning up after closing (diary material)
Behavior weights:
- Friday/Saturday evenings: very high
- Other evenings: high
- Daytime: low
- This is the #1 emergent-story engine in v1.
9. ☕ Brewed Awakening (Café)
Identity: A quieter daytime alternative to the pub. Coffee, tea, light snacks.
Schedule: Open 07:00–18:00 daily.
NPCs:
- ☕ Lila Wong (33, owner) — works here
- ☕ James Carter (28, school teacher) — regular
Common events:
- Morning coffee runs
- Quiet conversations
- James reading the paper
Behavior weights:
- Morning: high
- Afternoon: medium
- A counterweight to the pub — provides a venue for NPCs who don't drink.
10. 🏥 Hospital
Identity: Small clinic. Emergency room, 8 beds, 2 doctors, 4 nurses.
Schedule: 24/7. Always has staff on shift.
NPCs:
- 👨⚕️ Dr. Michael Chen (47, chief doctor)
- 👩⚕️ Nurse Sarah Kim (also at pharmacy part-time)
- 👨⚕️ Dr. Aisha Patel (35, surgeon)
- 🧑⚕️ Tom Whitfield (52, orderly, night shift)
- 🧑⚕️ Nurse Carla Reyes (41)
Common events:
- Patient arrivals (emergent, triggered by illness/injury)
- Night shift routines
- Long conversations between night-shift staff
- Hospital gossip
Behavior weights:
- Patients: only when sick or injured
- Staff: deterministic by shift
- This is the #2 emergent-story engine (illness arcs).
11. 🚓 Police Station
Identity: Small precinct. 2 officers, 1 desk sergeant.
Schedule: 24/7. Always staffed.
NPCs:
- 👮 Officer Ben Foster (36)
- 👮 Officer Priya Singh (42)
- 👮 Sergeant Joe Williams (55)
Common events:
- Rare crime events (theft, dispute escalation)
- Ben and Priya having philosophical arguments about policing
- Joe being grumpy
Behavior weights:
- Crime: rare but impactful
- Most NPCs never interact with this location
12. 🏫 School
Identity: Primary school. ~50 children NPCs attend.
Schedule: 08:00–15:00 weekdays.
NPCs:
- 👩🏫 James Carter (28, teacher) — works here
- 👩🏫 Helen Walker (45, principal) — works here
Children NPCs (sample):
- 👦 Tommy Briggs (12)
- 👧 Sophie Walker (10, Helen's daughter)
- 👦 Ben Carter (8, James's son)
- 👧 Lily Wong (9, Lila's daughter)
Common events:
- School days
- Teacher frustrations in diaries
- Children forming friendships
- Parent-teacher meetings (rare)
Behavior weights:
- Children: deterministic (school hours)
- Adults: only teachers work here
13. 🏘️ Residential District
Identity: A cluster of ~20 homes. Not a single location — each home is its own sub-location.
Schedule: Always "open" (residents come and go).
NPCs: All 30 NPCs have a home here.
Common events:
- Family dinners
- At-home arguments
- Quiet evenings
- Sleep
Behavior weights:
- 22:00–06:00: very high (everyone sleeps)
- 19:00–21:00: high (dinner, family time)
- Daytime: low (most are at work/school)
14. 🚂 Train Station
Identity: Small station at the south edge. Two trains a day (in-game).
Schedule: Trains at 08:00 and 17:00.
NPCs:
- 🎫 Conductor Frank Miller (60) — works here
Common events (v1):
- Mostly empty. Used in v1 to establish atmosphere.
- v2 will introduce visitors and departures.
Behavior weights:
- v1: very low
- v2: medium (NPCs may travel for work, family, etc.)
Cross-Location Patterns
Morning Flow
Home → Bakery (breakfast) → Workplace (commute)Lunch Flow
Workplace → Café or Pub → WorkplaceEvening Flow
Workplace → Pub/Café/Home → Home (dinner) → Home (sleep)These flows emerge from individual NPC decision-making, not from a hard-coded schedule. They look orderly because most humans are orderly.
Future Locations (v2+)
- 🏞️ Farm (outside town)
- 🏔️ Mine (north edge)
- ⛵ Harbor (v2 multi-town)
- 🏛️ Library (v2)
- 🎭 Theater (v2)