>_ program-games.org
browse games
~/articles/feature
Feature

A Short History of Programming Games, from Core War to Today

A concise history of programming games, from Core War and Robocode through Zachtronics puzzle design to modern API games, bot arenas and persistent coding worlds.

A Short History of Programming Games, from Core War to Today article hero image

Programming games are older than the modern web, older than indie storefronts and older than many of the languages people now use to play them. The genre keeps returning because the central fantasy is durable: your code is not just a tool, it is the player.

## The early idea: code as combat

The history often starts with Core War in 1984. Two programs written in Redcode fight inside a virtual computer’s memory, trying to overwrite, outlast or crash each other. It is abstract, but the central idea is still modern: the player expresses strategy as code, then the program acts on its own.

Core War — bot arena programming game screenshot
Core War★ 4.4

Two programs in Redcode fight for control of a virtual computer’s memory. The 1984 ancestor of every bot-battle game.

View ↗
Robocode — bot arena programming game screenshot
Robocode★ 4.5

Build a robot tank, code its brain in Java or .NET, and drop it into the arena. The classic that taught a generation to program by battling bots.

View ↗
crobots
CROBOTS★ 4.2

Write a tiny C program to control a battle robot’s motion, scanner and cannon, then watch it fight to the last bot standing.

View ↗

Later robot battle games made the fantasy more visual. CROBOTS used C-like robot logic. Robocode gave players Java tanks with radar, movement and guns. These games proved that programming could be competitive, watchable and personal. A bot’s mistakes felt like your mistakes because they came directly from your decisions.

## Educational and visual programming games

Another branch focused on teaching. Robot Odyssey, Lightbot, Cargo-Bot and Human Resource Machine used robots, blocks or visual instructions to teach sequencing, loops, branching and decomposition. These games mattered because they separated programming thought from professional syntax.

Robot Odyssey — robot programming programming game screenshot
Robot Odyssey★ 4.2

The legendary 1984 game where you escape a city by wiring logic chips inside robots — now playable as a free modern reboot.

View ↗
Lightbot — visual puzzle programming game screenshot
Lightbot★ 4.2

Sequence simple commands and procedures to light up tiles. The friendliest possible introduction to programming logic.

View ↗
Cargo-Bot — visual puzzle programming game screenshot
Cargo-Bot★ 4.2

Teach a crane to stack crates using programs, procedures and a stack — famously made on an iPad.

View ↗
Human Resource Machine — visual puzzle programming game screenshot
Human Resource Machine★ 4.6

Drag visual instructions to automate your white-collar job. A gentle, beautifully made intro to assembly thinking — no syntax required.

View ↗

That distinction is still important. Many beginners do not struggle because they cannot understand logic; they struggle because syntax, tooling and error messages arrive all at once. Visual programming games slow the lesson down and make each idea visible.

## The Zachtronics era

In the 2010s, Zachtronics turned programming-adjacent puzzle design into an art form. SpaceChem asked players to program molecular assembly lines. Infinifactory moved factory logic into 3D. TIS-100 made fictional assembly feel austere and intimate. SHENZHEN I/O blended circuits, datasheets and microcontroller code. Opus Magnum made optimization beautiful and shareable.

SpaceChem — visual puzzle programming game screenshot
SpaceChem★ 4.6

Program pairs of waldos to build molecules on an assembly line. The original Zachtronics visual-programming puzzler.

View ↗
TIS-100 — assembly puzzle programming game screenshot
TIS-100★ 4.8

Reverse-engineer a corrupted parallel computer by writing assembly for its tiny nodes. Zachtronics’ cult open-ended assembly puzzler.

View ↗
SHENZHEN I/O — circuit / hardware programming game screenshot
SHENZHEN I/O★ 4.7

Build circuits and write microcontroller assembly to make gadgets for a shady electronics firm — datasheets, debugging and all.

View ↗
Opus Magnum — mechanical programming programming game screenshot
Opus Magnum★ 4.8

Build and program elegant alchemical machines, then optimise them for cost, cycles and area. The most approachable Zachtronics.

View ↗
EXAPUNKS — hacking / terminal programming game screenshot
EXAPUNKS★ 4.8

It’s 1997 and you’re a hacker with a disease only an illegal procedure can cure. Write EXA agents to infiltrate machines and steal what you need.

View ↗

The Zachtronics contribution was not merely difficulty. It was openness. A puzzle could have countless valid solutions, and the game could score them on different dimensions without declaring one true answer. That made optimization social. Players compared histograms, gifs and strange machines, learning from one another’s approaches.

## Real languages and persistent worlds

As the web matured, programming games increasingly used real languages and APIs. Screeps made JavaScript the control layer for a persistent MMO colony. Bitburner turned JavaScript automation into an incremental cyberpunk loop. CodinGame built a broad platform for puzzles and bot contests in many languages.

Screeps: World — mmo / rts programming game screenshot
Screeps: World★ 4.7

An open-source MMO RTS where your units are driven by JavaScript you write — and the world keeps running 24/7, even while you sleep.

View ↗
Bitburner — incremental programming game screenshot
Bitburner★ 4.6

A programming-based incremental: script your way through a cyberpunk net, automate hacking with a NetScript API, and break the simulation.

View ↗
CodinGame — bot arena programming game screenshot
CodinGame★ 4.6

Solve puzzles and fight other players’ bots in real-time arenas. Write in 25+ languages and watch your code play out as an animated game.

View ↗
Battlecode — ai competition programming game screenshot
Battlecode★ 4.7

MIT’s annual AI programming competition. Command an army of bots with distributed strategy and battle other teams for the title.

View ↗

This shift changed the audience. These games were no longer only teaching programming concepts; they were giving programmers a reason to practice architecture, refactoring, documentation reading and long-term maintenance in a playful setting.

## API games and code-only worlds

The newest branch strips away the traditional client even further. In API games such as SpaceTraders and Artifacts MMO, you play by sending HTTP requests and building automation around the responses. The game becomes a service, and your bot becomes the interface.

SpaceTraders — api game programming game screenshot
SpaceTraders★ 4.5

A multiplayer game with no UI of its own: you automate a trading fleet entirely through an HTTP API in any language.

View ↗
Artifacts MMO — api game programming game screenshot
Artifacts MMO★ 4.5

A sandbox MMORPG with no game client of its own — you play by writing code that calls its API to gather, craft and fight.

View ↗
Oort — ai competition programming game screenshot
Oort★ 4.6

Write Rust to pilot a fleet of spaceships through combat scenarios and climb the tournament leaderboard.

View ↗

That design makes the genre feel surprisingly close to real software work. You handle authentication, cooldowns, data models, scheduling, retries and planning. The fantasy is not that coding is easy; it is that coding can be the whole mode of play.

## Why the genre keeps coming back

Programming games last because they create ownership. When a solution works, it is not only because you reacted well or chose the right upgrade. It is because you expressed a process clearly enough for the game to execute it. That feeling is powerful whether the process is a Redcode warrior, a Java tank, an alchemy machine, a JavaScript colony or an API trading fleet.

The genre also keeps evolving with the tools programmers use. As more people learn through browsers, games use JavaScript and web APIs. As automation becomes culturally familiar, games about bots and persistent systems make intuitive sense. As education moves toward visual learning, block and node-based games keep finding new audiences.

## Where programming games go next

The next wave will likely blur games, simulations and developer tools even more. Expect more API-first worlds, more multiplayer bot arenas, more games that teach practical web skills and more sandboxes where players share not just screenshots but codebases.

That future still points back to the oldest idea in the genre: write a program, let it loose, and learn from what it does when you are no longer touching the controls.

LO
Written by Lena Ortmann
Editor · plays too much TIS-100

Lena reviews and breaks down programming games for program-games.org. She has shipped bots to three different Screeps shards and still loses to her own old code.

// games mentioned

// keep reading