diff options
| author | Somhairle H. Marisol <[email protected]> | 2026-09-22 16:33:03 +0800 |
|---|---|---|
| committer | Somhairle H. Marisol <[email protected]> | 2026-09-22 16:33:03 +0800 |
| commit | 9821b54ff2a77539898b62471d79dc4685b59cad (patch) | |
| tree | ffd5fb63883dd05b80fca5729af74be41df3a04d /src/LivingVillage.Desktop.Tests | |
| parent | 0539bba17c260f6a4b51d3cefddac0ff448c19bc (diff) | |
| download | living-village-9821b54ff2a77539898b62471d79dc4685b59cad.tar.gz | |
feat(kernel,desktop): P31 step3 story annals + identity entry + glyph atlas
- Sim.AnnalKind gains StoryAnnal (summary lives in the existing Summary
field); WorldSave v3 serializes it with the new 'story' token. v1/v2
saves never contain the token and stay byte-identical; v3 save -> load
-> save roundtrips byte-for-byte (tested).
- Occupation.Story.identitySummaryOf: plain chronicle-style identity line
written to the yearbook at game start (design section 3), e.g. yi-da-yu-wei-sheng.
- Desktop: story summaries render in the chronicle panel; StartNewGame
appends the identity annal; chooseIntent now routes responses through
Occupation.biasResponse and advances the storyline (one stage per
player dialogue) with the summary appended as a StoryAnnal.
- M5View gains Seed (world seed source for the story start-day hash).
- Chinese copy synced into requiredUiLabels; cjk-glyphs.txt +
CjkGlyphAtlas.characterTable extended 238 -> 307 glyphs (384x480),
atlas regenerated with the deterministic script.
- 4 new kernel tests (115 -> 119); performance digest unchanged.
Diffstat (limited to 'src/LivingVillage.Desktop.Tests')
| -rw-r--r-- | src/LivingVillage.Desktop.Tests/PrototypeTests.fs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/LivingVillage.Desktop.Tests/PrototypeTests.fs b/src/LivingVillage.Desktop.Tests/PrototypeTests.fs index 7b35837..2de0996 100644 --- a/src/LivingVillage.Desktop.Tests/PrototypeTests.fs +++ b/src/LivingVillage.Desktop.Tests/PrototypeTests.fs @@ -1094,14 +1094,14 @@ type PrototypeTests () = [<TestMethod>] member _.CjkGlyphAtlasHasAStableCharacterTableAndGeometry () = - Assert.AreEqual<int>(238, characters.Length) + Assert.AreEqual<int>(307, characters.Length) CollectionAssert.AreEqual(characters, characters |> Array.sort) Assert.AreEqual<int>(characters.Length, characters |> Array.distinct |> Array.length) Assert.AreEqual<int>(16, columns) Assert.AreEqual<int>(24, cellPixels) - Assert.AreEqual<int>(15, rowCount) + Assert.AreEqual<int>(20, rowCount) Assert.AreEqual<int>(384, pixelWidth) - Assert.AreEqual<int>(360, pixelHeight) + Assert.AreEqual<int>(480, pixelHeight) Assert.AreEqual<string>("Assets/cjk-glyph-atlas.png", assetRelativePath) Assert.AreEqual<string>("Assets/cjk-glyphs.txt", manifestRelativePath) |
