Overview

The core UGAS specification is deliberately genre-agnostic. A genre pack makes it practical to bootstrap a real game — by humans or AI agents — by bundling two additive artifacts per genre:

  1. an additional spec that extends (never replaces) the core spec with genre-specific Attributes, Tags, Abilities, and Effects; and

  2. a template: ready-to-use, schema-conformant entity files under the pack’s entities/ directory.

This page is the navigable index of the packs published with this version. For the full map of genres and subgenres — and how the prioritized packs are positioned within the broader space — see the genre taxonomy.

This index and the genre packs it links are additive companions to the core specification. A genre spec.adoc extends the core spec with genre-specific definitions; it MUST NOT redefine, override, or contradict any concept in the core UGAS specification. The taxonomy itself is non-normative.

Available packs

Each pack is a self-contained directory: a rendered genre spec plus a entities/ folder of schema-conformant template files you can copy and extend.

Pack Scope Template entities

RPG

Role-Playing — seeded by the Action-RPG case study

rpg/entities/

Racing

Racing (Forza-style) — seeded by the Racing case study

racing/entities/

Action / Action-Adventure

Platformer-led action — seeded by the Platformer case study

action/entities/

Shooter

First/third-person gunplay — ammo economy and hit resolution

shooter/entities/

Using a pack

A pack is a starting point, not a fixed library. There are two ways to consume one — by hand, or by letting an AI agent scaffold from it. Both produce the same schema-conformant result.

Manual: copy and extend

  1. Open a pack’s rendered spec (the Pack column above) to understand its Attributes, Tags, Abilities, and Effects — and its signature mechanic (e.g. the shooter’s accuracy Channel aggregation).

  2. Copy that pack’s entities/ directory into your project as the base, then keep, rename, or extend the entities — they are schema-conformant and validate against the same schemas/*.json as the core spec.

  3. Extend additively: add new mechanics as Effects + Abilities, and new states as State. tags *granted by Effects (never mutate tags directly). Don’t contradict the core spec or the pack’s spec.

  4. Implement the engine seams a pack names — its ExecCalc_* calculators — in your engine; everything else is data.

Skill-driven: let an agent scaffold it

Two complementary skills make these packs agent-consumable:

  • gameplay-creator-assistant — genre-first, whole-game scaffolding. It discovers the packs, helps you pick one, loads its entities/ as the base, and scaffolds the four pillars plus a Gameplay Controller into a working project. Runs guided (interactive Q&A) or one-shot (a genre + a brief in, a full game definition out). Use it to start a new game or prototype.

  • ugas-schema-authorsingle-entity authoring, review, balancing, and simulation. Use it to add or tune one ability/effect/attribute in an existing game.

The two compose: gameplay-creator-assistant owns the whole-game structure and delegates each entity’s YAML to ugas-schema-author.

Machine consumption

For fully machine consumption, the site root publishes llms.txt (a discoverability index) and llms-full.txt (the complete context: the spec plus every schema, example, and genre-pack entity in one file).