Skip to content

Show the player's own home: one still per housing rung - #236

Merged
dmccoystephenson merged 1 commit into
mainfrom
home-per-housing-tier
Oct 24, 2026
Merged

dmccoystephenson merged 1 commit into
mainfrom
home-per-housing-tier

Conversation

@dmccoystephenson

Copy link
Copy Markdown
Member

Home showed the same rented room whatever the player lived in, so buying up the housing ladder never changed the picture. Home now shows the player's own home: one still per rung of the housing ladder that has a roof, each bigger, better built and better furnished than the last, with the fishing gear growing with it.

The five homes

Rung Key Drawn as
Homeless - no picture (unchanged)
Rented Room home-rented a small plastered room upstairs over the tavern (its sign and lit window below): narrow bunk, rickety table, washstand, one cheap cane pole
Driftwood Shack home-shack grey board walls on the shingle, the harbour water to the east, an upturned dinghy: pallet bed, little stove, crate table, net and floats, two poles (one reeled)
Cozy Cottage home-cottage whitewashed walls, flagged floor, a garden with flowers and a picket fence: patchwork-quilt bed, dresser of plates, hearth, rack of three poles
Sturdy Cabin home-cabin log walls, a fire in a stone chimney, a woodpile and pines: double bed, bookshelf, table for four, trophy fish, rack of five poles, tackle chest
Waterfront Manor home-manor on the harbour wall with water east and south, its own jetty and boat: parquet, panelling, tall windows, four-poster, marble fireplace, dining table for six under a chandelier, glass cabinet of seven brass-reeled poles under a marlin

Code. src/stills/stills.py picks the key by rung, in housing.HOUSING_TIERS order (HOME_STILLS), not by tier name. The test pins each rung's name to its still, so a renamed, added or reordered rung fails the test instead of showing the wrong house. Only player.homeTier is read, so the save format, reader and writer are not changed.

Art. art/gen_homes.py writes art/home-*.scene, and a test fails if a committed scene is stale. The stills were rendered with art/render.py and the Strata v0.6.0 strata-golden (headless llvmpipe), then rendered a second time to confirm the output is byte-identical. The single home still and art/home.scene were removed. pictures/ now uses 384,268 of 524,288 bytes. Everything is still marked provisional in art/stills.json, alt text included.

Tests.

  • Every rung maps to a still in the manifest and to a PNG.
  • The five home pictures are distinct.
  • A scripted game loop moves rented → shack → (docks) → cottage → cabin → manor → homeless, and each next visit home shows the new home, ending with no picture.
  • Homeless clears the picture.
  • The bundle test and the docker CI job now check every still the manifest names, and the docker job also requires home-rented and home-manor.

./test.sh passes locally (1060 tests). The README was updated, docs/images/stills/contact-sheet.png was regenerated with all nine stills, and docs/images/stills/homes.png was added.

🤖 Generated with Claude Code

https://claude.ai/code/session_01S6kaEL7kt5Fverjb6didBH


drafted by Claude on behalf of Daniel Stephenson

…025)

Home showed the same rented room whatever the player lived in, so buying
up the housing ladder never changed the picture. Home now has one still
per rung with a roof - the rented room over the tavern, the driftwood
shack on the shingle, the cozy cottage, the sturdy cabin and the
waterfront manor on the harbour wall - each bigger, better built and
better furnished than the last, with more fishing gear on show.

- art/gen_homes.py writes the five scenes (art/home-*.scene); a test
  fails if a committed scene is stale. Rendered with art/render.py at
  Strata v0.6.0, twice, byte-identical. The single home still is gone.
- src/stills/stills.py picks the key by rung, in HOUSING_TIERS order
  (HOME_STILLS); the homeless rung still shows no picture. Only
  player.homeTier is read - no change to saves.
- Tests: every rung maps to an existing still and PNG, rung names are
  pinned so a renamed tier fails, a move shows on the next visit home,
  homeless shows none; the bundle and the docker CI job check every
  still the manifest names.
- pictures/: 384,268 of 524,288 bytes. README and the contact sheet
  updated, plus docs/images/stills/homes.png. All provisional.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S6kaEL7kt5Fverjb6didBH
@dmccoystephenson
dmccoystephenson merged commit 16deb37 into main Oct 24, 2026
2 checks passed
@dmccoystephenson
dmccoystephenson deleted the home-per-housing-tier branch October 24, 2026 22:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant