Mapp, Go-modul, binär, VS Code-sökvägar, dokumentation och visningsnamn följer nu repots namn på Gitea. Arbetsnamnet jp-subway-pussel finns kvar som historik i spelbeskrivningen §15. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
65 lines
3.0 KiB
Markdown
65 lines
3.0 KiB
Markdown
# metro-puzzle-jp – plan
|
||
|
||
Navet för projektets dokumentation. Detaljerna ligger i de länkade filerna.
|
||
|
||
## Mål
|
||
|
||
Ett pixel art-pusselspel där ett sällskap ska hitta rätt tåg genom japanska
|
||
stationer byggda som labyrinter, med skyltar på japanska som spelaren lär sig
|
||
läsa. Spelet ska vara en enda binär med en resursmapp bredvid, lika lätt att
|
||
bygga på Linux som på Windows, utan andra byggverktyg än Go.
|
||
Hela spelidén: [spelbeskrivning.md](spelbeskrivning.md).
|
||
|
||
## Stack
|
||
|
||
Go 1.27 + Ebitengine v2.10, JSON-data, standardbibliotekets tester,
|
||
byggverktyg i Go (`go run ./tools/build`), VS Code med `golang.go`.
|
||
Motivering och alternativ som valts bort: [roadmap.md › Teknikval](roadmap.md#teknikval).
|
||
|
||
## Målplattformar
|
||
|
||
Linux x64 först. Windows x64 byggs från dag 1 (korsbygge utan C-verktyg)
|
||
men speltestas på riktig Windows först i M12. Linux arm64 (Pi5) är inte ett
|
||
mål för spelet, men Gitea-CI kan byggas på Pi5-runnern senare.
|
||
|
||
## Leverans
|
||
|
||
Mönster A enligt playbooken (nedladdningsbar binär), när projektet ska
|
||
delas: `build/release/<os>-<arch>/` är redan formen som en release-zip ska
|
||
ha. Repot är **lokalt** nu och synkas till Gitea senare (Björn skapar repot
|
||
och lägger till `claude` som medlem, därefter `git remote add origin
|
||
gitea-claude:brasse/metro-puzzle-jp.git`).
|
||
|
||
## Milstolpar
|
||
|
||
M0 skelett ✓ → M1 rörelse → M2 första spelbara banan → M3 japanska/skyltar
|
||
→ M4 lämmeltåget → M5 minikarta → M6 kort/biljetter/minispel → M7
|
||
svårighet/poäng/debuffar → M8 progression/sparfiler → M9 navigeringslägen →
|
||
M10 story-innehåll → M11 oändligt läge/NG+ → M12 ljud/polish/release.
|
||
Innehåll per milstolpe: [roadmap.md › Milstolpar](roadmap.md#milstolpar).
|
||
Vad som ska vara testat per milstolpe: [mal-och-tester.md](mal-och-tester.md).
|
||
|
||
## Idéer till expansioner (ej beslutade)
|
||
|
||
- **Baneditor i spelet** eller ett `tools/levelcheck` som ritar banor som
|
||
PNG och rapporterar onåbara rutor – blir troligen nödvändigt i M10.
|
||
- **Daglig utmaning:** oändligt läge med dagens datum som seed och en lokal
|
||
topplista.
|
||
- **Lärande-läge:** en ordlista i menyn över tecken man mött, med
|
||
repetition – går hand i hand med skyltsystemet.
|
||
- **Lokalt samarbete:** en andra spelare styr en av polarna (delad skärm på
|
||
samma tangentbord/gamepad).
|
||
- **Steam Deck:** Linux-binären bör fungera som den är; gamepad-stöd från M1
|
||
gör det gratis.
|
||
- **Modbara banor:** eftersom banor är JSON i `resources/data/levels` kan
|
||
spelare lägga till egna – kräver bara att banväljaren läser mappen.
|
||
|
||
## Öppna frågor
|
||
|
||
- ~~Repo-namn~~ – beslutat: `metro-puzzle-jp` (Gitea 2026-10-23). Visningsnamnet "Metro Puzzle JP" är bara text i `resources/text/`.
|
||
- "Game box-liknande" banval: tolkat som spelbräde/världskarta – stämmer det?
|
||
- Font: PixelMplus (fler kanji, 10/12 px) eller Misaki (8 px, tajtare)?
|
||
Avgörs i M3 när skyltar renderas på riktigt.
|
||
- Ska Oändligt läge dela sparfil med story eller ha egen?
|
||
- Hur många huvudbanor siktar vi på i storyn? (Påverkar M10:s omfattning.)
|