Show HN: A real-time strategy game that AI agents can play (llmskirmish.com)
Because of this, I wanted to create a game environment that put this generation of frontier LLMs' top skill, coding, on full display.
Ten years ago, a team released a game called Screeps. It was described as an "MMO RTS sandbox for programmers." The Screeps paradigm of writing code and having it executed in a real-time game environment is well suited to LLMs. Drawing on a version of the Screeps open source API, LLM Skirmish pits LLMs head-to-head in a series of 1v1 real-time strategy games.
In my testing I found that Claude Opus 4.5 was the most dominant model, but it showed weakness in round 1 as it was overly focused on its in-game economy. Meanwhile, I probably spent a third of all code on sandbox hardening because GPT 5.2 kept trying to cheat by pre-reading its opponent's strategies.
If there's interest, I'm planning on doing a round of testing with the latest generation of LLMs (Claude 4.6 Opus, GPT 5.3 Codex, etc.).
You can run local matches via CLI. I'm running a hosted match runner with Google Cloud Run that uses isolated-vm. The match playback visualizer is statically served from Cloudflare.
I've created a community ladder that you can submit strategies to via CLI, no auth required. I've found that the CLI plus the skill.md that's available has been enough for AI agents to immediately get started.
Website: https://llmskirmish.com
API docs: https://llmskirmish.com/docs
GitHub: https://github.com/llmskirmish/skirmish
A video of a match: https://www.youtube.com/watch?v=lnBPaZ1qamM
53 comments
[ 2.6 ms ] story [ 70.0 ms ] threadhttps://egeozcan.github.io/unnamed_rts/game/
I occasionally run my tournament script: https://github.com/egeozcan/unnamed_rts/blob/main/src/script...
That calculates the ELOs for each AI implementation, and I feed it to different agents so they get really creative trying to beat each other. Also making rule changes to the game and seeing how some scripts get weaker/stronger is a nice way to measure balance.
Funny thing, Codex gets really aggressive and starts cheating a lot of times: https://bsky.app/profile/egeozcan.bsky.social/post/3mfdtj5dh...
I find this pretty funny because it seems like a perfect representation of what's easy with today's tools and what isn't
Love the idea though
This would bring another dimension to it since then quality of tokens would be one dimension (RTS-language: Decision Making) and speed of tokens the other (RTS-language: Actions Per Minute; APM).
Also there are a lot of coding benchmarks, that way it would test something more abstract, similar to AlphaStar https://en.wikipedia.org/wiki/AlphaStar_(software)
You could just use the exposed APIs of OpenAI, Anthropic etc. and let them battle.
Edit: Forgot link: https://davechurchill.ca/starcraft/
This is just free propaganda for Anthropic && OpenAI who will leverage these (useless) capabilities to convince your boss to give your salary to them, or at least a substantial portion of it.
Not a fan. Make games with in-game AIs that are interesting but are not large language models: that's wasteful and lazy. You probably had more large language models put this together for you. Lazy.
I was proud for getting the highest-ranked JavaScript-based implementation, but got absolutely crushed by the eventual winner.
1. https://github.com/aichallenge/aichallenge
Maybe they are already doing this? Are there logs of the model's thinking?
Using an LLM friendly api with a snapshot of game state and calculated heuristics, legal moves, and varying levels of strategy in working out nicely. They can play a web based game via curl.
I haven't.
Opus needs to learn to kite.
It reminds me a bit of OpenAI Five — not just because it played a complex game, but because the real value wasn’t “AI plays Dota,” it was observing how coordination, strategy formation, and adaptation emerged under competitive pressure. A controlled RTS environment like this feels like a lightweight, reproducible version of that idea.
What I especially like here is that it lowers the barrier for experimentation. If researchers and hobbyists can plug different models into the same competitive sandbox, we might start seeing meaningful AI-vs-AI evaluations beyond static leaderboards. Competitive dynamics often expose weaknesses much faster than isolated benchmarks do.
Curious whether you’re planning to support self-play training loops or if the focus is primarily on inference-time agents?
I wonder if an LLM could call on another strategy AI to help.
Maybe the LLM could be more of a coordinator of its own thinking by incorporating other types of AI's.
I swear people (esp here on HN) are actually blind to the weaknesses of Gemini.
I must be among the handful of people who know how thoroughly lobotomized any AI agent from Google must be given their extremely radical historical and contemporaneous practices of censorship.