chaos-monkey

Fuzz game engine inputs to detect crashes and softlocks.

Updated Dec 30, 2025
One-click install
npx skills add https://github.com/scawful/afs_scawful --skill chaos-monkey
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: chaos-monkey
Source: https://github.com/scawful/afs_scawful/tree/main/skills/chaos-monkey
Command: npx skills add https://github.com/scawful/afs_scawful --skill chaos-monkey

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Chaos Monkey fuzzes a game engine to automatically stress-test input handling, helping identify crashes and softlocks that manual testing may miss.

Core Features & Use Cases

  • Gameplay Fuzzing: runs in gameplay mode to simulate a frantic player, with configurable duration.
  • Glitch Hunting: runs in glitch mode to inject 1-frame inputs and rapid pause/menu sequences to expose fragile state logic.
  • Integration & Workflow: automatically triggers crash-investigator when a crash or freeze is detected.

Quick Start

Run chaos-monkey in glitch mode for 2 minutes and monitor for crashes.

Frequently Asked Questions about chaos-monkey

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate game fuzzing to stress-test crashes in an emulator?

Automated game fuzzing stress-tests crashes by simulating frantic player inputs through an emulator socket server. This approach probes input timing and edge-case behavior to identify softlocks that manual testing often misses.

What is the best way to find edge-case softlocks during gameplay and menu navigation?

Finding edge-case softlocks involves running a fuzzer in glitch mode to inject 1-frame inputs and rapid pause sequences. This exposes fragile state logic during gameplay and menu navigation by overwhelming the game engine.

Do I need a specific emulator setup to run automated stress testing on a game engine?

Automated stress testing requires an emulator with a socket server, such as Mesen2, alongside a dedicated fuzzer script. These components communicate to inject inputs and monitor the game engine for crashes or freezes.

How does crash detection work during automated gameplay fuzzing?

Crash detection during gameplay fuzzing works by automatically triggering a crash-investigator tool when a freeze or crash is encountered. This integration captures the failure state immediately after the injected inputs cause the issue.

Can I use chaos testing to simulate a frantic player for a specific duration?

Chaos testing can simulate a frantic player for a configurable duration using gameplay mode. This allows QA scenarios to stress-test input handling over set timeframes to uncover hidden game engine crashes.

What are the limitations of using fuzzing scripts for game testing?

Fuzzing scripts for game testing are limited by their dependency on specific local paths and emulator socket configurations. They require a strict environment setup and cannot probe crashes outside the emulated game engine context.