Add a shared seeded RNG as groundwork for the daily challenge

Aperta
#52 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
52/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
game-dev

Direzione di ricerca

Start with the daily challenge roadmap in README.md, then read shared/storage.ts, games/stack/logic.ts, and games/runner/scenes/GameScene.ts to understand the existing menu, storage, and random call sites. Run npm install and npm run dev to explore the games. Done means one game offers Daily mode with the same sequence for every player on a given UTC date; use npm run typecheck and npm run build to check the change.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement severity: low

Summary

The README roadmap lists a daily challenge with a shared seed. There is no shared RNG: games call Math.random or Phaser's random helpers directly, and high scores use one key per game with no notion of a dated board.

Where

  • README.md:360
  • games/stack/logic.ts (piece bag), games/runner/scenes/GameScene.ts (pattern picker)
  • shared/storage.ts:21-30

Proposal

  • Add shared/rng.ts: a small seeded PRNG with between, pick and shuffle, and a dailySeed() derived from the UTC date
  • Convert one game first; Stack's bag or Runner's pattern picker is a single call site
  • Pass { seed } through the scene start data and store <slug>:daily:<yyyy-mm-dd>
  • Add a "Daily" mode to the menu builder

Trade-offs

Frame-rate dependent physics means runs will share a spawn sequence, not be identical.

Acceptance criteria

  • One game has a Daily mode where every player gets the same sequence on a given date

Getting started

  • Relevant files: shared/storage.ts, games/stack/logic.ts, games/runner/scenes/GameScene.ts, README.md
  • Run locally: npm install, then npm run dev
  • Checks: npm run typecheck and npm run build (there is no test suite yet)
  • Related docs: README.md

Filed by repo-audit/full-audit at b001f5d. Severity: low. Effort: L. audit-key: enhancement|shared/storage.ts|daily-seed

Lingua principale
TypeScript
Stelle
3
Fork
3
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di TMHSDigital/GH-Arcade

Tutte le issue di TMHSDigital/GH-Arcade

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.