Difference between revisions of "Claming new room"

From Screeps Wiki
Jump to navigation Jump to search
m
Line 1: Line 1:
 
=== Requirements ===
 
=== Requirements ===
If You have claimed less rooms than your Global Control Level (GCL)You can claim another one.
+
If You have claimed less rooms than your [https://docs.screeps.com/control.html#Global-Control-Level Global Control Level] (GCL)You can claim another one.
  
=== Simple overview how to claim new room ===
+
=== Simple overview how to claim new Room ===
 
To claim new room You need to do 6(7) things:
 
To claim new room You need to do 6(7) things:
  
* send a creep with CLAIM body part to an un-owned room
+
* send a creep with CLAIM body part to not owned room
* have said creep successfully perform .claimController() action
+
* have said creep successfully perform [https://docs.screeps.com/api/#Creep.claimController .claimController()] action
 
* put construction site of Spawn
 
* put construction site of Spawn
 
* bring builders from already-owned rooms
 
* bring builders from already-owned rooms
 
* build Spawn
 
* build Spawn
* keep Controller from Downgrade and loosing Room Control Level (RCL)
+
* keep Controller from Downgrade and loosing [https://docs.screeps.com/control.html#Room-Controller-Level Room Control Level] (RCL)
  
 
Optional (quite often required)
 
Optional (quite often required)
Line 27: Line 27:
 
* CPU cost of multiple creeps going on multi-room voyage
 
* CPU cost of multiple creeps going on multi-room voyage
  
 +
'''Which can be summed up as:'''
 +
* do You have enough CPU
 +
* do You have a room that can support setting up a new room
  
This boils down to is my empire able to afford expansion:
+
If You're short on CPU (i.e on Shard3) or would need to disable some parts of Your code to claim a new room it should be well thought before.
* do i have enough CPU
 
* do I have a room that can support setting up a new room
 
  
If You're short on CPU (i.e on Shard3) or would need to disable some parts of Your bot to claim a new room it should be well thought before.
+
Same for situation when Your rooms are attacked or energy-starved.
 
 
Same for when Your rooms are attacked or energy-starved.
 
  
 
===== Things to consider when picking new Room =====
 
===== Things to consider when picking new Room =====
Line 50: Line 49:
 
** access to highway in general
 
** access to highway in general
 
** control of area
 
** control of area
 +
 +
===== First-time expansion =====
 +
If You have just started game (or did not expand yet) it's a special situation, that adds another 3 questions:
 +
 +
* do You have code organized in a way that can run 2 (or more) rooms
 +
* in case of bug or error in one room, can You still not crash Your whole empire with it
 +
* is Your code ready for some edge-cases that might come with new room
 +
 +
=== Claim new Room concepts ===
 +
 +
* Refilling builders by harvesting sources in claimed room
 +
* Spawning big builders that carry lot of energy to new room
 +
* Spawning small builders that swarm neighbor rooms sources for energy
 +
* Sending big hauler creeps to provide energy to build
 +
* Protecting Spawn construction site with Rampart or Walls
 +
* Creating path with [https://docs.screeps.com/api/#PathFinder.search PathFinder.search] and storing it for creeps to use to save on CPU
 +
 +
=== After claiming new Room ===
 +
In theory You should already have code that can support this room on its own but You can still help it develop by
 +
 +
* Send big hauler creeps with energy (and recycle them for more energy)
 +
* Send big upgrade / mining / building creeps and renew them, to provide room with creeps that would not be available to it by default
 +
* ensure its protection with Combat Creeps sent from more developed rooms

Revision as of 15:44, 6 January 2021

Requirements

If You have claimed less rooms than your Global Control Level (GCL)You can claim another one.

Simple overview how to claim new Room

To claim new room You need to do 6(7) things:

  • send a creep with CLAIM body part to not owned room
  • have said creep successfully perform .claimController() action
  • put construction site of Spawn
  • bring builders from already-owned rooms
  • build Spawn
  • keep Controller from Downgrade and loosing Room Control Level (RCL)

Optional (quite often required)

  • Defend new room from Invaders / other Players

Things to think about

Before considering claiming a new Room:

Claiming new room comes with some cost:

  • Spawn Time required to spawn builders
  • Energy cost of builders
  • possible initial energy load of builder (if You're not sending them early)
  • possible need of sending combat creeps to defend new room
  • CPU cost of multiple creeps going on multi-room voyage

Which can be summed up as:

  • do You have enough CPU
  • do You have a room that can support setting up a new room

If You're short on CPU (i.e on Shard3) or would need to disable some parts of Your code to claim a new room it should be well thought before.

Same for situation when Your rooms are attacked or energy-starved.

Things to consider when picking new Room

If Your empire is healthy then You need to find suitable room to claim, and this are some things to consider while picking room:

  • how far/close i want the new room to be from my base
  • does new room have 2 sources (1 source rooms tend to develop slower)
  • how many potential remotes are available, how many sources they have (the more the better)
  • what mineral does new room should have (in general it's best to pick room with mineral You don't have, early on it's good to have an O or H for basic Boosts, focusing X early is not always best choice)
  • does new room has other players around
    • are they aggressive
    • do they have Remote Mining Rooms close/overlapping with Your room
  • what's the purpose of the room
    • access to PowerBanks or Deposits
    • access to highway in general
    • control of area
First-time expansion

If You have just started game (or did not expand yet) it's a special situation, that adds another 3 questions:

  • do You have code organized in a way that can run 2 (or more) rooms
  • in case of bug or error in one room, can You still not crash Your whole empire with it
  • is Your code ready for some edge-cases that might come with new room

Claim new Room concepts

  • Refilling builders by harvesting sources in claimed room
  • Spawning big builders that carry lot of energy to new room
  • Spawning small builders that swarm neighbor rooms sources for energy
  • Sending big hauler creeps to provide energy to build
  • Protecting Spawn construction site with Rampart or Walls
  • Creating path with PathFinder.search and storing it for creeps to use to save on CPU

After claiming new Room

In theory You should already have code that can support this room on its own but You can still help it develop by

  • Send big hauler creeps with energy (and recycle them for more energy)
  • Send big upgrade / mining / building creeps and renew them, to provide room with creeps that would not be available to it by default
  • ensure its protection with Combat Creeps sent from more developed rooms