Skip to content

ps2-ai-agent

Autonomous PlayStation 2 agent that captures emulator frames, asks Jev for the next action, and injects virtual controller input.

Projectprototype

Overview

ps2-ai-agent is a Python pipeline for playing PS2 games in the PCSX2 emulator. It captures the emulator window at low latency, passes each frame to an agent bridge that uses TypeSafe Jev System One (with a heuristic vision fallback), and sends the chosen action to a virtual gamepad: ViGEmBus on Windows or keyboard mapping on macOS.

A visual telemetry HUD overlays analog stick deflection, face buttons, triggers, the current decision label, a confidence bar and FPS, and can record straight to MP4 for streaming or social video. A mock emulator window lets you test the loop without PCSX2. The project is aimed at hobbyists and streamers who want a showcase of a fast decision model driving a game, rather than a trained game-playing policy.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich controller action should the agent take for this frame?(inferred)—

How it works

  1. Capture the PCSX2 window with bettercam (Windows) or mss (macOS)
  2. Send frame-derived state to Jev in an async worker at 30-60 fps
  3. Map the chosen action to digital or analog controller input
  4. Render the decision label, confidence bar and controls on the HUD, optionally recording to MP4

Strengths

  • Low-latency decisions suited to per-frame control
  • Confidence is surfaced visually on the HUD
  • Mock emulator lets you test without a game

Caveats

  • Decision questions and options are not documented in the README
  • Requires a TypeSafe key; a heuristic vision mode exists as an alternative
  • No licence stated

Getting started

pip install -r requirements.txt, set TYPESAFE_API_KEY, then run python main.py --agent jev --fps 30 (or test_emulator.py plus main.py --window "Mock PS2").

At a glance

Type
Project
Status
prototype
Language
Python
Runtime
Desktop app with PCSX2 emulator
Has code
yes

Use cases and integrations

How curated lists describe it

  • Autonomous PlayStation 2 AI Agent with real-time visual telemetry HUD powered by TypeSafe Jev System One.

    hellogumbo/awesome-jev

Frequently asked questions

What does Jev decide here?

The next controller action for the current game frame, shown on the HUD with a confidence bar.

Can I try it without a PS2 game?

Yes, the README includes a mock emulator window for an interactive test drive.

Does it need a TypeSafe key?

For Jev mode, yes; the key is read from TYPESAFE_API_KEY and a heuristic vision agent is also available.

Related projects

  • clash-jev★ 36

    Clash Royale bot on a real phone with no trained policy: vision builds a JSON state and Jev picks strategy, card and square each second.

    ProjectprototypePython
  • Browser driving game where Florence-2 captions dropped images and Jev decides whether the car stops, slows or continues.

    ProjectprototypeTypeScript
  • PlayJev: Qwen3.5-0.8B fine-tuned to play ten browser games from raw pixels, one forward pass per move with a probability per option.

    ServiceresearchPython
  • jev-visual★ 317

    Educational MLX project scoring typed questions about one image with Qwen3.5-0.8B on Apple Silicon, with game demos.

    ModelresearchPython
  • StartLux's open typed decision models from 0.8B to 27B plus a 35B-A3B MoE, reading text, JSON or images up to 256K tokens.

    ModelresearchPython
  • Source for browser chess and Chess960 where code computes each legal move's facts and Jev picks one per turn as a typed Choice.

    ProjectproductionTypeScript