Skip to content
Back to skills

Playtest

ASecurity

Playtesting — prepare a human playtest, turn the user's feedback into numbered changes, or (only when asked) run bot campaigns and report.

  • 2 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added October 15, 2026
developmenttesting

Security analysis

A100/100

Scanned October 15, 2026

npx -y skills add abhollow/pixel-forge --skill playtest --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Playtest?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Playtest
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/abhollow-playtest/badge)](https://www.skillsdirectory.com/skills/abhollow-playtest)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: playtest
description: Playtesting — prepare a human playtest, turn the user's feedback into numbered changes, or (only when asked) run bot campaigns and report.
argument-hint: "[prep | feedback <notes> | bot <scope>]"
disable-model-invocation: true
---

# Playtest

Mode and input: $ARGUMENTS

Load the `pixel-forge` skill; read `references/playtesting.md`.

## prep — get a human playtest ready

1. Smoke test green; build runs from the main menu.
2. Make the build easy to test: debug-only level select (`OS.is_debug_build()`),
   no dev overlays the user didn't ask for.
3. For a phone: export a **debug** APK (`references/mobile-export.md`) or tell
   the user which preset to use.
4. Write 4–5 "what to feel for" questions per level/unit under test (in the
   level docs), and list them for the user.
5. For strangers: the rules — say nothing, watch hands, ask what they expected.

## feedback — the user played and sent notes

1. Answer in **their numbering**. Flag anything unclear instead of guessing.
2. Sort: broken / unclear → fix now; missing → `docs/later.md` (ask);
   taste → change it if it's theirs.
3. **Reproduce and measure** each report before changing anything.
4. Change the knob that hits the binding constraint; one number where possible.
   Onboarding and "not fun" are judged by people — believe them over metrics.
5. Smoke test; render anything visual; **no bot runs unless asked**.
6. Log in `docs/handoff.md`; report per number with knob + file; ask about
   anything that changes the feel.

## bot — only when the user asked for one

1. Confirm scope (levels/units, seeds) and that it may take a while; run in the
   background with `run_in_background`, `timeout` per run, `--max-fps 0`, and
   a separate user dir per run.
2. **Baseline before changing anything.**
3. Summarise with `bot_report.py`: clears, first-try rate, time vs target,
   hits/min, stuck events, and `grep -c "SCRIPT ERROR"`.
4. Separate bot-tooling problems from game problems.
5. If asked to fix: one change at a time, re-measure, comment each change with
   its reason. For unattended runs, follow the overnight protocol in
   `references/collaboration.md` §6 and write `docs/playtest-YYYY-MM-DD.md`.

Framing for the report: a bot clear means a competent player can clear it; a
bot failure means "play it yourself", not "impossible".

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.