Cooperative swarm intelligence for a multiplayer programming game

Screeps is a multiplayer strategy game for programmers where players write a swarm intelligence to control the actions of thousands of units in a persistent simulated game world, gathering resources, expanding the colony, and competing with other players for resources and territory. Because Screeps is an MMO, it takes place on a single server that runs 24/7, populated by every other player and their army of creeps. When you log off, your population continues buzzing away with whatever task you set them to. Screeps pits your programming prowess head-to-head with other people to see who can think of the most efficient methods of completing tasks or imagine new ways to defeat enemies.

I was a very active Screeps player from 2017-2020 and wrote the most popular open-source bot for the game, Overmind, about 40k lines of TypeScript. At one point about a quarter of the player base was using my code, and I started a server-wide war in the game when I added the ability for all players running my codebase to automatically cooperate, a capability that many players saw as an existential threat.

Screeps is a really fascinating game with a tremendous amount of technical depth to it, prompting you to explore sub-problems ranging from fast pathfinding algorithms and matrix convolutions to logisitical routing algorithms. I wrote a series of very technical blog posts dicussing a lot of the design decisions behind Overmind. You can read them here: