# Bank System The bank system allows players to store items permanently, freeing up inventory space. ## Objects ### bank_booth A bank terminal that players can interact with. Has no special behavior — the `bank` command checks for any `bank_booth` object in the room. (**The filename is the ID** — `bank_booth.yaml` → `bank_booth`; no `id:` field.) ```yaml name: bank booth color: "E2" description: "..." inroom_description: "A bank booth is set into the wall." ``` To place a bank booth in a room, add it to the room's `objects:` list: ```yaml objects: - id: bank_booth ``` ## Commands | Command | Description | |---------|-------------| | `bank` | Opens bank interface (requires bank booth in room) | | `use bank` | Same as `bank` | ### Bank Interface Commands | Command | Description | |---------|-------------| | `deposit ` | Move item from inventory to bank | | `deposit all` | Deposit entire inventory | | `withdraw ` | Move item from bank to inventory | | `browse` / `list` | Show bank contents | | `leave` | Exit bank interface | ## Data files | File | Purpose | |------|---------| | `data/objects/bank_booth.yaml` | Bank booth object definition | | `data/help/bank.yaml` | Help topic for the bank system | Default bank booth locations: Town Square (room 1), Forge (room 12). Engine internals (session state, storage layout, command dispatch) are documented in [../dev_guide/bank.md](../dev_guide/bank.md).