← all repositories
FengQuanLi/WZCQ

An RL Honor of Kings bot that still needs a human babysitter

It tries to automate Honor of Kings with policy gradients, but still needs a human to restart the match every time.

1.8k stars Python AgentsDomain Apps
WZCQ
Not currently ranked — collecting fresh signals.
star history

What it does This is a Python experiment that trains an AI agent to play the mobile MOBA Honor of Kings using policy-gradient reinforcement learning. It watches the game via scrcpy screenshots and issues touch commands through minitouch, while a secondary neural network classifies in-game events—like kills or deaths—to help judge rewards. The author is upfront that this is an early-stage personal project with plenty of rough edges.

The interesting bit The setup runs a two-headed architecture: a main policy model decides movement and abilities, while a secondary image-classification network scores state transitions such as killing a minion or getting executed by a tower. Training data is generated through a clunky but clever human-in-the-loop pipeline where you play alongside the model, and the state-judgment model requires you to manually curate its auto-generated labels. It reads less like a polished bot and more like a public lab notebook on surviving RL training for touchscreen games.

Key highlights

  • Uses policy gradients (not supervised imitation) to learn mobile MOBA strategy.
  • Dual-model setup: one network acts, a second classifies reward states like kills and deaths.
  • Semi-automated training: the author notes human intervention shrinks as training progresses, but match restarts remain manual.
  • Hardcoded for 1080×2160 phones and a specific UI layout; other devices need code tweaks.
  • Requires a physical Android phone (or VM), a Windows host, and at least a GTX 1060.

Caveats

  • Explicitly labeled as experimental and incomplete by the author, with leftover dead code still in the repo.
  • minitouch does not support Android 10 or above, and the setup relies on brittle manual workarounds like dropping scrcpy binaries into the project root.
  • No automation for match restarts or game flow, so unattended overnight training is impossible.

Verdict Worth a look if you are researching RL on mobile games and want an unvarnished look at the plumbing involved. Skip it if you want a plug-and-play bot or are running a modern Android device.

Frequently asked

What is FengQuanLi/WZCQ?
It tries to automate Honor of Kings with policy gradients, but still needs a human to restart the match every time.
Is WZCQ open source?
Yes — FengQuanLi/WZCQ is open source, released under the Apache-2.0 license.
What language is WZCQ written in?
FengQuanLi/WZCQ is primarily written in Python.
How popular is WZCQ?
FengQuanLi/WZCQ has 1.8k stars on GitHub.
Where can I find WZCQ?
FengQuanLi/WZCQ is on GitHub at https://github.com/FengQuanLi/WZCQ.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.