You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
'seasonCanvas runs over the six DECIDUOUS pools and the ground tint. crop, haystack, reeds and flowers are summer art in every month, so a winter valley still has a green cornfield in it.',
743
743
},
744
744
{
745
-
head: 'Trees have two states and a nudge',
745
+
head: 'A tree still falls in one nudge',
746
746
body:
747
-
'standing / stump, with felling drawn as the standing sprite shoved ±2px. No half-fallen trunk, no felled log on the ground, no sapling.',
747
+
'The ladder now runs standing → felling → stump → stump with its log → stump, and three to five saplings come up on cleared ground in the evening. The fall itself is still the standing sprite shoved ±2px: there is no half-fallen trunk, no lean, and nothing between “upright” and “gone”.',
748
748
},
749
749
{
750
-
head: 'Props are one sprite each',
750
+
head: 'Crops ripen; nothing else does',
751
751
body:
752
-
'crop never ripens, haystack never shrinks, crates never stack higher as a town grows. Progress is expressed by buildings alone.',
752
+
'crop is three sprites now and moves through them on the clock. haystack, crates, barrels and cart are still one sprite for the whole day — a haystack never grows as it is built up, and a store’s crates never stack higher as the town around them does. Everything except the fields still expresses progress through buildings alone.',
753
+
},
754
+
{
755
+
head: 'The log is hauled by nobody',
756
+
body:
757
+
'A felled trunk lies for 90 world-minutes and then stops existing. No carrier walks out to it, no cart takes it, and the lumber pile in the yard does not grow by one when it goes — the two halves of the valley’s timber economy are drawn, and never joined up.',
753
758
},
754
759
];
755
760
@@ -919,6 +924,40 @@ export default function Catalog() {
note="A tree under the axe is the standing sprite offset ±2px; once felled it is replaced by a stump."
1358
1397
items={treeStates}
1359
1398
/>
1399
+
{/* ---- living details (additive) ---- */}
1400
+
<Row
1401
+
title={`After the axe (${treeAfter.length})`}
1402
+
note="The trunk lies beside its stump for 90 world-minutes and is then hauled off to the yards — one log per tree kind, because the bark is all that tells them apart at this size. Three to five saplings come up on the day's cleared ground after 18:00, each beside a stump the day actually made."
1403
+
items={treeAfter}
1404
+
/>
1405
+
{/* ---- end living details (additive) ---- */}
1360
1406
</Section>
1361
1407
1362
1408
<Section
1363
1409
id="props"
1364
1410
title="Props & scatter"
1365
1411
count={counts.props}
1366
-
blurb="Every pooled kind from makePools(), all pool variants, plus the four built on demand by propSprite(). “unused” means gen.ts never emits it."
1412
+
blurb="Every pooled kind from makePools(), all pool variants, plus the four built on demand by propSprite(). “unused” means gen.ts never emits it. The log and sapling pools are shelved with the trees, whose felling is the only thing that asks for them."
note="The one prop that is not a single sprite. A plot is sprouts before ~10:00, the rows that have always been here until ~16:00, and tall gold after — the stage is a pure function of the clock and a ±40-minute jitter off the plot's own seed, so a valley's fields do not all turn on the same stroke. All three stages share a pool index, so a field keeps its colour and its earth as it ripens."
note="Pooled, but never a PropSpec: chests are their own list on the map. The timeline walks a found chest along all three — mound, prised open, emptied."
0 commit comments