## Hacking Hacking minigames are played by jacking into terminal objects. Terminals are YAML objects; the filename is the ID (`terminal_basic.yaml` → `terminal_basic`), and like all objects you should not add an `id:` field (see `objects.md`). ### Terminal Object YAML ```yaml name: basic terminal color: "28" description: "A battered terminal with a cracked screen. {28}[Level 1 Hacking]{/}" inroom_description: "A {28}basic terminal{/} hums quietly against the wall." ``` - `name` is used for matching in the `jack` command - `color` controls the display color - `description` is shown when examining the terminal - `inroom_description` is shown in room listings - Terminals have no behavior block; each terminal corresponds to a minigame registered in the game code ### Placing a Terminal Add the terminal object to a room's `objects:` list: ```yaml objects: - id: terminal_basic ``` Adding a brand-new hacking minigame is an engine change, not a world-data change.