M3: japanska skyltar, hjälp och kunskapsnivåer – bilder och designbeslut
40
Home.md
40
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/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 |
|
| [`doc/mal-och-tester.md`](../src/branch/master/doc/mal-och-tester.md) | Projektmål, teststrategi, checklistor |
|
||||||
|
|
||||||
## Så fungerar spelet (läget efter M2)
|
## Så fungerar spelet (läget efter M3)
|
||||||
|
|
||||||
**Menyn** listar banorna i `resources/data/levels/` med resmål. Pilar/WASD
|
**Menyn** listar banorna i `resources/data/levels/` med resmål. Pilar/WASD
|
||||||
väljer, Enter startar, Esc avslutar. Gamepad fungerar också.
|
väljer, Enter startar, Esc avslutar. Gamepad fungerar också.
|
||||||
@@ -36,20 +36,35 @@ kanter. Bana 002 (Shinjuku, 33×21 rutor) finns för att testa just det.
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
**Skyltar** visar sin text när du står stilla på skyltrutan. De talar om
|
**Skyltar** visar sin text när du står stilla på skyltrutan – på japanska.
|
||||||
vilket spår som går vart – det är så du ska hitta rätt utan lista.
|
Ord du kan lyser gult i originalet och översätts i raden under; okända ord
|
||||||
|
står kvar i grått. På lätta banor finns en engelsk rad (cyan) på alla
|
||||||
|
skyltar, på svårare banor på allt färre, på de svåraste inga alls.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
**Fråga någon om hjälp** med H. En förbipasserande förklarar skylten – det
|
||||||
|
tar några sekunder (kortare ju bättre din japanska är), och går du därifrån
|
||||||
|
avbryts det.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
När hjälpen är klar är hela skylten översatt och du har lärt dig ett nytt
|
||||||
|
ord. Lär du dig fyra ord når du nivå 1, och då visar HUD:en resmålet även på
|
||||||
|
japanska (新宿) så att du kan matcha tecknen mot skyltarna. Från nivå 2 visas
|
||||||
|
läsningen efter kända ord. Kunskapen följer med mellan banorna.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
**Spärrarna** (stolpar med grön lampa) släpper bara igenom dig om tågkortet
|
**Spärrarna** (stolpar med grön lampa) släpper bara igenom dig om tågkortet
|
||||||
har saldo. Avgiften dras när du går in i spärren; HUD:en visar saldot. Alla
|
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
|
perronger ligger innanför spärrar – det är en regel som testerna
|
||||||
kontrollerar för varje bana.
|
kontrollerar för varje bana.
|
||||||
|
|
||||||
**Perrongen** (gul ledlinje längs kanten) har ett tåg med tidtabell. Rutan
|
**Perrongen** (gul ledlinje längs kanten) har ett tåg med tidtabell.
|
||||||
längst ner visar spår, linje, resmål och om tåget är inne ("Avgår om") eller
|
Avgångstavlan är en skylt som alla andra – japansk, sedd genom din kunskap –
|
||||||
på väg ("Nästa tåg om"). Står tåget inne syns vagnen bortom kanten och du
|
och visar om tåget är inne ("Avgår om") eller på väg ("Nästa tåg om"). Står
|
||||||
kliver på med Enter.
|
tåget inne syns vagnen bortom kanten och du kliver på med Enter.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -80,7 +95,8 @@ repot gör det. Nya vyer: lägg till i listan i `tools/shots/main.go`.
|
|||||||
```
|
```
|
||||||
cmd/metro-puzzle-jp programstart, flaggor
|
cmd/metro-puzzle-jp programstart, flaggor
|
||||||
internal/game Ebitengine: scener (meny → bana → resultat), rendering, input
|
internal/game Ebitengine: scener (meny → bana → resultat), rendering, input
|
||||||
internal/sim ren spellogik: rutbaserad rörelse, kollision, kamera
|
internal/sim ren spellogik: rörelse, kollision, kamera, banomgång (tåg, spärrar, kort, hjälp)
|
||||||
|
internal/lang japanska: ordbok, tokenisering, kunskap, delvis översättning, engelska-andel
|
||||||
internal/level banformat (JSON), validering, BFS-lösbarhet
|
internal/level banformat (JSON), validering, BFS-lösbarhet
|
||||||
internal/res hittar resources/ (env → bredvid binären → uppåt från cwd)
|
internal/res hittar resources/ (env → bredvid binären → uppåt från cwd)
|
||||||
internal/rng seedad slump (PCG), del-seeds per kontext
|
internal/rng seedad slump (PCG), del-seeds per kontext
|
||||||
@@ -103,6 +119,14 @@ resources/ sprites/ sound/ text/ data/ – skeppas bredvid binäre
|
|||||||
ett vanligt `go test`, utan fönster.
|
ett vanligt `go test`, utan fönster.
|
||||||
- **Ombordstigning är ett val** (Enter på perrongen medan tåget är inne), så
|
- **Ombordstigning är ett val** (Enter på perrongen medan tåget är inne), så
|
||||||
att spelaren hinner läsa skylten innan hen bestämmer sig.
|
att spelaren hinner läsa skylten innan hen bestämmer sig.
|
||||||
|
- **Språket är data + ren logik.** `jp-dictionary.json` är enda källan till
|
||||||
|
japanska ord; `internal/lang` tokeniserar skyltar med längsta matchning och
|
||||||
|
renderar dem genom spelarens kunskap. Ett test kräver att all japanska i
|
||||||
|
banorna finns i ordboken – annars kan spelet inte översätta den.
|
||||||
|
- **PixelMplus 10 px** som enda font (kana + kanji, fri licens), ritad på
|
||||||
|
heltalspositioner för skarpa pixlar.
|
||||||
|
- **Engelska på skyltar hashas från bana + position**, inte från seeden:
|
||||||
|
banorna är statiska och ska se likadana ut varje gång.
|
||||||
- **Intern upplösning 320×180, 16 px-rutor**, heltalsskalning till fönstret.
|
- **Intern upplösning 320×180, 16 px-rutor**, heltalsskalning till fönstret.
|
||||||
- **All slump via seed.** Minispel och oändligt läge ska gå att återskapa
|
- **All slump via seed.** Minispel och oändligt läge ska gå att återskapa
|
||||||
från sparfilen.
|
från sparfilen.
|
||||||
|
|||||||
Reference in New Issue
Block a user