feat(examples): rewrite baker-family as coherent Competition Week narrative
Rewrote the baker-family example around a unified story: the annual Harvest
Baking Competition is Saturday. Martha's sourdough starter Old Maggie is
sluggish from a cold snap, Jane is secretly entering the FreeStyle category,
Emma's science fair project is "The Chemistry of Fermentation", Henry is
judging for the first time and worried about impartiality, and Roland is
defending last year's title.
The week's schedules (Mon guild meeting → Tue test bakes → Wed sourcing →
Thu dough prep → Fri science fair → Sat competition → Sun recovery) are
now fully populated with narrative-specific actions.
Files split for composability:
- behaviors/baker_behaviors.sb → 5 focused files by character/domain
- schema/types.sb → 4 files (core, baking, world, social)
- schedules/work_schedules.sb → 4 files (one per schedule)
- relationships/baker_family_relationships.sb → family + bakery
Strong typing: replaced all enumerable string fields with concepts
(BakerSpecialty, Occupation, LocationType, InstitutionType, ParentingStyle,
Intensity, BakeryDomain, BakingDiscipline, ManagementDomain,
CompetitiveAdvantage).
Remove new-syntax-demo.sb (superseded by baker-family example).
2026-02-23 21:51:01 +00:00
|
|
|
//! Locations for the Baker family — Competition Week
|
2026-02-14 15:49:17 +00:00
|
|
|
//!
|
|
|
|
|
//! Demonstrates:
|
|
|
|
|
//! - Location declarations with fields
|
|
|
|
|
//! - Prose descriptions for narrative context
|
|
|
|
|
//! - Locations referenced by schedules and characters
|
|
|
|
|
|
|
|
|
|
location MarthasBakery {
|
|
|
|
|
capacity: 30
|
feat(examples): rewrite baker-family as coherent Competition Week narrative
Rewrote the baker-family example around a unified story: the annual Harvest
Baking Competition is Saturday. Martha's sourdough starter Old Maggie is
sluggish from a cold snap, Jane is secretly entering the FreeStyle category,
Emma's science fair project is "The Chemistry of Fermentation", Henry is
judging for the first time and worried about impartiality, and Roland is
defending last year's title.
The week's schedules (Mon guild meeting → Tue test bakes → Wed sourcing →
Thu dough prep → Fri science fair → Sat competition → Sun recovery) are
now fully populated with narrative-specific actions.
Files split for composability:
- behaviors/baker_behaviors.sb → 5 focused files by character/domain
- schema/types.sb → 4 files (core, baking, world, social)
- schedules/work_schedules.sb → 4 files (one per schedule)
- relationships/baker_family_relationships.sb → family + bakery
Strong typing: replaced all enumerable string fields with concepts
(BakerSpecialty, Occupation, LocationType, InstitutionType, ParentingStyle,
Intensity, BakeryDomain, BakingDiscipline, ManagementDomain,
CompetitiveAdvantage).
Remove new-syntax-demo.sb (superseded by baker-family example).
2026-02-23 21:51:01 +00:00
|
|
|
type: Shop
|
2026-02-14 15:49:17 +00:00
|
|
|
open_hours: "04:00-14:00"
|
|
|
|
|
|
|
|
|
|
---description
|
|
|
|
|
A warm, stone-walled bakery on the corner of Main Street. The front
|
|
|
|
|
room has a long wooden counter built from reclaimed oak, with glass
|
|
|
|
|
display cases showing the day's offerings. Behind it, the kitchen
|
|
|
|
|
holds two large brick ovens, a prep area with marble counters, and
|
|
|
|
|
shelves lined with flour, sugar, and spices.
|
|
|
|
|
|
|
|
|
|
The smell of fresh bread seeps out through the door from before dawn,
|
|
|
|
|
drawing the earliest risers. A small chalkboard by the entrance lists
|
feat(examples): rewrite baker-family as coherent Competition Week narrative
Rewrote the baker-family example around a unified story: the annual Harvest
Baking Competition is Saturday. Martha's sourdough starter Old Maggie is
sluggish from a cold snap, Jane is secretly entering the FreeStyle category,
Emma's science fair project is "The Chemistry of Fermentation", Henry is
judging for the first time and worried about impartiality, and Roland is
defending last year's title.
The week's schedules (Mon guild meeting → Tue test bakes → Wed sourcing →
Thu dough prep → Fri science fair → Sat competition → Sun recovery) are
now fully populated with narrative-specific actions.
Files split for composability:
- behaviors/baker_behaviors.sb → 5 focused files by character/domain
- schema/types.sb → 4 files (core, baking, world, social)
- schedules/work_schedules.sb → 4 files (one per schedule)
- relationships/baker_family_relationships.sb → family + bakery
Strong typing: replaced all enumerable string fields with concepts
(BakerSpecialty, Occupation, LocationType, InstitutionType, ParentingStyle,
Intensity, BakeryDomain, BakingDiscipline, ManagementDomain,
CompetitiveAdvantage).
Remove new-syntax-demo.sb (superseded by baker-family example).
2026-02-23 21:51:01 +00:00
|
|
|
the day's specials in Jane's elegant handwriting. In the back corner,
|
|
|
|
|
Old Maggie — the thirty-year-old sourdough starter — sits in a ceramic
|
|
|
|
|
crock wrapped in a wool blanket, waiting for the cold snap to pass.
|
2026-02-14 15:49:17 +00:00
|
|
|
---
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
location MainStreet {
|
feat(examples): rewrite baker-family as coherent Competition Week narrative
Rewrote the baker-family example around a unified story: the annual Harvest
Baking Competition is Saturday. Martha's sourdough starter Old Maggie is
sluggish from a cold snap, Jane is secretly entering the FreeStyle category,
Emma's science fair project is "The Chemistry of Fermentation", Henry is
judging for the first time and worried about impartiality, and Roland is
defending last year's title.
The week's schedules (Mon guild meeting → Tue test bakes → Wed sourcing →
Thu dough prep → Fri science fair → Sat competition → Sun recovery) are
now fully populated with narrative-specific actions.
Files split for composability:
- behaviors/baker_behaviors.sb → 5 focused files by character/domain
- schema/types.sb → 4 files (core, baking, world, social)
- schedules/work_schedules.sb → 4 files (one per schedule)
- relationships/baker_family_relationships.sb → family + bakery
Strong typing: replaced all enumerable string fields with concepts
(BakerSpecialty, Occupation, LocationType, InstitutionType, ParentingStyle,
Intensity, BakeryDomain, BakingDiscipline, ManagementDomain,
CompetitiveAdvantage).
Remove new-syntax-demo.sb (superseded by baker-family example).
2026-02-23 21:51:01 +00:00
|
|
|
type: Road
|
2026-02-14 15:49:17 +00:00
|
|
|
foot_traffic: 0.8
|
|
|
|
|
|
|
|
|
|
---description
|
|
|
|
|
The main thoroughfare of the town, lined with shops and homes. The
|
|
|
|
|
bakery sits at the busiest corner, where the road from the market
|
|
|
|
|
square meets the lane leading to the school. On market days, stalls
|
|
|
|
|
extend down the street and the air fills with the sounds of haggling
|
|
|
|
|
and laughter.
|
|
|
|
|
---
|
|
|
|
|
}
|
feat(examples): rewrite baker-family as coherent Competition Week narrative
Rewrote the baker-family example around a unified story: the annual Harvest
Baking Competition is Saturday. Martha's sourdough starter Old Maggie is
sluggish from a cold snap, Jane is secretly entering the FreeStyle category,
Emma's science fair project is "The Chemistry of Fermentation", Henry is
judging for the first time and worried about impartiality, and Roland is
defending last year's title.
The week's schedules (Mon guild meeting → Tue test bakes → Wed sourcing →
Thu dough prep → Fri science fair → Sat competition → Sun recovery) are
now fully populated with narrative-specific actions.
Files split for composability:
- behaviors/baker_behaviors.sb → 5 focused files by character/domain
- schema/types.sb → 4 files (core, baking, world, social)
- schedules/work_schedules.sb → 4 files (one per schedule)
- relationships/baker_family_relationships.sb → family + bakery
Strong typing: replaced all enumerable string fields with concepts
(BakerSpecialty, Occupation, LocationType, InstitutionType, ParentingStyle,
Intensity, BakeryDomain, BakingDiscipline, ManagementDomain,
CompetitiveAdvantage).
Remove new-syntax-demo.sb (superseded by baker-family example).
2026-02-23 21:51:01 +00:00
|
|
|
|
|
|
|
|
location TownHall {
|
|
|
|
|
capacity: 200
|
|
|
|
|
type: PublicBuilding
|
|
|
|
|
|
|
|
|
|
---description
|
|
|
|
|
The oldest stone building in town, built in 1780 and expanded twice
|
|
|
|
|
since. The main hall has high ceilings, arched windows, and long
|
|
|
|
|
wooden tables that serve for guild meetings, town councils, and — once
|
|
|
|
|
a year — the Harvest Baking Competition. During competition week, the
|
|
|
|
|
hall smells of flour and anticipation. Trestle tables line the walls
|
|
|
|
|
for each competitor's station, and the judges sit at an elevated table
|
|
|
|
|
at the far end, beneath a portrait of the guild's founder.
|
|
|
|
|
---
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
location SchoolHouse {
|
|
|
|
|
capacity: 120
|
|
|
|
|
type: School
|
|
|
|
|
|
|
|
|
|
---description
|
|
|
|
|
A redbrick building at the end of the lane, with tall windows and a
|
|
|
|
|
bell tower that still rings at eight each morning. The gymnasium
|
|
|
|
|
doubles as the science fair venue on Friday evenings, with folding
|
|
|
|
|
tables arranged in rows for student displays. Emma's poster board
|
|
|
|
|
on fermentation chemistry sits between a model volcano and a
|
|
|
|
|
solar-system mobile, drawing a surprising number of visitors who
|
|
|
|
|
want to know why bread rises.
|
|
|
|
|
---
|
|
|
|
|
}
|