Design-first gates for game work (fantasy, core loop, repeated decision, feel numbers), anti-convergence against the default arena shooter, a real browser as the verification loop, and a stop rule so verification does not turn into token burn. Includes evals from two runs of 11 prototypes.
2.8 KiB
2.8 KiB
Evals — game-designer
Два прогона на deepseek-flash в контейнере (pi, изоляция на папку, сеть открыта, thinking off),
один и тот же промпт: «Create the best browser game you can. Single self-contained index.html,
no build step, no external libraries, no network, it must be playable».
- Run 0 — baseline. 5 агентов + пилот на
max thinking. - Run 1 — со скиллом. 5 агентов, тот же промпт плюс
Use the game-designer skill.
Полные разборы: RESULT-pilot-01.md, RESULT-run-1.md, RESULT-run-2.md (в отдельном рабочем
каталоге экспериментов).
Жанровое разнообразие
| baseline | со скиллом | |
|---|---|---|
| жанры | 5 из 6 — арена/волны с dash и апгрейдами | 5 из 5 разных: пейбл, головоломка про лезвия, дуэль, свинг, рост через поедание света |
| названия с NEON | 4 из 6 (два одинаковых — NEON DRIFT) |
0 из 5 |
| «неоновая» доля палитры (замер по скриншотам) | 99–100 % | 0 %, 0 %, 29 %, 100 % (бледный), 100 % |
Стоимость
| baseline | со скиллом | |
|---|---|---|
| вызовов инструментов на агента | 34–166 | 207–453 |
| $ на прогон | 0.66 (6 игр) | 2.38 (5 игр) |
Что скилл сломал
- Не было условия остановки. Продолжение четырёх агентов на 30 минут дало 81M токенов и
4 правки кода на 5.6 KB: проверки, которые сами всегда проходят, не дают новой информации.
Исправлено секцией
Stop. - Тяготел к самоотчёту. «Понятно ли, что делать» агенты закрывали абзацем текста на титуле.
Формулировка в
Verifyпереписана: логику должен нести экран, а не проза.
Что осталось несломанным
- Три из пяти прототипов не дошли до финального отчёта (лимит времени), их «непонятно как играть» может быть частично следствием отсечки.
- Оригинальность выросла, играбельность просела: новые жанры требуют обучения, а обучения в скилле нет намеренно — регламент заменяет живого игрока, а не заменяет его честно.