BEGINNER ROADMAP

Learn Screeps in twelve focused lessons

Follow the sequence from the first room and tick loop to one combined room script. Each lesson answers one beginner question, uses checked APIs, and states which Console or live-room verification remains pending.

01

STAGE 01

Understand Screeps

Learn what the game is, find the room view, editor and Console, then understand ticks and module.exports.loop.

  1. LESSON 01What Is Screeps? A Programming Strategy Game

    Learn what Screeps is, how JavaScript controls its persistent world, and how Rooms, Creeps, Sources, Spawns, and Controllers work together for new players.

    8 min read
  2. LESSON 02Screeps First Room: Find the Editor and Console

    Find your first Screeps Room, code editor, and Console, then use read-only commands to identify visible Rooms, Spawns, Creeps, Sources, and the Controller.

    8 min read
  3. LESSON 03Screeps Ticks and Game Loop: Why Your Code Runs Repeatedly

    Understand a Screeps tick, Game.time, and module.exports.loop, then run safe observations that show why actions and state changes appear across later ticks.

    8 min read
02

STAGE 02

Control the first Creep

Harvest Energy, deliver it to a Spawn, and connect WORK, CARRY, and MOVE to the abilities used by the loop.

  1. LESSON 04Screeps Harvest Energy: Your First Creep Script

    Make one named Screeps Creep find a Source, move into range, and harvest Energy with a small script you can verify across later ticks.

    9 min read
  2. LESSON 05Screeps Energy Delivery: Creep to Spawn

    Make one Creep transfer Energy to a named Spawn, preserve delivery mode across ticks, and complete its first Source-to-Spawn round trip.

    10 min read
  3. LESSON 06Screeps Creep Body Parts: WORK, CARRY, and MOVE

    Inspect one Creep's active WORK, CARRY, and MOVE parts, then use its action result, Store, fatigue, and damage to diagnose missing abilities.

    8 min read
03

STAGE 03

Create and assign simple roles

Spawn a new Creep, separate Harvester, Upgrader and Builder responsibilities, then automate Controller upgrading.

  1. LESSON 07Screeps spawnCreep(): Create Your First Creep

    Use dryRun to validate a WORK-CARRY-MOVE body, submit one safe spawnCreep() request, read its return code, and verify the new Creep across later ticks.

    8 min read
  2. LESSON 08Screeps Creep Roles: Harvester, Upgrader, and Builder

    Learn why Harvester, Upgrader, and Builder are player-defined responsibilities, how roles differ from body parts, and why a Creep name does not create behavior.

    8 min read
  3. LESSON 09Screeps upgradeController(): Build Your First Upgrader Loop

    Build one Upgrader1 loop that harvests from an active Source, moves within Controller range 3, spends Energy with upgradeController(), and switches state across ticks.

    10 min read
04

STAGE 04

Complete the first room loop

Build an Extension, give the Builder a small task priority, and combine all three roles inside one readable main loop.

  1. LESSON 10How to Build Your First Screeps Extension

    Confirm RCL 2, place one Extension Construction Site, make Builder1 harvest and build it, and understand progress, capacity, and common failure states.

    12 min read
  2. LESSON 11How to Make a Screeps Creep Build and Repair Automatically

    Give Builder1 a clear priority: build owned sites, repair selected damaged structures, and upgrade the Controller when no higher task exists.

    14 min read
  3. LESSON 12How to Combine Your First Screeps Room Loop

    Combine fixed-name Harvester1, Upgrader1, and Builder1 logic with spawning, safe target checks, state switches, return-code logging, and explicit beginner limits.

    20 min read
Complete beginner sequence published

All twelve English beginner lessons are connected with previous and next navigation, Chinese counterparts, search records, canonical URLs, reciprocal language links, FAQ schema, and Sitemap entries.

REFERENCE

Check common error codes

Use the English return-code reference while testing actions and movement.

Open error codes →