Difference between revisions of "Claming new room"

From Screeps Wiki
Jump to navigation Jump to search
(first draft)
(Spelling, grammar, wording, links)
 
(7 intermediate revisions by one other user not shown)
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 fewer rooms than your [https://docs.screeps.com/control.html#Global-Control-Level Global Control Level] (GCL) allows, you can claim another one.
   
=== Simple overview how to claim new room ===
+
=== Simple overview of how to claim a new room ===
To claim new room You need to do 6(7) things:
+
To claim a 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 at least one CLAIM body part to an unowned room
* have said creep successfully perform .claimController() action
+
* have this creep successfully perform the [https://docs.screeps.com/api/#Creep.claimController .claimController()] action
* put construction site of Spawn
+
* place a spawn construction site
* bring builders from already-owned rooms
+
* bring builders from at least one of the rooms you already own
* build Spawn
+
* build the spawn
* keep Controller from Downgrade and loosing Room Control Level (RCL)
+
* keep the controller from downgrading and losing a [https://docs.screeps.com/control.html#Room-Controller-Level Room Control Level] (RCL)
   
 
Optional (quite often required)
 
Optional (quite often required)
   
* Defend new room from Invaders / other Players
+
* Defend the new room from invaders / other Players
   
 
=== Things to think about ===
 
=== Things to think about ===
   
===== Before considering claiming a new Room: =====
+
===== Before considering claiming a new room: =====
Claiming new room comes with some cost:
+
Claiming a new room comes with some cost:
   
* Spawn Time required to spawn builders
+
* spawn time required to spawn builders
* Energy cost of builders
+
* energy cost of builders
* possible initial energy load of builder (if You're not sending them early)
+
* possible initial energy load of builder (if you're not sending them empty)
 
* possible need of sending combat creeps to defend new room
 
* possible need of sending combat creeps to defend new room
 
* CPU cost of multiple creeps going on multi-room voyage
 
* CPU cost of multiple creeps going on multi-room voyage
  +
* CPU cost of some extra creeps building new room
  +
* fully developed rooms require more CPU
   
  +
'''Which can be summed up as:'''
===== This boils down to is my empire able to afford expansion: =====
 
 
* 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.
* do i have enough CPU
 
* do I have a room that can support setting up a new room
 
   
 
The same applies to the situation when your rooms are attacked or energy-starved.
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 when Your rooms are attacked or energy-starved.
 
   
 
===== Things to consider when picking new Room =====
 
===== 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:
+
If your empire is healthy, then you need to find a suitable room to claim. These are some things to consider while picking:
   
* how far/close i want the new room to be from my base
+
* How close/far should the new room be from my base?
* does new room have 2 sources'' (1 source rooms tend to develop slower)''
+
* Does the new room have 2 sources''? (1 source rooms usually develop more slowly)''
* how many potential remotes are available, how many sources they have ''(the more the better)''
+
* How many potential [[Remote Harvesting|remotes]] are available? How many sources do 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)''
+
* Which mineral should the new room have ''(In general it's best to pick a room with a mineral you don't have yet. In the beginning it's good to have O or H for basic boosts, focusing on X early on is not always the best choice.)''
* does new room has other players around
+
* Does the new room have other players around?
** are they aggressive
+
** Are they aggressive?
** do they have Remote Mining Rooms close/overlapping with Your room
+
** Do they have Remote Mining Rooms close to / overlapping with your room?
  +
** Will they want to expand towards you / your new room?
* what's the purpose of the room
+
* What's the purpose of the room?
** access to PowerBanks or Deposits
 
  +
** access to [https://docs.screeps.com/power.html PowerBanks] or [https://docs.screeps.com/resources.html#Commodities Deposits]
 
** access to highway in general
 
** access to highway in general
 
** control of area
 
** control of area
  +
  +
===== First-time expansion =====
  +
If you have just started the game (or did not expand yet), this is a special situation that adds another 3 questions:
  +
  +
* Do you have code organized in a way that can run multiple rooms?
  +
* In case of a bug or an error in one room, can you still run your other rooms without crashing your code?
  +
* Is your code ready for edge cases that might come with the new room?
  +
  +
=== Strategies of claiming a new room ===
  +
  +
* Refilling spawn builders by harvesting sources in the new room
  +
* Spawning big spawn builders that carry a lot of energy to the new room
  +
* Spawning small spawn builders that swarm neighbouring rooms' sources for energy
  +
* Sending big hauler creeps to provide energy to build the spawn
  +
* Protecting the spawn construction site with rampart(s) or walls
  +
* Protecting the controller from [https://docs.screeps.com/api/#Creep.attackController .attackController()] actions of other players using rampart(s)/wall(s)
  +
* Creating a path with [https://docs.screeps.com/api/#PathFinder.search PathFinder.search()] between your owned Room and the new room and storing it for later use by creeps to save CPU
  +
  +
=== After claiming the 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
  +
  +
* sending big hauler creeps with energy (and recycling them for more energy)
  +
* sending big upgrading / mining / building creeps and renewing them, to provide the room with creeps that would not be available to it because of its lack of extensions
  +
* ensuring its protection with combat creeps sent from more developed rooms

Latest revision as of 22:53, 6 January 2021

Requirements[edit | edit source]

If you have claimed fewer rooms than your Global Control Level (GCL) allows, you can claim another one.

Simple overview of how to claim a new room[edit | edit source]

To claim a new room, you need to do 6(7) things:

  • send a creep with at least one CLAIM body part to an unowned room
  • have this creep successfully perform the .claimController() action
  • place a spawn construction site
  • bring builders from at least one of the rooms you already own
  • build the spawn
  • keep the controller from downgrading and losing a Room Control Level (RCL)

Optional (quite often required)

  • Defend the new room from invaders / other Players

Things to think about[edit | edit source]

Before considering claiming a new room:[edit | edit source]

Claiming a 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 empty)
  • possible need of sending combat creeps to defend new room
  • CPU cost of multiple creeps going on multi-room voyage
  • CPU cost of some extra creeps building new room
  • fully developed rooms require more CPU

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.

The same applies to the situation when your rooms are attacked or energy-starved.

Things to consider when picking new Room[edit | edit source]

If your empire is healthy, then you need to find a suitable room to claim. These are some things to consider while picking:

  • How close/far should the new room be from my base?
  • Does the new room have 2 sources? (1 source rooms usually develop more slowly)
  • How many potential remotes are available? How many sources do they have (the more the better)?
  • Which mineral should the new room have (In general it's best to pick a room with a mineral you don't have yet. In the beginning it's good to have O or H for basic boosts, focusing on X early on is not always the best choice.)
  • Does the new room have other players around?
    • Are they aggressive?
    • Do they have Remote Mining Rooms close to / overlapping with your room?
    • Will they want to expand towards you / your new room?
  • What's the purpose of the room?
First-time expansion[edit | edit source]

If you have just started the game (or did not expand yet), this is a special situation that adds another 3 questions:

  • Do you have code organized in a way that can run multiple rooms?
  • In case of a bug or an error in one room, can you still run your other rooms without crashing your code?
  • Is your code ready for edge cases that might come with the new room?

Strategies of claiming a new room[edit | edit source]

  • Refilling spawn builders by harvesting sources in the new room
  • Spawning big spawn builders that carry a lot of energy to the new room
  • Spawning small spawn builders that swarm neighbouring rooms' sources for energy
  • Sending big hauler creeps to provide energy to build the spawn
  • Protecting the spawn construction site with rampart(s) or walls
  • Protecting the controller from .attackController() actions of other players using rampart(s)/wall(s)
  • Creating a path with PathFinder.search() between your owned Room and the new room and storing it for later use by creeps to save CPU

After claiming the new room[edit | edit source]

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

  • sending big hauler creeps with energy (and recycling them for more energy)
  • sending big upgrading / mining / building creeps and renewing them, to provide the room with creeps that would not be available to it because of its lack of extensions
  • ensuring its protection with combat creeps sent from more developed rooms