Playing Video Games One Frame at a Time
summary
Builds C++ tools that play games frame‑by‑frame: uses Doom demo files and approval testing to run headless simulations in GitHub Actions and verify byte‑for‑byte matching of stats outputs, uses OpenCV with HSV hue averaging to identify gems in a Bejeweled clone (about 90% accuracy after tuning) and encodes 32 pattern moves to pick best swaps, and injects a DLL with Microsoft Detours hook on DirectX9 EndScene to send per‑frame keyboard events into a platformer, records and replays exact frame input sequences successfully.
AI-written summary · about
chapters (5)
- 0:00Introduction and philosophy
- 3:36Level 1: Deterministic games
- 16:46Level 2: Screen-based control
- 36:00Level 3: Advanced hooking
- 57:56Conclusion and resources
related talks
10mThe Colorful Truth of Automated Tests
30mHarnessing the Unreal Engine Automation Framework for Performance Measurement
29m“Save $$ Testing Code the Playback-Based Way”
01h 04mCoding 4 Fun: 8-bit game emulation in .NET
25mSuperstar Session: How to Spot Performance Problems that Gamers Hate & Even Major Studios Often Miss
04mshows Video Playback Verification with Robot framework and OpenCV
44mTaking CI and automated testing seriously
34mLet’s Use An Automated Theorem Prover To Verify Video Games; I Swear This Is More Fun Than It Sounds
