one dataset · paper, tables, graph, wiki
simgrammar the grammar of simulation

core loop

write and commit JavaScript -> each tick the script reads room state and issues orders -> creeps harvest energy for spawns, extensions, and the controller -> controller levels unlock structures -> claim and defend rooms against other players' code -> profile and rewrite code within the CPU limit

design notes

Screeps removes direct control entirely: the only input to the persistent world is the player's main module, which the server runs once per tick against a fixed snapshot, queuing commands that resolve together at tick end, so the colony keeps acting while the player is offline. Computation is the scarce resource: each tick has a CPU limit (20 without CPU Unlock, otherwise rising with Global Control Level to 300), with unused CPU banked in a 10,000-unit bucket that allows bursts of up to 500. Creeps are designed in code as bodies of up to 50 parts (WORK, CARRY, MOVE, ATTACK, RANGED_ATTACK, HEAL, CLAIM, TOUGH) that set cost, ability, and fatigue, and they die after 1,500 ticks, so a colony is a replacement pipeline. Room Controller Levels 1 to 8 unlock structures and decay if not fed energy, and every player's AI meets the others in shared 50x50 rooms, so strategy is emergent competition between programs. The server is open source and runnable privately.

relations

12 stored edges
uses

Execution budget

Each tick has a CPU limit (20 without CPU Unlock), unused CPU banks in a bucket of up to 10,000, a tick may burst to 500, and scripts are terminated at the limit, so pathfinding and caching strategies are shaped by CPU cost.

core
uses

Modular assembly

Code spawns creeps from up to 50 body parts of eight types; part counts set harvest, carry, attack, and heal rates, MOVE parts offset fatigue of 1, 2, or 10 per part on road, plain, or swamp, and each part has 100 hits.

core
uses

Persistent shared world

Official shards run continuously with ticks every 2 to 5 seconds, so colonies harvest, build, and fight while their owners are offline; rooms link through exits and shards through portals.

core
uses

Player programming

Players write JavaScript (or C, C++, Rust, Go, C#, and others via WebAssembly) whose main loop runs every tick under a per-tick CPU limit with a 10,000-unit bucket; globals reset between ticks and actions resolve together at tick end.

core
uses

Resource extraction

WORK parts harvest energy from sources that refill every 300 ticks, and extractors at RCL 6 mine minerals for labs and the market.

core
uses

Tech tree

Energy spent on a room controller raises its level from 1 to 8 at cumulative costs up to 10.9 million, unlocking spawns, extensions, towers, storage, links, labs, terminal, factory, observer, and nuker; unfed controllers downgrade and become neutral.

core
uses

Agent pathfinding

Movement costs are 1 on roads, 2 on plains, and 10 on swamps, and route searches consume the player's CPU, so caching paths is a core optimization.

supporting
uses

Lifecycle and aging

Every creep dies after 1,500 ticks, so code must schedule replacements before roles go unfilled.

supporting
uses

Modding API

The open-source private server supports mods and community servers that change rules and tick rates.

supporting
uses

Player-driven markets

Terminals post public buy and sell orders priced in credits with a 5% order fee; the party executing a deal pays an energy cost that grows with distance, and NPC terminals sit at highway crossroads.

supporting
uses

Raid defense

Towers, ramparts, and walls defend rooms against other players and NPC invaders, and a newly placed first spawn grants safe mode.

supporting
uses

Wear and breakdown

Roads and other structures lose hits over time and must be repaired by creeps.

supporting

backlinks

computed from other records

claims

1 with sources
c01medium

In late 2014 Screeps was publicly playable in its browser Simulation mode during its Indiegogo campaign, and a December 2015 post dates the initial launch a year earlier; the persistent MMO opened to backers in May 2015, and the Steam full release followed on 2016-11-16. `year` records the 2014 public launch.

src-screeps-2014-indiegogo-updates, src-screeps-2015-game-situation-review, src-screeps-2016-private-server-released, src-steam-2026-screeps-world

sources

10
(2026). Screeps: World. Steam
(2026). Introduction. Screeps documentation
(2026). Creeps. Screeps documentation
(2026). Control. Screeps documentation
(2026). Market. Screeps documentation
(2026). How does CPU limit work. Screeps documentation
(2026). Understanding game loop, time and ticks. Screeps documentation
Screeps team (2015-12-11). Game situation review: December 11, 2015. Screeps blog
Screeps team (2016-11). Screeps private server released!. Screeps blog

provenance

runs in log/runs
2026-10-24
created2026-10-24-catalog-ghcatalog