# AI Plays Minecraft + Viewer Vote Roadmap

Status: `minecraft_ai_lab_review_only_closed_until_human_yes`

Goal: turn Minecraft into a safe Sonic-Forage “AI plays games” lane where viewers vote on high-level goals, the AI agent acts inside a sandboxed world, and OBS turns it into a psychedelic command-center segment.

## Research baseline

Promising open-source lanes:

- MineDojo / Voyager: <https://github.com/minedojo/voyager>
- Voyager project page: <https://voyager.minedojo.org/>
- Mineflayer ecosystem: JavaScript bots for Minecraft protocol automation.
- Baritone-style automation: pathfinding/mining automation, useful as an inspiration but should be sandboxed and not used on public servers without permission.

## Safety model

Viewer votes may choose goals like:

- build a neon shrine
- explore east for 5 minutes
- collect wood
- survive the night
- find a cave
- place a Sonic-Forage sign
- make a pixel-art glyph

Viewer votes must not:

- grief public servers
- harass players
- bypass anti-cheat
- automate on servers without permission
- run shell commands
- download mods/plugins at runtime
- spend money
- use copyrighted builds/assets as targets

## Recommended first version

Run a local/private Minecraft world only.

```text
OBS captures Minecraft window
        ↓
AI bot/client performs sandbox task
        ↓
Overlay shows current viewer-voted goal
        ↓
Operator can pause/kill instantly
```

Do not start with a public multiplayer server. Start with local single-player/LAN/private server, whitelist only.

## Phase 0 — Paper/overlay demo

No game automation yet.

- Create `AI_GAME_LAB` OBS scene.
- Show fake terminal: “Vote: build / explore / mine / dance.”
- Run Retro Forge Arcade as fallback.
- Use channel points to queue votes.

## Phase 1 — Private Minecraft server

- Use a local or VPS Minecraft server with whitelist.
- No public IP in overlays until ready.
- Backups enabled.
- Operator-only admin.
- Spectator/camera account for OBS if needed.

## Phase 2 — Mineflayer bot prototype

Use Mineflayer for safe, deterministic actions:

- connect to private server
- read position/health/inventory
- walk to operator-approved waypoint
- place blocks from inventory
- stop on command

All commands go through an allowlist:

```json
{
  "allowed_intents": ["status", "stop", "walk_to_safe_waypoint", "place_safe_block", "collect_nearby_wood"],
  "blocked": ["chat_to_shell", "public_server_join", "grief", "download_mod", "op_self", "spend_money"]
}
```

## Phase 3 — Voyager-style agent lab

Only after Phase 2 is stable.

- local/private world
- bounded runtime
- no public-server automation
- no paid model/API unless approved
- human kill switch
- logs redacted
- stream overlay explains the goal and safety gate

## Viewer vote mechanics

Use channel points / polls:

- 250 pts: choose bot goal color/theme
- 500 pts: choose next high-level goal
- 1000 pts: name the build, moderated
- 2500 pts: queue a “boss objective” for later

Votes are suggestions; operator approves.

## OBS scenes

- `AI_GAME_LAB`
- `MINECRAFT_PRIVATE_WORLD`
- `VIEWER_GOAL_VOTE`
- `BOT_STATUS_OVERLAY`
- `PANIC_PRIVACY`
- `SAFE_INTERMISSION`

## Acceptance checklist before live game segment

- Private server/world only.
- No stream keys/secrets in logs.
- Bot has a stop command.
- Operator can cut OBS to `PANIC_PRIVACY`.
- No public chat-to-shell.
- No public server automation.
- Game audio levels checked.
- Segment can fall back to Retro Forge Arcade if bot fails.
