web-game-foundations

von openai

Lege die Architektur des Browserspiels vor der Implementierung fest. Verwende dies, wenn der Nutzer eine Engine-Wahl, Simulations- und Rendergrenzen, ein Eingabemodell, eine Asset-Organisation, … benötigt.

npx skills add https://github.com/openai/plugins --skill web-game-foundations

Web Game Foundations

Overview

Use this skill to establish the non-negotiable architecture before implementation starts. Browser games degrade quickly when simulation, rendering, UI, asset loading, and input handling are mixed together.

Default rule: simulation state is owned outside the renderer, browser UI is not forced into the canvas unless there is a clear reason, and shipped 3D assets default to GLB or glTF 2.0 rather than ad hoc model formats.

Use This Skill When

  • the user has not settled the engine or renderer choice
  • the task is about boundaries, module shape, state ownership, or asset policy
  • multiple specialist skills need one shared architectural frame

Do Not Stay Here When

  • the runtime track is clearly Phaser
  • the runtime track is clearly vanilla Three.js
  • the runtime track is clearly React Three Fiber
  • the task is purely about shipped 3D assets

Once the stack is clear, hand off to the runtime or asset specialist skill.

Architecture Rules

  1. Separate simulation from rendering.
    • Simulation owns entities, turns, timers, collisions, progression, and saveable state.
    • The renderer owns scene composition, animation playback, camera, particles, and input plumbing.
  2. Keep input mapping explicit.
    • Define actions such as move, confirm, cancel, ability-1, and pause.
    • Map physical inputs to actions in one place.
  3. Treat asset loading as a first-class system.
    • Use stable manifest keys.
    • Group by domain: characters, environment, UI, audio, FX.
    • For 3D content, standardize on GLB or glTF 2.0 unless the chosen engine ecosystem requires another format upstream.
  4. Define save/debug/perf boundaries up front.
    • Save serializable simulation state, not renderer objects.
    • Keep debug overlays and perf probes easy to toggle.
  5. Use DOM overlays for menus and HUD by default.
    • Canvas or WebGL should handle the playfield.
    • DOM should handle text-heavy HUD, menus, settings, and accessibility-sensitive controls.
    • In 3D, keep the persistent UI budget small so the scene stays readable and interactive.
  6. Lock 3D runtime conventions early.
    • Choose consistent units, origins, pivots, and naming conventions.
    • Decide how collision proxies, LODs, and baked lighting data are authored before runtime integration starts.

Engine Selection

  • Default to Phaser for 2D games with sprites, tilemaps, top-down or side-view action, turn-based grids, and classic browser arcade flows.
  • Default to vanilla Three.js for explicit 3D scenes that want direct scene, camera, renderer, and loop control in plain TypeScript or Vite.
  • Default to React Three Fiber when the 3D scene lives inside a React application and needs declarative composition, shared app state, or React-first UI coordination.
  • Use raw WebGL only for shader-heavy or renderer-first projects where engine abstractions would get in the way.
  • Keep Babylon.js and PlayCanvas as alternative-engine paths rather than the default code-generation target.

See ../../references/engine-selection.md for the default decision table.

Implementation Checklist

Define these before writing core code:

  • Player fantasy and primary verbs
  • Core loop and loss or reset states
  • Camera model
  • Input action map
  • Simulation modules
  • Renderer modules
  • Asset manifest layout
  • 3D asset format and optimization rules
  • HUD and menu surfaces
  • Save data boundary
  • Debug and perf surfaces

Anti-Patterns

  • Mixing gameplay rules directly into scene callbacks
  • Treating the renderer as the source of truth for game state
  • Putting all HUD and menu UI into the canvas by default
  • Letting asset filenames become the public API instead of manifest keys
  • Shipping unoptimized 3D assets straight from the DCC tool into the browser
  • Mixing camera-control state and menu or modal state without an explicit input boundary
  • Rebuilding architecture every time the game changes genre

References

  • Engine selection: ../../references/engine-selection.md
  • Phaser structure: ../../references/phaser-architecture.md
  • Three.js structure: ../../references/three-webgl-architecture.md
  • Three.js ecosystem stack: ../../references/threejs-stack.md
  • React Three Fiber stack: ../../references/react-three-fiber-stack.md
  • 3D asset shipping: ../../references/web-3d-asset-pipeline.md

Mehr Skills von openai

release
openai
Erstelle ein Symphony-Release, indem du die committete Version erhöhst, sie eincheckst, den gemergten Commit taggst und den Burrito-Release-Workflow verifizierst. Verwende dies, wenn du gebeten wirst, …
signing-entitlements
openai
Untersuche Signing, Berechtigungen, gehärtete Laufzeit und Gatekeeper-Probleme für macOS-Apps. Verwende dies, wenn du gebeten wirst, Code-Signing-Fehler, fehlende Berechtigungen,… zu diagnostizieren.
building-ai-agent-on-cloudflare
openai
Erstellt KI-Agenten auf Cloudflare mit dem Agents SDK, einschließlich Zustandsverwaltung, Echtzeit-WebSockets, geplanten Aufgaben, Tool-Integration und Chat…
epigraphdb-skill
openai
Senden Sie kompakte EpiGraphDB-API-Anfragen für Ontologie, Literatur, MR, Gen-Wirkstoff und Support-Pfad-Evidenz. Verwenden Sie dies, wenn ein Benutzer prägnante EpiGraphDB-Zusammenfassungen wünscht.
runtime-behavior-probe
openai
Planen und Ausführen von Laufzeitverhaltensuntersuchungen mit temporären Prüfskripten, Validierungsmatrizen, Zustandssteuerungen und ergebnisorientierten Berichten. Nur verwenden, wenn…
deep-security-scan
openai
Verwenden Sie, wenn der Benutzer einen tiefgehenden, erschöpfenden, mehrstufigen oder varianzreduzierenden repository-weiten oder bereichsbezogenen Codex-Sicherheitsscan anfordert. Führen Sie wiederholte unabhängige…
define-security-policy
openai
Definieren, überprüfen oder aktualisieren Sie die SECURITY.md-Anleitung für ein Repository oder eine Komponente. Verwenden Sie dies, wenn der Benutzer klären möchte, was Codex Security überprüfen soll, was außerhalb des Rahmens liegt …
validation
openai
Verwenden, wenn sich Codex bereits in der Validierungsphase eines Sicherheitsscans befindet oder der Benutzer ausdrücklich darum bittet, festzustellen, ob ein oder mehrere Kandidaten-Sicherheitsbefunde…