Byt namn till metro-puzzle-jp (Gitea-repots namn)

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>
This commit is contained in:
2026-10-23 19:02:41 +02:00
parent c1f9546af6
commit ae50d444a4
13 changed files with 42 additions and 42 deletions

8
.vscode/launch.json vendored
View File

@@ -8,7 +8,7 @@
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${workspaceFolder}/cmd/jp-subway-pussel",
"program": "${workspaceFolder}/cmd/metro-puzzle-jp",
"cwd": "${workspaceFolder}",
"args": ["-level", "001-flygplatsen"],
"env": {}
@@ -19,8 +19,8 @@
"request": "launch",
"mode": "exec",
"preLaunchTask": "build",
"program": "${workspaceFolder}/build/debug/jp-subway-pussel",
"windows": { "program": "${workspaceFolder}/build/debug/jp-subway-pussel.exe" },
"program": "${workspaceFolder}/build/debug/metro-puzzle-jp",
"windows": { "program": "${workspaceFolder}/build/debug/metro-puzzle-jp.exe" },
"cwd": "${workspaceFolder}/build/debug"
},
{
@@ -29,7 +29,7 @@
"request": "launch",
"mode": "exec",
"preLaunchTask": "build: release (linux-amd64)",
"program": "${workspaceFolder}/build/release/linux-amd64/jp-subway-pussel",
"program": "${workspaceFolder}/build/release/linux-amd64/metro-puzzle-jp",
"cwd": "${workspaceFolder}/build/release/linux-amd64"
},
{

View File

@@ -1,4 +1,4 @@
# JP Subway Pussel
# Metro Puzzle JP
Pixel art-pusselspel: leda ett sällskap – *lämmeltåget* – genom japanska
tågstationer byggda som labyrinter, hitta rätt tåg och komma fram till rätt
@@ -30,11 +30,11 @@ sudo apt install golang gcc libc6-dev pkg-config libgl1-mesa-dev libx11-dev libx
```
```bash
git clone <remote>/jp-subway-pussel.git && cd jp-subway-pussel
git clone <remote>/metro-puzzle-jp.git && cd metro-puzzle-jp
go run ./tools/build # debug → build/debug/
go run ./tools/build -mode release -os linux # release → build/release/linux-amd64/
go run ./tools/build -mode release -os windows # korsbygge → build/release/windows-amd64/
./build/debug/jp-subway-pussel # kör
./build/debug/metro-puzzle-jp # kör
go test ./... # tester
```
@@ -43,7 +43,7 @@ go test ./... # tester
Installera Go från <https://go.dev/dl/>. Ingen C-kompilator behövs.
```powershell
go run ./tools/build -mode release # → build\release\windows-amd64\jp-subway-pussel.exe
go run ./tools/build -mode release # → build\release\windows-amd64\metro-puzzle-jp.exe
```
### VS Code
@@ -62,14 +62,14 @@ go run ./tools/build -mode release # → build\release\windows-amd64\jp-s
```
build/
├── debug/ debug-bygge för den här datorn
│ ├── jp-subway-pussel
│ ├── metro-puzzle-jp
│ └── resources/
└── release/
├── linux-amd64/
│ ├── jp-subway-pussel en strippad binär
│ ├── metro-puzzle-jp en strippad binär
│ └── resources/ sprites/ sound/ text/ data/
└── windows-amd64/
├── jp-subway-pussel.exe
├── metro-puzzle-jp.exe
└── resources/
```
@@ -80,10 +80,10 @@ arbetskatalogen (så `go run` och F5 fungerar), och `JP_RESOURCES=/sökväg`
### Flaggor
```
jp-subway-pussel -level 001-flygplatsen # starta en viss bana
jp-subway-pussel -scale 3 # fönsterstorlek (320x180 × skala)
jp-subway-pussel -smoke 90 # öppna fönster, avsluta efter 90 bildrutor (smoke-test)
jp-subway-pussel -version
metro-puzzle-jp -level 001-flygplatsen # starta en viss bana
metro-puzzle-jp -scale 3 # fönsterstorlek (320x180 × skala)
metro-puzzle-jp -smoke 90 # öppna fönster, avsluta efter 90 bildrutor (smoke-test)
metro-puzzle-jp -version
```
## Beroenden
@@ -108,7 +108,7 @@ vid körning, så den fungerar på alla vanliga distributioner.
## Struktur i korthet
```
cmd/jp-subway-pussel/ programstart
cmd/metro-puzzle-jp/ programstart
internal/game/ Ebitengine-loop och rendering (enda paketet som får känna till Ebitengine)
internal/level/ banformat, validering, framkomlighet
internal/res/ hittar och läser resources/

View File

@@ -1,4 +1,4 @@
// jp-subway-pussel – pixel art-pussel om att hitta rätt tåg på japanska stationer.
// metro-puzzle-jp – pixel art-pussel om att hitta rätt tåg på japanska stationer.
package main
import (
@@ -9,8 +9,8 @@ import (
"github.com/hajimehoshi/ebiten/v2"
"gitea.brasse-pc.eu/brasse/jp-subway-pussel/internal/buildinfo"
"gitea.brasse-pc.eu/brasse/jp-subway-pussel/internal/game"
"gitea.brasse-pc.eu/brasse/metro-puzzle-jp/internal/buildinfo"
"gitea.brasse-pc.eu/brasse/metro-puzzle-jp/internal/game"
)
func main() {
@@ -21,7 +21,7 @@ func main() {
flag.Parse()
if *version {
fmt.Printf("jp-subway-pussel %s (%s)\n", buildinfo.Version, buildinfo.Mode)
fmt.Printf("metro-puzzle-jp %s (%s)\n", buildinfo.Version, buildinfo.Mode)
return
}
@@ -31,7 +31,7 @@ func main() {
}
ebiten.SetWindowSize(game.ScreenW**scale, game.ScreenH**scale)
ebiten.SetWindowTitle("JP Subway Pussel")
ebiten.SetWindowTitle("Metro Puzzle JP")
ebiten.SetWindowResizingMode(ebiten.WindowResizingModeEnabled)
ebiten.SetVsyncEnabled(true)

View File

@@ -65,7 +65,7 @@ att bygga på Linux som på Windows.
| 2. Data | Allt under `resources/` | Datadrivna tester som läser filerna | `go test ./...` |
| 3. Arkitektur | Beroenderegler | `internal/archtest` | `go test ./...` |
| 4. Simulering | En bot spelar en bana headless | Deterministisk körning av spelloopen utan rendering (kommande) | `go test ./...` |
| 5. Smoke | Binären öppnar fönster och avslutar | `jp-subway-pussel -smoke 90` | manuellt / med skärm |
| 5. Smoke | Binären öppnar fönster och avslutar | `metro-puzzle-jp -smoke 90` | manuellt / med skärm |
| 6. Speltest | Känsla, svårighet, buggar | Checklistan nedan | före varje release |
### Tester som finns i dag

View File

@@ -1,4 +1,4 @@
# jp-subway-pussel – plan
# metro-puzzle-jp – plan
Navet för projektets dokumentation. Detaljerna ligger i de länkade filerna.
@@ -28,7 +28,7 @@ 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/jp-subway-pussel.git`).
gitea-claude:brasse/metro-puzzle-jp.git`).
## Milstolpar
@@ -56,7 +56,7 @@ Vad som ska vara testat per milstolpe: [mal-och-tester.md](mal-och-tester.md).
## Öppna frågor
- Repo-namn: behålla `pussel` (svenska) eller byta till `puzzle`?
- ~~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.

View File

@@ -17,7 +17,7 @@ de styr hur milstolparna byggs.
| Font | **PixelMplus** (10/12 px) eller **Misaki** (8 px) via `ebiten/v2/text/v2` | Pixelfonter med kana **och kanji**. Fri licens. Krävs för att skyltar ska kunna visas på riktigt. Beslut i M3. |
| Ljud | `ebiten/v2/audio` med OGG Vorbis (musik, jinglar) och WAV (korta effekter) | Ingår i Ebitengine, inga externa bibliotek. |
| Slump | `math/rand/v2` (PCG) genom `internal/rng` | Seedbart, deterministiskt, del-seeds per kontext. |
| Sparfiler | JSON i `os.UserConfigDir()/jp-subway-pussel/` | Rätt plats på både Linux (`~/.config`) och Windows (`%AppData%`). |
| Sparfiler | JSON i `os.UserConfigDir()/metro-puzzle-jp/` | Rätt plats på både Linux (`~/.config`) och Windows (`%AppData%`). |
| Versionshantering | Git, lokalt nu, Gitea senare | Enligt playbooken; CI-release när projektet är redo att delas. |
### Varför inte …
@@ -51,8 +51,8 @@ de styr hur milstolparna byggs.
### Katalogstruktur
```
jp-subway-pussel/
├── cmd/jp-subway-pussel/ main.go – flaggor, fönster, startar spelet
metro-puzzle-jp/
├── cmd/metro-puzzle-jp/ main.go – flaggor, fönster, startar spelet
├── internal/
│ ├── buildinfo/ version + läge (sätts av byggverktyget)
│ ├── res/ hittar och läser resources/ (ren Go)
@@ -76,14 +76,14 @@ jp-subway-pussel/
| Vad | Kommando | Resultat |
|-----|----------|----------|
| Debug (standard, Ctrl+Shift+B) | `go run ./tools/build` | `build/debug/jp-subway-pussel` + `resources/`; inga optimeringar, full debuginfo |
| Debug (standard, Ctrl+Shift+B) | `go run ./tools/build` | `build/debug/metro-puzzle-jp` + `resources/`; inga optimeringar, full debuginfo |
| Debug med debugger (F5) | VS Code "Debug (dlv)" | Kompilerar och startar under delve med cwd = repots rot |
| Release Linux | `go run ./tools/build -mode release -os linux -arch amd64` | `build/release/linux-amd64/` – strippad, `-trimpath` |
| Release Windows | `go run ./tools/build -mode release -os windows -arch amd64` | `build/release/windows-amd64/jp-subway-pussel.exe` – GUI-subsystem, inget konsolfönster |
| Release Windows | `go run ./tools/build -mode release -os windows -arch amd64` | `build/release/windows-amd64/metro-puzzle-jp.exe` – GUI-subsystem, inget konsolfönster |
| Tester | `go test ./...` | |
Versionen i binären kommer från `git describe --tags --always --dirty`,
så en tagg `v0.1.0` ger `jp-subway-pussel v0.1.0` i `-version`.
så en tagg `v0.1.0` ger `metro-puzzle-jp v0.1.0` i `-version`.
## Milstolpar

View File

@@ -1,4 +1,4 @@
# JP Subway Pussel – spelbeskrivning
# Metro Puzzle JP – spelbeskrivning
Renskriven och omsorterad version av den ursprungliga idébeskrivningen
(2026-10-23). Allt innehåll från originalet finns med; där originalet var
@@ -186,4 +186,4 @@ från skills i skill tree, och från unika skills man får av sidouppdrag.
| "Lämel tåg" | *Lämmeltåg*: sällskapet som följer efter dig i rad | Styr §5 |
| "level maps game box liknande styl av level väljande" | Bankarta i spelbrädes-/världskartestil | Kan ändras om något annat avsågs |
| "bilder och eventuella språk och tester" (resursmappen) | bilder, språk och *texter* | Se resurslayouten i roadmap |
| Repo-namnet "jp-subway-pussel" | Behållet; *pussel* är korrekt svenska | Byt till `-puzzle` om det ska vara helengelskt |
| Repo-namnet | Arbetsnamnet var "jp-subway-pussel"; Björn döpte Gitea-repot till **metro-puzzle-jp** (2026-10-23), så repo, modul, binär och titel heter så | Spelets visningsnamn "Metro Puzzle JP" kan ändras fritt i `resources/text/*.json` |

2
go.mod
View File

@@ -1,4 +1,4 @@
module gitea.brasse-pc.eu/brasse/jp-subway-pussel
module gitea.brasse-pc.eu/brasse/metro-puzzle-jp
go 1.27

View File

@@ -11,9 +11,9 @@ import (
"github.com/hajimehoshi/ebiten/v2/ebitenutil"
"github.com/hajimehoshi/ebiten/v2/inpututil"
"gitea.brasse-pc.eu/brasse/jp-subway-pussel/internal/buildinfo"
"gitea.brasse-pc.eu/brasse/jp-subway-pussel/internal/level"
"gitea.brasse-pc.eu/brasse/jp-subway-pussel/internal/res"
"gitea.brasse-pc.eu/brasse/metro-puzzle-jp/internal/buildinfo"
"gitea.brasse-pc.eu/brasse/metro-puzzle-jp/internal/level"
"gitea.brasse-pc.eu/brasse/metro-puzzle-jp/internal/res"
)
// Intern upplösning. Allt ritas i denna storlek och skalas sedan upp med
@@ -125,7 +125,7 @@ func (g *Game) Draw(screen *ebiten.Image) {
name = "FEL: " + g.levelError.Error()
}
ebitenutil.DebugPrint(screen, fmt.Sprintf(
"JP Subway Pussel %s (%s) %.0f fps\nBana: %s\nResurser: %s\nESC avslutar",
"Metro Puzzle JP %s (%s) %.0f fps\nBana: %s\nResurser: %s\nESC avslutar",
buildinfo.Version, buildinfo.Mode, ebiten.ActualFPS(), name, g.resDir))
}

View File

@@ -6,7 +6,7 @@ import (
"strings"
"testing"
"gitea.brasse-pc.eu/brasse/jp-subway-pussel/internal/res"
"gitea.brasse-pc.eu/brasse/metro-puzzle-jp/internal/res"
)
const sample = `{

View File

@@ -1,5 +1,5 @@
{
"game.title": "JP Subway Puzzle",
"game.title": "Metro Puzzle JP",
"menu.start": "Start",
"menu.continue": "Continue",
"menu.endless": "Endless mode",

View File

@@ -1,5 +1,5 @@
{
"game.title": "JP Subway Pussel",
"game.title": "Metro Puzzle JP",
"menu.start": "Starta",
"menu.continue": "Fortsätt",
"menu.endless": "Oändligt läge",

View File

@@ -22,7 +22,7 @@ import (
)
const (
appName = "jp-subway-pussel"
appName = "metro-puzzle-jp"
mainPkg = "./cmd/" + appName
)