Autonomous Exploration
A lightweight reinforcement learning agent roams Unity or Unreal maps, recreating chaotic player behavior across jump, crouch, and wall-hug paths.
ghosttester-sdk / v0.9.41 / local-first
Let autonomous telemetry find your collision leaks.
GhostTester is a Unity and Unreal SDK that turns chaotic NPC movement into actionable collision evidence, before your release build reaches players.
Scene
Map_Level_01
Agent
GhostTesterBot_01
State
RECORDING
{ "event": "collision_breach", "timestamp_ms": 184029, "transform": { "position": { "x": 12.45, "y": -4.20, "z": 89.11 }, "velocity": { "x": 2.14, "y": 0.00, "z": 6.80 } }, "collider_type": "MeshCollider", "layer_mask": "Environment.Solid", "object_name": "NorthWall_A_07" }
01 / The brief
# target_user
Indie developers protecting their sanity during a tight release schedule, plus AA/AAA QA teams that need more coverage than human wall-walking can provide.
# pain_point
A tester can spend hundreds of hours walking into walls, but cannot recreate every jump, crouch, wall-hug, and high-velocity edge case. One missed breach becomes a Day-1 crash or a costly post-launch patch.
02 / The AI core
No magic box. Three observable stages from movement data to a ticket your team can triage.
A lightweight reinforcement learning agent roams Unity or Unreal maps, recreating chaotic player behavior across jump, crouch, and wall-hug paths.
When transform coordinates cross a solid mesh layer, the engine pauses, captures the physics state, and preserves the exact failing frame.
Telemetry and a frame snapshot become a structured report with severity, coordinates, collider context, and a production-ready JIRA ticket.
03 / Local engine integration
Download our lightweight package, import it into Unity or Unreal in 2 clicks, then attach the GhostTester script to any NPC or autonomous test agent.
12:00:01.042 [OK] SDK initialized in Map_Level_01
12:00:04.819 [OK] 14,200 movement combinations executed
12:00:08.227 [CRITICAL_BREACH] Collision at Vector3(12.45, -4.20, 89.11)
12:00:08.228 [CRITICAL_BREACH] MeshCollider / Environment.Solid / NorthWall_A_07
12:00:09.091 [JIRA_API_SYNC] Sending coordinates and object name only
12:00:11.540 [JIRA_API_SYNC] Ticket #GT-402 created / High Severity
04 / Quality & feasibility
Minor false positives can occur on non-solid visual meshes such as foliage or cloth curtains. The active bounding-box metadata filter bypasses non-blocking layers.
The SDK operates locally inside engine telemetry. Only lightweight text strings, coordinates, and object names are sent to the LLM API for report generation.