Skip to main content

Paper Engine

A game automation, computer vision, and performance analysis framework. Combines Wine game execution, memory reading, YOLO object detection, and LLM-powered game analysis to build intelligent game bots and diagnose game performance issues.

Designed for bug detection, automated testing, game QA, and Linux gaming diagnostics.

Work in Progress

Paper Engine is under active development. Expect breaking changes.

What It Does

Paper Engine has two main systems:

Game Automation Pipeline

  1. Game Execution -- Runs game executables (Windows via Wine, Linux native, scripts)
  2. Memory Reading -- Reads live game state from Mono/Unity games (HP, scene, loading, etc.)
  3. Screenshot Capture -- Captures gameplay at configurable intervals
  4. Annotation -- Built-in annotation tool for object detection labelling
  5. YOLO Training -- Trains YOLO11/YOLO26 models on annotated gameplay data
  6. Bot Generation -- LLM generates Python bot scripts using YOLO + game controls
  7. Self-Learning -- Automated play-annotate-train loop

Multi-Source Game Performance Analysis

Analyzes any game's performance by collecting data from up to 6 sources:

SourceDescription
Engine configsScans game directory for .ini, .cfg, .log, benchmark data
Engine detectionIdentifies UE3, UE4, Unity, Void Engine/id Tech from directory structure
Community dataFetches ProtonDB API for compatibility ratings and report counts
Wine/DXVK prefixReads Proton version, DXVK state cache size, DLL overrides, env vars
Known fixesChecks for game-specific community fixes
LLM analysisFeeds all sources to an LLM acting as a game engine QA expert

Requirements

  • OS: Linux (tested on Arch/Wayland). macOS partially supported. Windows not supported.
  • Python: 3.8+
  • Wine: For running Windows games
  • LLM provider: Anthropic Claude (default), Google Gemini, or OpenAI

Quick Start

# Install dependencies
pip install pynput python-dotenv pyyaml customtkinter anthropic
pip install ultralytics # For YOLO training

# Launch the GUI
python gui_app.py

# Or use the CLI for game analysis
python -m pipeline.game_feedback --game-dir /path/to/game/