game-engineering
Skill0 starsChanged 8 days agoApache-2.0View on GitHub
Build and ship games as Game Engineer (engine choice, frame and memory budgets, asset and build pipelines, platform ports) or Game Developer (core loop, mechanics, levels, balance, playtests) for Solo Empire's own games. Use when starting or prototyping a game, choosing Unity/Godot/web, profiling frame rate, setting up game builds or ports, or planning a playtest; not for client game work under Oak, store-listing copy (content-distribution), or generic web UI (qa-testing, ux-review).
In this repository27 other files it gives its agents.
- ai-agentsSkill
- ai-agent-workflowsSkill
- ai-native-estimationSkill
- ai-product-deliverySkill
- book-dev-engineering-loopSkill
- business-analysisSkill
- client-discovery-and-proposalsSkill
- content-distributionSkill
- data-engineeringSkill
- flow-videoSkill
- govern-ai-skillsSkill
- graphic-designSkill
- lead-research-and-crmSkill
- main-only-developmentSkill
- product-managementSkill
- product-ownerSkill
- project-managementSkill
- qa-testingSkill
- security-and-privacySkill
- skill-templateSkill
- solo-empire-operatorSkill
- solution-architectureSkill
- subagent-orchestrationSkill
- system-docpackSkill
- unused-file-cleanupSkill
- ux-reviewSkill
- xr-engineeringSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 24
Read the game's games.yaml entry first.
- Distinctive: line 45
Prove it plays: Run a playtest round with real players, consent recorded, no personal data in the repo.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Game Engineering
Two atomic roles share this skill: game-engineer owns whether the game
runs everywhere it ships; game-developer owns whether it is fun and
stable to play. Both answer to the Game Studio Hub registry.
Sources of truth
- Game portfolio and stage: knowledge-base
projects/product/content-media/book-games/studio/registry/games.yaml - Release channels and fees:
studio/registry/platforms.yaml - Release checks per platform:
studio/RELEASE-CHECKLIST.md - Roles and templates: architecture-docs
docs/registries/ROLE-CATALOG.yaml(game-engineer,game-developer) andtemplates/positions/game-engineer/,templates/positions/game-developer/ - Unity prototype tool
game-v1a(book-production game build|export):book-products/content-production/catalog/production-tools.yaml - Org repositories:
game-hubregistry forbookchaowalit-game
Read the game's games.yaml entry first. Do not start code for a game that
has no entry; add one with stage: idea.
Workflow
- Frame. Confirm stage (idea → research → prototype → vertical-slice → production → released), target platforms in release order, and the one question this piece of work must answer.
- Technical design (game-engineer). Fill
game-technical-design.md: engine decision with licence/fees, update loop, save versioning, input per device, budgets per lowest target device, asset rules and rights register, build/port matrix. Record hard-to-reverse choices as an ADR. - Slice (game-developer). Fill
gameplay-slice-and-playtest.md: core loop in one sentence, MEC-xx mechanic specs with numbers and edge cases, scope in/out, balance data in data files rather than code. - Build. Small commits; gameplay logic in plain testable classes, engine glue thin. Unit-test rules and balance maths (Unity Test Framework, GUT for Godot, Vitest/Jest for web). Keep binary assets in LFS or outside Git.
- Prove it runs. Headless build from a clean checkout for every target, then profile on the lowest device. A budget is met only when measured on that device; editor numbers never count.
- Prove it plays. Run a playtest round with real players, consent recorded, no personal data in the repo. Log completion rate, session length, crashes/softlocks, top findings with P0–P3.
- Decide and record. go / iterate / kill on the template, update
games.yamlstage andreleases:, walk the platform release checklist before any store submission.
Decision rules
- Web-first or 2D, small scope → Phaser/web or Godot; 3D, console or the
game-v1aGameIR path → Unity. Check current engine licence terms before committing; never answer fees from memory. - Frame time over budget → profile first (CPU vs GPU vs GC), fix the top hotspot, re-measure; no speculative optimisation.
- Mechanic not fun after two playtest rounds → cut or redesign it; do not add content to rescue a weak loop.
- Store account, signing key, or paid fee needed → stop; owner action. Keep secret names only, values in Infisical.
- Third-party or AI-generated asset without a recorded licence → do not ship.
- Online play, payments, or children as audience → run
security-and-privacybefore the slice leaves prototype. - Web build of a game → also run the
qa-testingUI gate on its menus and landing page.
Done means
- Technical design and slice record exist and are linked from
games.yaml. - Clean-checkout builds pass for each target; budgets measured on device.
- At least one playtest round recorded; no open crash or softlock.
- Evidence (build ids, profiler captures, playtest record) is linked, and anything not verified is named as not verified.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

