M10: byten, hemresan och levelcheck
All checks were successful
release / build-release (push) Successful in 1m37s
All checks were successful
release / build-release (push) Successful in 1m37s
Resor med byten: en bana kan ha next som pekar på en delbana (kind leg, syns inte på bankartan). När man klivit av rätt tåg fortsätter samma omgång på nästa station med klocka, plånbok, sällskap och räknare; par-tiden adderas, dimma och folk är nya, en Byte!-banner visas och HUD:en visar resmålet via bytesstationen. Tidsgräns och missade tåg gäller hela resan. level.ValidateChains kräver sammanhängande kedjor. Nya resor: 007 Akihabara -> Ueno -> Asakusa och finalen 008 Tokyo (två våningar) -> Nippori -> Narita flygplats. Slutscen när sista huvudbanan klaras första gången: planet lyfter, resan summeras, eftertexter; Progress.StoryCleared sparas; flaggan -ending. tools/levelcheck ritar banorna och rapporterar problem. HUD-nivån kortas när mätarna tar plats; poängraden radbryts. Skärmdumpar och docs uppdaterade. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -521,7 +521,7 @@ på **brasse-linux01-runnern** (label `linux-amd64`), aldrig på Pi5:n.
|
||||
- **Kvar till senare:** flera tåg i rad (byten) kommer med M10; bussar;
|
||||
"terminaler" som egna rutor i stället för biljettautomaten.
|
||||
|
||||
### M10 – Story-innehåll och flerbytesbanor
|
||||
### M10 – Story-innehåll och flerbytesbanor ✓ (klar 2026-10-24)
|
||||
|
||||
- **Mål:** hela resan från flygplats till flygplats.
|
||||
- Alla huvudbanor och sidobanor; banor med flera stopp och byten; buss (med
|
||||
@@ -532,6 +532,46 @@ på **brasse-linux01-runnern** (label `linux-amd64`), aldrig på Pi5:n.
|
||||
- Överstimulerande UI/banor som extra svårighet.
|
||||
- **Teknik:** baneditor-stöd behövs troligen här: ett `tools/levelcheck`
|
||||
som ritar banan som bild och rapporterar onåbara rutor.
|
||||
- **Så blev det:** **Byten** är kedjor av banfiler: en huvudbana har `next`
|
||||
som pekar på en delbana (`kind: "leg"`, syns inte på bankartan), som i sin
|
||||
tur kan ha `next`. När man klivit av rätt tåg fortsätter *samma omgång*
|
||||
på nästa station: klockan, plånboken, sällskapets mätare och räknarna
|
||||
följer med, par-tiden adderas, dimma och folk är nya, och en "Byte!"-
|
||||
banner visas. HUD:en visar resans slutmål "via" delbanans mål och
|
||||
"1/2". Tidsgräns och missade tåg gäller hela resan (första banans
|
||||
värden). `level.ValidateChains` kräver att delbanor används exakt en gång,
|
||||
att inga cykler finns och att nästa delbana börjar där den förra slutade
|
||||
(nätets stationer). **Två nya resor:** 007 Akihabara → Ueno (Hibiya eller
|
||||
Yamanote) → Asakusa (Ginza), med fel-håll- och fel-varv-fällor, egna kort
|
||||
och folk; 008 Tokyo (två våningar) → Nippori (Yamanote eller
|
||||
Keihin-Tohoku) → Narita flygplats (Keisei, biljetter med sittplatsval) –
|
||||
storyns final. **Slutet:** när sista huvudbanan klaras första gången
|
||||
visas hemresan (`EndingScene`): planet lyfter över skymningshimlen medan
|
||||
sällskapet vinkar, resan summeras (banor, stjärnor, poäng, ord,
|
||||
souvenirer) och eftertexterna rullar; `Progress.StoryCleared` sparas (M11
|
||||
låser upp oändligt läge/NG+ på den). `-ending` öppnar scenen direkt.
|
||||
**`tools/levelcheck`** ritar varje våning som PNG (onåbara rutor röda,
|
||||
rätt perrong grönkantad, kortaste vägen prickad) och rapporterar
|
||||
lösbarhet, onåbara rutor, perronger utanför spärrar, tågens bedömning och
|
||||
resornas kedjor; `go run ./tools/levelcheck [ord…]` → `build/levelcheck/`.
|
||||
Generatorn fick `platforms` (fler perronger) utöver `floors`/`wide`.
|
||||
- **Klar när:** kedjorna valideras och storyn börjar/slutar på flygplatsen
|
||||
(`level.TestStoryChains`), bytet för med sig tid/plånbok/sällskap och
|
||||
vinner först på sista delbanan (`sim.TestJourneyWithTransfer`), fel tåg på
|
||||
bytesstationen förlorar (`TestJourneyWrongTrainOnSecondLeg`), delbanor
|
||||
laddas (`TestChainLevelsLoad`), alla banor passerar levelcheck. ✓
|
||||
- **Kvar till M10b:** bussar och vägrutor, fler sidobanor, överstimulerande
|
||||
UI som eget svårighetsreglage.
|
||||
|
||||
### M10b – Bussar, vägar och fler sidospår
|
||||
|
||||
- **Mål:** resten av M10-listan som inte rymdes: buss med vägrutor och
|
||||
hållplatser (egen fordonssprite, hållplatsskylt, tidtabell som tågen),
|
||||
fler sidobanor längs storyn (minst en per stad), och ett
|
||||
"överstimulerande UI"-reglage (fler lockskyltar, blinkande reklam, falska
|
||||
avgångstavlor) som kan slås på per bana.
|
||||
- **Teknik:** vägrutor i banformatet, `Vehicle`-abstraktion i sim som tåg
|
||||
och buss delar, återanvänd `nav` för busslinjer.
|
||||
|
||||
### M11 – Oändligt läge och New Game+
|
||||
|
||||
|
||||
Reference in New Issue
Block a user