M7b: tågfaser, räls, animation, vind, indikator och melodier

2026-10-24 10:55:59 +02:00
parent 5822b55803
commit 51dab4c5f2

26
Home.md

@@ -16,7 +16,7 @@ till rätt resmål.
| [`doc/roadmap.md`](../src/branch/master/doc/roadmap.md) | Teknikval, katalogstruktur, milstolpar M0–M12 |
| [`doc/mal-och-tester.md`](../src/branch/master/doc/mal-och-tester.md) | Projektmål, teststrategi, checklistor |
## Så fungerar spelet (läget efter M7)
## Så fungerar spelet (läget efter M7b)
**Menyn** listar banorna i `resources/data/levels/` med resmål. Pilar/WASD
väljer, Enter startar, Esc avslutar. Gamepad fungerar också.
@@ -90,10 +90,17 @@ har saldo. Avgiften dras när du går in i spärren; HUD:en visar saldot. Alla
perronger ligger innanför spärrar – det är en regel som testerna
kontrollerar för varje bana.
**Perrongen** (gul ledlinje längs kanten) har ett tåg med tidtabell.
Avgångstavlan är en skylt som alla andra – japansk, sedd genom din kunskap –
och visar om tåget är inne ("Avgår om") eller på väg ("Nästa tåg om"). Står
tåget inne syns vagnen bortom kanten och du kliver på med Enter.
**Perrongen** (gul ledlinje längs kanten) har ett tåg med tidtabell och
räls bortom kanten. Fem sekunder innan tåget kommer spelar avgångsmelodin,
lamporna vid kanten blinkar för den som står nära och strålkastarna syns i
tunneln. Tåget rullar in i tre vagnar, står med öppna dörrar, dörrsignalen
ljuder de sista sekunderna och sedan accelererar det ut – med damm som
blåser längs perrongen. Avgångstavlan är en skylt som alla andra – japansk,
sedd genom din kunskap – och säger om tåget är inne ("Avgår om"), på väg
("Tåget kör in om") eller borta ("Nästa tåg om"). Du kliver på med Enter
medan dörrarna är öppna.
![Tåget på väg in](/brasse/metro-puzzle-jp/raw/branch/master/doc/img/approach.png)
![Perrongen](/brasse/metro-puzzle-jp/raw/branch/master/doc/img/platform.png)
@@ -176,7 +183,8 @@ internal/res hittar resources/ (env → bredvid binären → uppåt
internal/rng seedad slump (PCG), del-seeds per kontext
internal/archtest beroenderegel: bara game/ui/audio + cmd får röra Ebitengine
tools/build byggverktyg i Go: debug/release, Linux/Windows, kopierar resources/
tools/genart genererar placeholder-grafik (tileset, spelare) tills riktig pixel art finns
tools/genart genererar placeholder-grafik (tileset, spelare, räls) tills riktig pixel art finns
tools/gensound genererar placeholder-ljud (avgångsmelodi, dörrsignal)
resources/ sprites/ sound/ text/ data/ – skeppas bredvid binären
```
@@ -210,6 +218,12 @@ resources/ sprites/ sound/ text/ data/ – skeppas bredvid binäre
gemensamt gränssnitt (Update/Done/Success) och all slump från del-seeds.
Därför kan hela bana 002 – fel biljett, rätt biljett, spärr, trängsel,
resa – spelas igenom i ett vanligt `go test`.
- **Tågets liv är sex faser ur tidtabellen** (away, approaching, arriving,
dwelling, closing, leaving), beräknade i `level` utan tillstånd. Animation,
ljud, vind och indikator i spelet läser bara av fasen – och boten i
testerna kliver på först när dörrarna är öppna.
- **Ljuden är placeholders från `tools/gensound`** (syntetiserade) så att
spelet har rätt *beteende* nu; riktiga inspelningar byter bara ut filerna.
- **Stats är fem multiplikatorer** (fart, törst, fokus, toalett, tur) och
debuffar är bara tabellrader som multiplicerar dem. Items och skills i M8
använder samma tabell åt andra hållet.