gitwtfhub

wtf is crtc?

b10902118/crtc — explained in plain English

Analysis updated 2026-05-18

2C++Audience · researcherComplexity · 4/5LicenseSetup · hard

TL;DR

An environment that lets AI agents learn to play a mobile card battle game by running the real game engine locally and controlling it from Python.

Mindmap

mindmap
  root((repo))
    What it does
      Wraps a mobile game
      Enables RL training
      Runs engine locally
    Tech stack
      C++ loader
      Python wrapper
      Docker install
    Use cases
      Train game-playing agents
      Research RL environments
      Try via Colab
    Audience
      RL researchers
      Game AI hobbyists
    Setup
      Docker recommended
      32-bit architecture needed
      Colab quick start

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Train a reinforcement learning agent to play the game automatically.

REASON 2

Experiment with existing Gymnasium or PettingZoo agents on a new game environment.

REASON 3

Study how a real mobile game engine can be wrapped into a research-friendly API.

REASON 4

Try the environment instantly through the provided Google Colab notebook.

What's in the stack?

C++PythonDockerGymnasiumPettingZoo

How it stacks up

b10902118/crtc9veedz/4leggedspiderbotakashsingh3031/striver-sde-challenge-2023
Stars222
LanguageC++C++C++
Last pushed2023-06-19
MaintenanceDormant
Setup difficultyhardhardeasy
Complexity4/54/51/5
Audienceresearchervibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · hard Time to first run · 1h+

Requires Docker and a 32-bit compatible setup, or the game engine loader will not compile.

You can use and modify this freely, but any project built on it must also be released as open source.

Wtf does this do

CRTC turns a mobile game the README only calls "CR" into an environment where computer programs can learn to play it through trial and error, a technique known as reinforcement learning. Instead of a person tapping the screen, an AI agent observes the game state and sends moves, over and over, to improve its play. Under the hood, the project runs the actual game engine on your own computer using a custom loader written in C++ that talks directly to the game's compiled code. A Python layer sits on top of that loader and exposes the game as a standard environment that reinforcement learning tools already know how to work with, following the same style of interface used by the popular Gymnasium and PettingZoo libraries, so existing RL agents and code can plug in with little modification. Getting started can be done two ways. A Google Colab notebook handles everything for you, so you can try it in a browser with a single click. For local use, the recommended path is Docker, which builds the loader for either x86 or arm processors and installs the necessary game files automatically, though the download step can be slow and a manually downloaded copy of the game speeds things up. Setting it up directly on your own machine without Docker is also possible but more involved, since the loader needs to be compiled for a 32 bit architecture. Once running, the environment can be controlled from a short Python script that resets the game, reads back observations, and steps through moves, or played interactively from the command line. The project is still early stage, with a listed to-do including more complete game state information, better logging, and eventually the ability to match bots against each other remotely. It is licensed under GPLv3, meaning any project built on top of it must also stay open source.

Yoink these prompts

Prompt 1
Explain how the C++ loader in this repo connects to the game engine.
Prompt 2
Show me how to set up this reinforcement learning environment using Docker.
Prompt 3
Help me write a simple agent that plays using the CRTC Python API.
Prompt 4
Walk me through the PettingZoo Parallel API this project follows.
Prompt 5
What does the GPLv3 license mean for a project I build on top of this one?

Frequently asked questions

wtf is crtc?

An environment that lets AI agents learn to play a mobile card battle game by running the real game engine locally and controlling it from Python.

What language is crtc written in?

Mainly C++. The stack also includes C++, Python, Docker.

What license does crtc use?

You can use and modify this freely, but any project built on it must also be released as open source.

How hard is crtc to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is crtc for?

Mainly researcher.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.