Discussion: Power Creeps

Power creeps is perhaps the most significant revamp of the Screeps gameplay since its launch. When in December 2015 we introduced the new game resource called “power” and announced the future system of its usage, we knew how drastically power creeps and powers would affect the game balance. This is why we didn’t rush to implement them, but we wanted to thoroughly understand and evaluate the whole picture. (Numerous other routine issues and the major business goal of the project – launch on Steam – didn’t speed up things as well.)

Now we are ready to present to you the game design document on how the power creeps system will look like. We are yet to polish and implement it in the game, so the estimate PTR launch schedule is March or April. For now, we want to discuss it with you and hear your comments. How do you think this important update will affect the game?

Feel free to post your comments and suggestions below or in this forum created especially for power creeps discussion.

Features

Power creeps may be defined as “hero units” from other strategy games. Here are some key facts about them:

  • They don’t age and don’t have ticksToLive properties.
  • They can be killed, but after their death, you can respawn them from scratch at any of your PowerSpawn (but with cooldown time).
  • Each power creep is unique and has its own name and a set of powers. You decide which power creeps you have, and which skills they have, through a special GUI in Overview. The API controls are not provided since obtaining new powers would be quite rare (it’s enough to log into the game once a week or even a month to upgrade one’s creeps, see more explanation in this comment below.)
  • You can level up any power creep or create a new 1-level power creep by spending a certain amount of power resources from your account (see the table in the Level section below). The list of powers of an individual creep grows with each level.
  • You can despawn any power creep in the GUI and redistribute its powers. But this operation takes a considerable cooldown time, from a few hours to a few days.
  • Your power creeps exist in your account even when they are dead (i.e. don’t exist in the game world). You generate a power creep, name it, and then you can spawn this creep in any PowerSpawn using its name like this:
    Game.powerSpawns['PowerSpawn1'].createPowerCreep('MyCommander1');
  • Power creeps don’t have body parts and fatigue, they always move at the maximum speed of 1 square/tick (even on swamps), can’t execute regular creep activities. They have standard carry and hits properties. With each level, the amount of hits grows by 1000, the carry capacity by 100.
  • All available methods are as follows:
    • move/moveTo/moveByPath
    • pickup
    • withdraw
    • transfer
    • drop
    • suicide
    • say
    • usePower
    The last method is the very one for which power creeps exist: leverage some skill available to this creep. This is done this way:
    Game.powerCreeps['Commander1'].usePower(PWR_ENCOURAGE,
            Game.creeps['Harvester1']);
 

Levels

You level up your creeps manually via the GUI. Select a creep that you want to level up and agree to spend the specified amount of power resource. To calculate the needed amount of resource, the sum of all levels of your power creeps is used. The higher this sum, the more expensive it is to level up any of them, as well as to create a new 1-level power creep (equivalent to levelling up an existing creep).

Here is a preliminary table of resource usage across levels (may be changed later): 

Lvl P Σ Lvl P Σ Lvl P Σ
0 1,000 0 80 156,588 5,821,183 160 345,024 25,664,340
1 2,219 1,000 81 158,813 5,977,770 161 347,490 26,009,364
2 3,537 3,219 82 161,042 6,136,583 162 349,958 26,356,854
3 4,925 6,757 83 163,276 6,297,625 163 352,428 26,706,812
4 6,365 11,681 84 165,513 6,460,901 164 354,900 27,059,240
5 7,850 18,046 85 167,754 6,626,414 165 357,375 27,414,140
6 9,373 25,896 86 169,999 6,794,168 166 359,852 27,771,516
7 10,928 35,269 87 172,248 6,964,167 167 362,331 28,131,368
8 12,514 46,197 88 174,501 7,136,416 168 364,812 28,493,699
9 14,125 58,711 89 176,758 7,310,917 169 367,296 28,858,511
10 15,762 72,836 90 179,018 7,487,675 170 369,782 29,225,807
11 17,420 88,598 91 181,283 7,666,693 171 372,270 29,595,589
12 19,100 106,018 92 183,550 7,847,976 172 374,760 29,967,859
13 20,799 125,118 93 185,822 8,031,526 173 377,252 30,342,619
14 22,517 145,918 94 188,097 8,217,348 174 379,746 30,719,871
15 24,251 168,434 95 190,376 8,405,445 175 382,243 31,099,617
16 26,003 192,686 96 192,658 8,595,821 176 384,742 31,481,860
17 27,769 218,688 97 194,944 8,788,479 177 387,242 31,866,602
18 29,551 246,458 98 197,233 8,983,423 178 389,745 32,253,844
19 31,346 276,008 99 199,526 9,180,657 179 392,250 32,643,590
20 33,155 307,354 100 201,822 9,380,183 180 394,757 33,035,840
21 34,977 340,510 101 204,122 9,582,006 181 397,267 33,430,598
22 36,812 375,487 102 206,425 9,786,128 182 399,778 33,827,864
23 38,658 412,299 103 208,732 9,992,553 183 402,291 34,227,642
24 40,516 450,957 104 211,041 10,201,285 184 404,807 34,629,933
25 42,386 491,473 105 213,354 10,412,326 185 407,324 35,034,740
26 44,266 533,859 106 215,671 10,625,681 186 409,843 35,442,064
27 46,156 578,125 107 217,990 10,841,351 187 412,365 35,851,907
28 48,057 624,281 108 220,313 11,059,342 188 414,888 36,264,272
29 49,968 672,338 109 222,639 11,279,655 189 417,414 36,679,160
30 51,888 722,306 110 224,968 11,502,294 190 419,941 37,096,574
31 53,817 774,194 111 227,301 11,727,262 191 422,471 37,516,515
32 55,756 828,011 112 229,636 11,954,563 192 425,002 37,938,985
33 57,703 883,767 113 231,975 12,184,199 193 427,535 38,363,987
34 59,659 941,471 114 234,316 12,416,174 194 430,071 38,791,522
35 61,624 1,001,130 115 236,661 12,650,490 195 432,608 39,221,593
36 63,596 1,062,754 116 239,009 12,887,151 196 435,147 39,654,201
37 65,577 1,126,350 117 241,359 13,126,160 197 437,688 40,089,348
38 67,565 1,191,927 118 243,713 13,367,519 198 440,231 40,527,037
39 69,562 1,259,492 119 246,070 13,611,233 199 442,776 40,967,268
40 71,565 1,329,054 120 248,430 13,857,302 200 445,323 41,410,044
41 73,576 1,400,619 121 250,792 14,105,732 201 447,872 41,855,368
42 75,594 1,474,195 122 253,158 14,356,524 202 450,423 42,303,240
43 77,619 1,549,789 123 255,526 14,609,682 203 452,975 42,753,663
44 79,652 1,627,409 124 257,897 14,865,207 204 455,530 43,206,638
45 81,690 1,707,060 125 260,271 15,123,105 205 458,086 43,662,168
46 83,736 1,788,751 126 262,648 15,383,376 206 460,645 44,120,255
47 85,788 1,872,487 127 265,028 15,646,024 207 463,205 44,580,899
48 87,847 1,958,275 128 267,410 15,911,052 208 465,766 45,044,104
49 89,912 2,046,122 129 269,796 16,178,462 209 468,330 45,509,870
50 91,983 2,136,033 130 272,184 16,448,258 210 470,896 45,978,200
51 94,060 2,228,016 131 274,574 16,720,441 211 473,463 46,449,096
52 96,143 2,322,076 132 276,968 16,995,016 212 476,032 46,922,559
53 98,232 2,418,219 133 279,364 17,271,983 213 478,603 47,398,592
54 100,327 2,516,451 134 281,763 17,551,348 214 481,176 47,877,195
55 102,427 2,616,777 135 284,164 17,833,110 215 483,751 48,358,372
56 104,534 2,719,205 136 286,569 18,117,275 216 486,327 48,842,122
57 106,645 2,823,738 137 288,975 18,403,844 217 488,906 49,328,450
58 108,763 2,930,384 138 291,385 18,692,819 218 491,486 49,817,355
59 110,885 3,039,147 139 293,797 18,984,204 219 494,067 50,308,841
60 113,013 3,150,032 140 296,212 19,278,001 220 496,651 50,802,908
61 115,146 3,263,045 141 298,629 19,574,212 221 499,236 51,299,559
62 117,285 3,378,191 142 301,048 19,872,841 222 501,823 51,798,795
63 119,428 3,495,476 143 303,471 20,173,890 223 504,412 52,300,618
64 121,577 3,614,904 144 305,896 20,477,360 224 507,002 52,805,030
65 123,730 3,736,481 145 308,323 20,783,256 225 509,594 53,312,032
66 125,888 3,860,211 146 310,753 21,091,579 226 512,188 53,821,627
67 128,052 3,986,100 147 313,185 21,402,332 227 514,784 54,333,815
68 130,220 4,114,151 148 315,620 21,715,517 228 517,381 54,848,599
69 132,392 4,244,371 149 318,057 22,031,136 229 519,980 55,365,980
70 134,570 4,376,763 150 320,497 22,349,193 230 522,581 55,885,961
71 136,752 4,511,333 151 322,939 22,669,690 231 525,184 56,408,542
72 138,938 4,648,085 152 325,383 22,992,629 232 527,788 56,933,726
73 141,129 4,787,023 153 327,830 23,318,012 233 530,394 57,461,513
74 143,325 4,928,152 154 330,279 23,645,842 234 533,001 57,991,907
75 145,524 5,071,476 155 332,731 23,976,121 235 535,610 58,524,908
76 147,729 5,217,001 156 335,185 24,308,852 236 538,221 59,060,518
77 149,937 5,364,729 157 337,641 24,644,037 237 540,833 59,598,739
78 152,150 5,514,666 158 340,100 24,981,679 238 543,447 60,139,572
79 154,367 5,666,816 159 342,561 25,321,779 239 546,063 60,683,020

Lvl - Current power level
P - Processed power resource needed for level up (P = pow(1.15; Lvl) * 1000)
Σ - Total power resource processed to level

With each new level, you have to choose one of the three powers available on this level. The powers options available at any level of a creep development are fixed for each class. Your choice at each level is to choose one of the three suggested options. It can be a new power or levelling up an existing one. Each power has a level between 1 and 5, and the level determines its effectiveness.

Have a look at this example:

Here you can see the process of levelling up a 7-level creep where it is sequentially assigned powers A, B, A, C, C, A, D. As a result, this power creep will have the following powers:

  • A lvl 3
  • B lvl 1
  • C lvl 2
  • D lvl 1

You can’t upgrade a skill higher than level 5. Also, you can’t upgrade all available powers to level 5 due to a level cap for individual classes.

Classes

Each power creep belongs to one of several available classes that you assign on its creation. Once assigned, a class cannot be changed later (unless you destroy a creep and create it from scratch). The class determines the set of powers available to the creep. There will be 3 classes in the game upon launch:

Operator

A creep working mainly in the rear, at your base, though it can be used as a saboteur in offensive operations. The list of powers:

OPERATE_SPAWN Reduce spawn time by 10/30/50/65/80%. Effect duration 1000 ticks, cooldown 300 ticks. Consumes 100 U/U/UO/UHO2/XUHO2.
OPERATE_EXTENSION Extend capacity by 50/100/200/300/400 units. Effect duration 1000 ticks, cooldown 50 ticks. Consumes 5 U/U/UH/UH2O/XUH2O.
OPERATE_OBSERVER Extend range by 10/20/30/100/1000 rooms. Effect duration 1000 ticks, cooldown 900 ticks. Consumes 20 L/L/LH/LH2O/XLH2O.
OPERATE_TOWER Increase effectiveness by 10/20/30/40/50%. Effect duration 100 ticks, cooldown 10 ticks. Consumes 2 G/G/GH/GH2O/XGH2O.
OPERATE_LAB Increase reaction amount by 2/4/6/8/10 units. Effect duration 1000 ticks, cooldown 50 ticks. Consumes 10 K/K/KH/KH2O/XKH2O.
OPERATE_TERMINAL Decrease transfer energy cost by 10/20/30/40/50%. Effect duration 1000 ticks, cooldown 500 ticks. Consumes 100 L/L/LO/LHO2/XLHO2.
OPERATE_STORAGE Increase capacity by 500K/1000K/1500K/2000K/3000K units. Effect duration 1000 ticks, cooldown is 300 ticks. Consumes 50 Z/Z/ZH/ZH2O/XZH2O.
EXTEND_SOURCE Increase source energy amount by 1K/2K/3K/4K/5K units until the next regeneration cycle. Cooldown 100 ticks.
EXTEND_MINERAL Increase mineral deposit amount by 20/40/60/80/100 units. Cooldown 100 ticks.
DISABLE_SPAWN Increase spawn time by 10/20/30/40/50%. Effect duration 5 ticks, no cooldown. Range 20 squares.
DISABLE_EXTENSION Decrease capacity by 10/20/30/40/50%. Effect duration 50 ticks, no cooldown. Range 20 squares.
DISABLE_TOWER Reduce effectiveness by 10%/20%/30%/40%/50%. Effect duration 1 tick. Entire room range.
CORRUPT_SOURCE Destroy all energy contained in a source until the next regeneration cycle. Cooldown 250/200/150/100/50 ticks.
SHIELD Create a temporary rampart structure on the same square with 5K/10K/15K/20K/25K hits. The structure lasts for 50 ticks and then disappears. Cooldown 20 ticks. Consumes 100 energy.

Maximum level: 24. Levelling table:

1 OPERATE_EXTENSION OPERATE_TOWER DISABLE_EXTENSION
2 OPERATE_OBSERVER OPERATE_LAB EXTEND_SOURCE
3 OPERATE_SPAWN OPERATE_EXTENSION DISABLE_EXTENSION
4 OPERATE_TERMINAL EXTEND_MINERAL DISABLE_SPAWN
5 OPERATE_STORAGE OPERATE_LAB EXTEND_SOURCE
6 OPERATE_EXTENSION OPERATE_TOWER DISABLE_TOWER
7 SHIELD CORRUPT_SOURCE EXTEND_MINERAL
8 OPERATE_OBSERVER OPERATE_SPAWN OPERATE_STORAGE
9 OPERATE_TERMINAL DISABLE_TOWER DISABLE_SPAWN
10 OPERATE_TOWER OPERATE_LAB CORRUPT_SOURCE
11 OPERATE_SPAWN SHIELD DISABLE_EXTENSION
12 OPERATE_TERMINAL CORRUPT_SOURCE EXTEND_SOURCE
13 OPERATE_OBSERVER EXTEND_MINERAL DISABLE_SPAWN
14 OPERATE_STORAGE DISABLE_TOWER SHIELD
15 OPERATE_SPAWN OPERATE_TOWER OPERATE_EXTENSION
16 OPERATE_OBSERVER CORRUPT_SOURCE OPERATE_LAB
17 OPERATE_TERMINAL SHIELD DISABLE_TOWER
18 EXTEND_SOURCE EXTEND_MINERAL OPERATE_STORAGE
19 OPERATE_SPAWN OPERATE_EXTENSION DISABLE_SPAWN
20 OPERATE_TOWER OPERATE_OBSERVER DISABLE_EXTENSION
21 OPERATE_LAB CORRUPT_SOURCE SHIELD
22 OPERATE_TERMINAL OPERATE_STORAGE EXTEND_SOURCE
23 DISABLE_SPAWN DISABLE_EXTENSION DISABLE_TOWER
24 EXTEND_MINERAL OPERATE_SPAWN OPERATE_TERMINAL

Commander

This power creep is not very useful on its own, but it’s a team player. It influences and affects regular creeps, both friendly and hostile. The list of powers:

ENCOURAGE Remove all fatigue of the target creep. Cooldown 10/8/6/4/2 ticks. Range 20 squares.
EXHAUST Add 2/4/6/8/10 fatigue points to the target creep per each non-MOVE body part. Cooldown 10/8/6/4/2 ticks. Range 20 squares.
DEFEND Blocks up to 100/200/400/600/800 damage inflicted to the creep on the next tick. Cooldown 5 ticks. Melee range.
SUMMON Instantly relocates your own creep in the same room to the square next to the power creep. Cooldown 10/8/6/4/2 ticks.
SIGHT Increase range of all ranged abilites of the target creep by 1 for the next 5 ticks. Cooldown 10/8/6/4/2 ticks. Range 20 squares.
RENEW Adds time to live to the target creep. Consumes energy. The formula is the same as in StructureSpawn.renewCreep. Cooldown 5/4/3/2/1 ticks. Range 20 squares.
DISABLE Disables all actions of the target creep on the next tick. Cooldown 10/8/6/4/2 ticks. Melee range.
BERSERK Increase damage inflicted by a creep by 100%, but also incoming damage by 100% for the next 5 ticks. Cooldown 10/8/6/4/2 ticks. Range 20 squares.

Maximum level: 14. Levelling table:

1 ENCOURAGE SIGHT EXHAUST
2 EXHAUST ENCOURAGE DEFEND
3 ENCOURAGE SUMMON SIGHT
4 DEFEND DISABLE SIGHT
5 SUMMON RENEW EXHAUST
6 DISABLE BERSERK DEFEND
7 ENCOURAGE SUMMON RENEW
8 DISABLE SIGHT BERSERK
9 DEFEND DISABLE EXHAUST
10 ENCOURAGE RENEW SUMMON
11 SIGHT BERSERK DEFEND
12 SUMMON DISABLE EXHAUST
13 BERSERK RENEW ENCOURAGE
14 BERSERK DEFEND RENEW

Executor

This creep class prefers working alone. Due to its skills, it’s a very effective performer in your economy or as a war machine when defending or attacking. The list of powers:

HARVEST_ENERGY Harvest 200/400/600/800/1000 energy units from an energy source. Cooldown 20 ticks.
HARVEST_MINERAL Harvest 200/400/600/800/1000 mineral units from a deposit. Cooldown 40 ticks.
REMOTE_TRANSFER Remotely transfer resources to any creep or structure in 20 squares range. Cooldown 50/40/30/20/10 ticks.
MASS_REPAIR Repair all structures in 10 squares range area for up to 1000/2000/3000/4000/5000 hits in total. Repair effect is distributed between all structures. Consumes up to 10/20/30/40/50 energy.
SNIPE Inflict 100/200/300/400/500 damage to the target creep in 10 squares range. Cannot be used with structures. No cooldown.
PUNCH Inflict 300/600/900/1200/1500 damage to the target creep in melee range and disable all his actions on the next tick. No cooldown.
DEMOLISH Inflict 5K/10K/15K/20K/25K damage to the target structure in melee range. Cannot be used with creeps. Cooldown 10 ticks.
REINFORCE Make the creep itself invulnerable for attacks on the next tick. Cooldown 20/18/16/14/12/10 ticks.
REFLECT Reflect 50% of damage inflicted to the power creep back to an attacker creep. Effect duration 5 ticks, cooldown 20/18/16/14/12 ticks.
KILL Instantly kills any creep in 10 squares range if it's not inside hostile ramparts. Cooldown 900/800/700/600/500 ticks.

Maximum level: 17. Levelling table:

1 HARVEST_ENERGY HARVEST_MINERAL REMOTE_TRANSFER
2 HARVEST_ENERGY HARVEST_MINERAL SNIPE
3 REMOTE_TRANSFER PUNCH DEMOLISH
4 MASS_REPAIR HARVEST_ENERGY REMOTE_TRANSFER
5 SNIPE REFLECT REINFORCE
6 HARVEST_MINERAL MASS_REPAIR KILL
7 PUNCH REINFORCE DEMOLISH
8 HARVEST_ENERGY MASS_REPAIR SNIPE
9 REFLECT REINFORCE KILL
10 REMOTE_TRANSFER REFLECT DEMOLISH
11 MASS_REPAIR SNIPE PUNCH
12 HARVEST_MINERAL REFLECT KILL
13 PUNCH DEMOLISH REINFORCE
14 HARVEST_ENERGY REINFORCE KILL
15 REMOTE_TRANSFER MASS_REPAIR HARVEST_MINERAL
16 SNIPE REFLECT KILL
17 DEMOLISH PUNCH SNIPE

Conclusion

These classes with their powers is a preliminary picture of how we view the game balance at the moment. It’s open to change, so please leave your comments and suggestions below.

In general, we want to reach the point where power creeps become an independent scale of your game development in Screeps, parallel to the Global Control Level scale. As you can quantitatively increase your abilities with each new GCL (you can build more rooms, have more CPU, more creeps), in the same way the sum of your Power Levels will increase your abilities qualitatively by unlocking new powers and boosting their effectiveness, which leads to increased effectiveness of your economy and viability of your colony.

Using one high-level creep will allow you to achieve the same result as with 5 or 10 regular creeps and consume less CPU. You can scale your game influence the same way as through boosting your GCL, but the process will be deep rather than broad.

At the same time, the levelling system does not allow you to create a power creep exclusively for one specific skill and thus a very simple behavior logic. Any high-level creep will have several useful powers, so in any case boosting its effectiveness will require you to solve a difficult, but interesting task of developing its AI. Since any creep even in the same class can have an individual set of powers, its behavior logic can be unique and different not only from that of other players’ power creeps, but also your own other power creeps.

This significantly expands the scope of interesting challenges a player faces in Screeps, and we hope it will add fun and variety to the game process.

Have more questions? Submit a request

Comments

  • Atavus

    Dear Artem,

    Related changes
    As you say, this is a red herring. I strongly suggest removing the reference completely from this discussion in order to focus the conversation on what you believe matters. The proposed changes are very alarming and I am certain most individuals will not be able to focus on the subject of power creeps from the shock of what you have proposed.

    On that subject, whatever update you make, realize that the majority of us are old men and women with families and jobs. We cannot make ourselves available to completely restructure our AIs whenever Screeps deems necessary. Most of the proposed "related changes" will destroy the logic of 90% of the active AIs in the game. Please try to introduce power creeps in a gradual way so that its impact on the existing balance in the game is not catastrophic.

    Power creeps
    As I have warned multiple times in the past. Please do not make this a veritable case of "power creep". This proposal will make power creeps another cliff between the haves and the have-nots. Boosts are already a huge cliff which allows one player to steamroll another. Power creeps and the inherent complexity of the proposed mechanics is likely to add another big gap.

    Leveling
    Excellent proposal on combining level costs. Makes for an important decision on how to distribute between few high creeps or many low creeps. Very smart.

    Skill selection
    I mirror Pund on this subject. The current proposal is too restrictive. It feels likely that there will be a lot of "dead levels" acting as a disincentive to going for high-level creeps. Better to structure skill selection around something like MOBA skill system. Restrict the selection of higher levels of a skill until the creep's level reaches high enough. This still forces the player to diversify but does not restrict how he does this.

    Skills
    Here's a quick evaluation of skills according to what I can see at the moment.

    Operator
    OPERATE_SPAWN - controversial, probably a bad idea
    OPERATE_EXTENSION - useless except in super niche circumstances (low RCL)
    OPERATE_OBSERVER - good
    OPERATE_TOWER - neutral, if you need more firepower, boosted defenders are likely better, would be good if it had no cost
    OPERATE_LAB - useless if it only increases output, overpowered if it generates minerals
    OPERATE_TERMINAL - good
    OPERATE_STORAGE - interesting
    EXTEND_SOURCE - interesting, will probably unbalance the global economy
    EXTEND_MINERAL - interesting, will probably destroy the market
    DISABLE_SPAWN - neutral, make it work through ramparts
    DISABLE_EXTENSION - neutral
    DISABLE_TOWER - useless, effect too insignificant
    CORRUPT_SOURCE - good
    SHIELD - good

    Commander
    ENCOURAGE - neutral
    EXHAUST - good
    DEFEND - good, maybe increase range
    SUMMON - neutral
    SIGHT - good
    RENEW - good (if it retains boosts, overpowered)
    DISABLE - good, maybe increase range
    BERSERK - good

    Executor
    HARVEST_ENERGY - good
    HARVEST_MINERAL - good
    REMOTE_TRANSFER - good
    MASS_REPAIR - useless (not targetted, worse value then a boosted builder)
    SNIPE - interesting, but probably useless (dmg to low)
    PUNCH - interesting, but probably useless
    DEMOLISH - cooldown makes it useless (dismantler does more damage)
    REINFORCE - interesting, but easy to counter, useless
    REFLECT - interesting, but easy to counter, could be usefull if it hits units on rampart
    KILL - overpowered in defense, mostly useless in offense, bad idea

  • Atavus

    @Dissi

    The idea of changing the formula to be less harsh is a bad idea. Hernanduer's power level is already off the charts. Literally.

  • ScottyC

    Why not have all Power Creep abilities cost ProcessedPower (withdrawn from your account via a PowerSpawn) instead of minerals? Then have them level up based on skill usage! Maximum of 1 Power Creep per Power Spawn built. Then we'll be like a real RPG! 

     

    Edited by ScottyC
  • BlackLotus

    OPERATE_STORAGE - affect wears off. Are excess amounts dropped? if so, by which prio? how is our code supposed to cope with storage.store"max" being smaller than possible content, if resources to not get dropped in such a case?

    DISABLE_TOWER - Cooldown?

    IDENTIFY POWER - If only carry and hits, how can we access enemy power abilites?

    UTILITY POWER CREEPS - With the intended mechanics, there needs to be a class thats purely set on room utility, and must be able to jump from room to room. Otherwise the intended change will not be accessable by "lower" level users. Or there needs to be some very smart mechanic on the cooldown penalty of power creeps that get killed or are suicied intentially in order to spawn then in antoher room.

    ARENA - i see very little use for power creeps on the intended arena feature....

    Edited by BlackLotus
  • Vultured

    My initial impressions:

    Operator - supercharge your economy, but can also dip into some defensive/offensive support activities. Cool. I just worry that something like operate_spawn or extend_source will become mandatory rather than a fun and different way of building your empire.

    Executor - lots of ways to make combat more interesting, but can also replace some remote mining or links during downtime. Very cool. Some of the combat numbers might need to be tweaked, but it's hard to say without some experimentation.

    Commander - I'm having a hard time getting excited about this one. During downtime I guess you use summon to help your economy, but this seems less good than what executor gets (more CPU). If renew doesn't remove boosts and therefore allows you to attack much farther, then that is cool. If encourage allows me to put fewer move parts on my attack creeps, then that's a nice bonus, but with the current numbers that only allows me to put an extra 4 or so attack/heal/dismantle parts on a creep depending on the size of my attack party. The commander abilities also seem harder to code up than the other classes, which is fine, but I'm not convinced I'd get a worthy payoff for the extra complexity.

  • Avatar
    Artem from Screeps

    Related changes
    As you say, this is a red herring. I strongly suggest removing the reference completely from this discussion in order to focus the conversation on what you believe matters.

    Agree. This section is removed from the post now. We’ll come back to it later on the PTR forum.

  • ags131

    OPERATE_STORAGE

    I agree with BlackLotus here, from expirements on the PS, the server does not handle there being more contents than storeCapacity well, I had to rollback a database several times trying to make it work. It literally broke the server. Also, a 1-4k increase in storage is never going to be worth spending minerals on IMHO, especially not when it introduces extra code complexity to deal with _.sum(store) > storeCapacity

  • tedivm

    While I understand what you're saying about automation, I disagree. A huge part of the fun for a lot of people with this game is that they can attempt to automate everything, and taking that away is a bit frustrating.

    Overall I love the power creep concept and powers though.

  • kshepard

    ags131: it says 500K/1000K/1500K/2000K/3000K, which is 0.5M - 3M. So a significant bump.

  • ags131

    Ahh, I misread it, nvm. My point about additional code complexity to deal with over capacity after it wears off still stands....

  • Helam

    When they die, do we respawn a brand new power creep from scratch, and then have to level it up again? Or is there a way to respawn the same creep with same configuration. I understand choosing the levels and abilities is manual, but is there at least a way to automate replacing them when they die?

    Will nukes kill them like other creeps, regardless of where they are in the room?

    Perhaps the most important question of all, what will they look like?! Please tell me we can customize their appearance somehow! :P

    Edited by Helam
  • Maxion

    There is no reason to not provide an API for the power creep leveling and such. This game is about automation and making AI, and while I see the reasoning, such an important part of the game balance needs to be possible to automate, especially if you have to re-pick the skills each time you respawn a creep.

    Since the ability to choose skills is part of the GUI, I'm sure someone would be able to inject a way to do it through code anyway.

    Overall I agree with most of what other players have already said. Power creeps need to be balanced enough vs not having them that the players with high level ones at the start won't be pulling ahead by orders of magnitude. And there may be too many powers that end up being considered mandatory for being able to progress relative to other players.

  • vrs

    First - thanks for continuing to develop new features and engaging with the user community.

    Second - I would like it if these changes are added to the game in multiple smaller phases, instead of a "big bang", so everyone has time to adapt and you have time to evaluate the impact on the game. Perhaps also start with low impact changes first.

    Third, I would like it if these rules are simplified or at least balanced to ensure that newcomers aren't hopelessly behind with their codebase. A game can have great depth even with limited rules (chess, go, checkers, ...)

  • tedivm

    This is all really awesome. I do have a few thoughts-

     

    * There should be a new forum specifically to talk about this feature, otherwise this conversation is going to end up having 20 pages of impossible to follow conversation.

     

    * I really think that observers should have an unlimited range, even without power creeps. Any player can manually look at any room, giving a huge advantage to people who babysit the screen. Automated scripts should be able to compete against players, and observers are a way to do that.

     

    * An API is important for people who want to make bots. Otherwise people with single player private servers will not be able to play against bots with power abilities.

    Edited by tedivm
  • Twill

    Use Power to use ability

    I quite like @ScottyC's suggestion of abilities burning Power. It acts as a small check to those who have built up massive reserves and gives new entrants to the game a chance.

    Without a sink, Power is overpowered (no pun intended)

    Either have a fixed power usage per action, a percentage of remaining, or low level actions are free (level 1/2) and high level actions cost an increasing amount of power.

     

    Getting Power will be hard for newbies

    Gaining Power is going to become the domain of the already rich and powerful.

    If I don't have any PCs, I'm not going to be able to take Power vs someone who does have PCs and wants to use the same source.

     

    Does DEFEND work against rebounded damage

    How will DEFEND work against Power Banks? Can I level 1 DEFEND a Power Miner, mine 200 power, and take 0 damage? Take 2 level 2 Commanders with SIGHT/DEFEND to a Power Bank and you'd be able to mine/defend it pretty well against incoming foes.

    Likewise, if I have a DEFEND against a REFLECT or a DEFENDed BESERKer, what happens. Does DEFEND still work the same way? 

     

    I like the forced genericness of the leveling system. It forces some interesting things.

  • Twill

    I'd also like to +1 @vrs's suggestion to roll out in bits.

    Maybe roll out the Operator first, see what happens and go from there? It's a good mix of mostly back office with some offensive abilities, and has a huge risk to imbalance the market quite quickly - in other words, a great test case for all of us to play with, both player side and dev side.

  • Avatar
    Artem from Screeps

    @ScottyC

    Can a power creep only use 1 power per tick?

    Most likely only one power per tick, but this may be reconsidered.

    I feel there should be a bigger benefit from “going down the tree” and leveling a power creep to maximum, instead of more smaller power creeps. To that effect, I think putting in a final tier of 1 rank abilities where 1 has to be chosen gives more investment into strategy and will bring about differing styles depending on the player.

    Since the effect is not stacked, you can only achieve last-tier structure boosts with the fully levelled operators. The same thing with Commander. Executors can indeed be a mix with both low level and high level creeps with the same effectiveness.

    However, special “ultimate” final tier abilities is also a legit idea and worth investigating.

    OperateStorage: If the effect wears out, are all of the excess items in the storage popped onto the ground or destroyed?

    Not decided yet.

    ExtendMineral: What happens if you use this when the mineral is on cooldown?

    It creates new minerals in a deposit.

    CorruptSource: What is the range on this?

    All Operator abilites except DISABLE_ ones are melee range.

    Shield: Can this rampart be made in hostile rooms owned by another player?

    Sure, it’s one of the main reasons to use it.

    Stealth: Grants stealth to target creep.

    While stealth is an awesome idea, it’s technically very difficult to implement.

    Brainwash: Converts target creep to be under your control.

    There will be a lot of problems with such a issue, e.g. what name should it be assigned? Also, seems overpowered.

    Defend: Is this modulated by boosted TOUGH?

    No, only raw damage is counted.

    Renew: By referencing spawn.renewCreep, I’m assuming this also strips boosts from the creep its renewing?

    Correct.

    Disable: Is a creep inside a rampart protected from disable/other abilities being used on it?

    No.

    Berserk: Can this be used on hostile creeps?

    Not decided yet. Most likely, only own creeps.

    MoveAura: Reduces fatigue generated by all creeps in the room with the commander by half.

    DefenseAura: Reduces damage taken by all friendly creeps in the room with the commander by 25%.

    WorkAura: Doubles all effects from WORK parts by creeps in the room with the commander (Upgrade, dismantle, harvest, repair, etc).

    TransferDamage: Transfer 20/40/60/80/100% of incoming damage to target friendly creep (melee range).

    UseShield: Redirect 20/40/60/80/100% of damage taken by creeps within 3 range of commander to target friendly creep

    Very interesting!

    Edited by Artem from Screeps
  • Avatar
    Artem from Screeps

    @Dissi

    I think that every XX levels the power needed to level up should follow a different formula, which limits the rate of growth, but doesn’t exponentially explode.

    Strictly speaking, the formula is not exponential (the parameter P is the base, not the exponent). It produces more smooth progression:

    Another idea to allow for more customization needs is allowing players to select the amount of hits/capacity a PC gets when he level’s up.

    This complicates things even further. But worth investigating.

  • Avatar
    Artem from Screeps

    @Atavus

    Skill selection
    I mirror Pund on this subject. The current proposal is too restrictive. It feels likely that there will be a lot of “dead levels” acting as a disincentive to going for high-level creeps. Better to structure skill selection around something like MOBA skill system. Restrict the selection of higher levels of a skill until the creep’s level reaches high enough. This still forces the player to diversify but does not restrict how he does this.

    The idea is not only to restrict some skills to a higher level, but also to achieve the desired level of complexity in any power creep AI. We don’t want your power creeps to have just 1 or 2 fully levelled abilities, but at least 4 or 5 with various levels, so that you’d need to wrap your head on how to effectively use it, and not just dedicate it to a single task.

    With the current system you can create almost specialized PCs with several select powers, but it will also have a few of even more powers that you’d need to use as well if you want to achieve 100% output of your creep.

    OPERATE_EXTENSION - useless except in super niche circumstances (low RCL)

    Consider this usage: you can maintain 20 extensions with 600 capacity instead of 60 extensions with 200 capacity, and save CPU on haulers.

    OPERATE_LAB - useless if it only increases output

    Again, it saves CPU and time as if they were less in number.

    DISABLE_SPAWN - neutral, make it work through ramparts

    Ramparts don’t protect from this power.

    MASS_REPAIR - useless (not targetted, worse value then a boosted builder)

    The cost is equal to regular builders, and saves CPU.

    REINFORCE - interesting, but easy to counter, useless

    What do you mean?

  • Avatar
    Artem from Screeps

    @ScottyC

    Why not have all Power Creep abilities cost ProcessedPower (withdrawn from your account via a PowerSpawn) instead of minerals?

    Processed power cannot be spent or lowered, it is like GCL. You obtain it once and can’t lose ever.

  • Avatar
    Artem from Screeps

    @BlackLotus

    DISABLE_TOWER - Cooldown?

    No cooldown, can be used every tick.

    IDENTIFY POWER - If only carry and hits, how can we access enemy power abilites?

    Not only carry and hits, the post it has regular carry and hits in the same way as regular creeps have, but doesn’t say anything about new PowerCreep prototype properties. There will be a way to know enemy powers as well.

    UTILITY POWER CREEPS - With the intended mechanics, there needs to be a class thats purely set on room utility, and must be able to jump from room to room. Otherwise the intended change will not be accessable by “lower” level users. Or there needs to be some very smart mechanic on the cooldown penalty of power creeps that get killed or are suicied intentially in order to spawn then in antoher room.

    All PC classes are useful in your base rooms. And yes, you have to come up with a smart logic of moving your support PCs between your rooms, it’s a part of this programming task.

    ARENA - i see very little use for power creeps on the intended arena feature….

    It is not in this design doc yet, there will be a separate Gladiator power creep class dedicated for arena usage.

  • Dissi

    I'd love to see an ability to temporarily reserve a room, or convert a source so it's usable for my creeps. Thiway you could harvest energy in "hostile" rooms to help out friendlies.

    I'd also love a power ability to raise the maximum GCL praising of a level 8 room.

  • Avatar
    Artem from Screeps

    @Helam

    When they die, do we respawn a brand new power creep from scratch, and then have to level it up again? Or is there a way to respawn the same creep with same configuration. I understand choosing the levels and abilities is manual, but is there at least a way to automate replacing them when they die?

    No no, you got it all wrong. I probably need to make it more clear in the post.

    Your power creeps exist in your account even when they are dead (i.e. don’t exist in the game world). You generate a power creep, name it, and then you can spawn this creep in any PowerSpawn using its name like this:

    Game.powerSpawns['PowerSpawn1'].createPowerCreep('MyCommander1');

    It will receive the set of powers that you assigned to the MyCommander1 creep in your power creeps management GUI. This respawning can be automated for sure.

    Will nukes kill them like other creeps, regardless of where they are in the room?

    Not decided yet.

    Perhaps the most important question of all, what will they look like?! Please tell me we can customize their appearance somehow! :P

    Well, I’m very curious to see their graphics too! Also, all powers will have unique icons in both management GUI and game side panel.

  • Avatar
    Artem from Screeps

    @Maxion

    especially if you have to re-pick the skills each time you respawn a creep.

    This is not the case, see the post above.

  • Avatar
    Artem from Screeps

    @tedivm

    • An API is important for people who want to make bots. Otherwise people with single player private servers will not be able to play against bots with power abilities.

    Valid point regarding private server bots, haven’t thought about that.

    Perhaps, we can expose an API to generate new power creeps and pick their powers if you have available levels in your account. But not rolling them back, this action will still be manual and with explicit warning of raising your cooldown penalty.

  • tedivm

    Will it be possible to "level up" a power creep that is already spawned and running around in the world?

  • Avatar
    Artem from Screeps

    @Twill

    Without a sink, Power is overpowered (no pun intended)

    A sink is not needed since you cannot “unprocess” power that is processed into your account once. See the PowerSpawn.processPower API.

    In other words, after you process power resource into your account’s power level, you cannot obtain power resource back lowering your level. It’s like energy and GCL.

    Getting Power will be hard for newbies

    While mining power banks is kind of complicated (and interesting) programming task, buying power on the market is as easy as building a Terminal and running one command in the console manually. It’s enough to get started with some small power creep.

    How will DEFEND work against Power Banks? Can I level 1 DEFEND a Power Miner, mine 200 power, and take 0 damage?

    Yes you can, it is what Commanders do.

    Likewise, if I have a DEFEND against a REFLECT or a DEFENDed BESERKer, what happens. Does DEFEND still work the same way?

    This is an interesting question, I don’t have an answer right now. Needs some balancing.

    Maybe roll out the Operator first, see what happens and go from there? It’s a good mix of mostly back office with some offensive abilities, and has a huge risk to imbalance the market quite quickly - in other words, a great test case for all of us to play with, both player side and dev side.

    This will happen in similar way on the PTR. The PTR development will be separated by iterations:

    1. Creating lvl 1 power creeps and basic management GUI.
    2. Assigning powers mechanic and full management GUI.
    3. Operator class.
    4. Executor class.
    5. Commander class.

    It is not decided yet on which step we’ll launch it to production - step 3 looks like an option.

  • Avatar
    Artem from Screeps

    @tedivm

    Will it be possible to “level up” a power creep that is already spawned and running around in the world?

    Not decided yet. We have three options here:

    1. Allow “hot upgrades”, your can level up in any room in the world.
    2. The PC has to come back to any PowerSpawn to get an upgrade.
    3. The PC should be suicided and respawned with new powers (i.e. assigning powers is blocked when the PC is spawned in the world).

    What do you think is the best option?

  • Dissi

    I personally vote for 2, bringing it back to your territory.

    Option 1 is way to overpowered/broken, and suiciding kinda does the same as #2.

    As a fourth option you could add a cooldown for when a power action becomes active. This way it won't be totally overpowered as #1. You could reduce said cooldown using powerspawners to get the levels/upgrades quicker

  • tedivm

    All three options are fine as long as they don't create a cooldown time for spawning or something.

Powered by Zendesk