PTR Changelog 2019-02-01: Power Creeps



  • @artch said in PTR Changelog 2019-02-01: Power Creeps:

    @semperrabbit

    Edit: another comparison: losing a GPL for deleting a power creep would be the equivalent of downgrading someone's GCL for respawning... Both are a horrible idea, and would upset players.

    I don't think this is a valid comparison. When you respawn, you lose everything in the world. You lose time spent to build your previous empire, and now need to rebuild it from scratch. Frequent respawning is discouraged so greatly already, that there is no need to add some additional penalty to it. On the other hand, if there was no delete cost (or it's too low), rebuilding Power Creeps would be painless. One could do that all the time. Think of it as if someone respawns constantly keeping all his world assets. Not fun.

    No. It's apples and oranges. It SHOULD be painless to rebuild a Power Creep. Just as it's painless (For a high level player) to rebuild a room. People delete rooms ALL THE TIME to build new ones... it doesn't decrement their GCL. Your example of a FULL RESPAWN is ... facetious at best.

    So, what PROBLEM does Power Creeps ACTUALLY SOLVE, if any? It's not a parallel development path... in fact it increases the cost of development several fold. The only logical use in that regard is to get your GCL to a sufficient level and THEN segue to PC development.

    Ok, fine. I can be down with that. But what problem does it ACTUALLY SOLVE, other than "Oh gosh. 6 months in and I've utterly demolished this game." Which does not happen in screeps. Ever.

    The problem it solves is the time it takes to level a room to level 6 to get the TERMINAL. That one building that solves all your problems.

    With Power Creeps, I can use OPERATE_SPAWN to blast out mules to send energy (In the form of recyclable creeps) to the room I want to get to level 6. So it can get a TERMINAL.

    Just set the level for a Storage at level 3, and the level for a Terminal at level 4. Done. Problem solved. Noobs will be all "Woo! Storage!" And ignore the Terminal. After all, it's useless to them until level 6. Mid level players will be working hard to develop their terminal code early, and advanced players will just do WHAT THEY'RE ALREADY DOING. Which is use complex systems to mule up their forward bases to level 6.


  • Dev Team

    @smokeman said in PTR Changelog 2019-02-01: Power Creeps:

    Just as it's painless (For a high level player) to rebuild a room.

    Rebuilding a room takes a lot of resources. It's not painless at all.

    So, what PROBLEM does Power Creeps ACTUALLY SOLVE, if any? It's not a parallel development path...

    Yes, it's a parallel development path, "wide" and "tall" empires, it was discussed on this forum many times.

    Also, it's a new programming challenge and gameplay style. When you program regular creeps, you code small uniform units with primitive behavior covering only one or a few tasks. Effective Power Creeps will need smart AI with complex behavior to leverage all their various skills.



  • @artch said in PTR Changelog 2019-02-01: Power Creeps:

    Power Creeps are now available in ptr beta branch on npm and Steam:

    I cant seem to spawn a power creep on my local steam server on Windows 10. The .spawn method returns "0" but no power creep is spawned. The only reason i can think of that it should return "0" and not spawn is if the Power Spawn is blocked by another Power Creep, but there are no blocking creeps. The power creep is created, just not spawned.


  • Dev Team

    @geir1983 Thanks for your report, we'll take a look


  • Dev Team

    @geir1983 Is it reproducible on 3.3.0-beta.4?



  • @artch the latest steam ptr build does not load at all for me, it gets stuck before it shows me the servers etc, just showing the screeps logo in loop



  • @artch after the update on steam now launches the game correctly again, but my problem of spawning a power creep persists. Its still returning "0" but no power creep is spawned.


  • Dev Team

    @geir1983 I cannot reproduce this issue. Try to delete the game and make a fresh reinstall.



  • I have an issue on this ptr build when trying to change the coordinates or a room position. When I change the x coordinate I have no issues but when I change the y strange things happen. I reproduced this problem on both private server and ptr with the following code: let pos = Game.rooms['W3N8'].getPositionAt(25,25); pos.y += 1; console.log(pos) -> [room W3N8 pos 27,0]



  • @artch Just a comment on the

    Rebuilding a room takes a lot of resources. It's not painless at all.

    I think one thing that makes it ok is that no matter what, rebuilding a room is still helping increase your GCL. The biggest resource sink by at least 2 orders of magnitude is the controller, and you know that is going towards permanent progress for you. So it's kinda a pain, but definitely beneficial and it feels good because even though you lost something you're also gaining.

    The problem with power is that it's just straight loss. Gone, poof, forever. Recovering it isn't increasing your GCL, no longterm benefits, it's just gone.

    TBH I think its an artificial mechanic that isn't needed. People's power creeps will naturally become specialized and semi-fixed, simply because they have to write code for them and design their rooms around them. I don't think you need a punishment for it.

    The only benefit I could see is preventing players from swapping to wartime heroes when they decide to attack. And the 24 hour delay + respawn time already does that to some extent.

    An idea if you want to limit things: Have limited power creep templates that you spawn from. You unlock more templates by processing power, like getting more room claims. You can trade out power creeps for others whose template you have defined. This gives you hero "classes" but adds flexibility to shift around resourcing. To get more templates you'll need to continue processing power, and maybe to reset templates you could spend power (if you still want to add a sink).

    👍


  • I personally feel the power creep is too large, I think it should be the same size or only slightly larger than a regular creep. I get that you want to differentiate it from regular creeps but the way it overlaps other objects looks funny.

    ☝


  • @artch I uninstalled the game, deleted the steam folder and the C:\Users\User\AppData\Local\Screeps folder, reinstalled and the problem is still there for me. I also checked the logfiles, but cant find any error messages in there.


  • Dev Team

    @davaned said in PTR Changelog 2019-02-01: Power Creeps:

    The only benefit I could see is preventing players from swapping to wartime heroes when they decide to attack.

    Exactly. It's not the only abuse scenario, but one of the most obvious ones.

    And the 24 hour delay + respawn time already does that to some extent.

    24 hours is nothing, it makes no difference, everybody will switch their builds constantly with such a weak restriction.

    An idea if you want to limit things:

    This idea seems to add more complexity than value to the system.


  • Culture

    Definitely still need power creep LOOK and FIND constants, or roll them under the CREEP constants.

    The disparity between operate_extensions and operate_spawn has me worried. I don't ever see a circumstance where calling operate_spawn at level 5 would be useful. The speed up is excellent, but the energy required stays the same and often that is already the primary constraint on how quickly creeps can spawn (3 healers can take quite a while to refill extensions...) Operate_extensions should alleviate this some, but the really low amount of energy moved + the really long cooldown (you can get 5 50 part creeps out of 3 spawns in the time it takes for 1 fill cooldown) makes the skill practically useless and the synergy between the two skills is non-existent.

    I have a couple of proposals to alleviate this issue:

    1. Change operate_spawn to also reduce energy cost by a similar percentage, but also reduce the percentages. 10/20/30/40/50% reduction in energy cost and build time would make this skill much more useful.
    2. Change operate_extensions to instead treat the cargo hold of the power creep as a very large extension. This could be a buff the creep applies to itself (or maybe another creep could be possible too?) where its carry is now accessible to the spawns. The cooldown/duration could be something like 200/100, so you can't always use this, but it's good for a quick boost (also high ops cost? 25-50?) This change would move this skill from practically useless due to its cooldown and extremely subpar performance, to one that would become very useful in the right situations. And better yet, those situations work synergistically with operate_spawn.

    Either of these changes would be good and make these skills much more useful. Right now I don't see myself ever using either, even in situations where spawning fast would be desired simply because it won't be possible to keep up with energy demands.



  • @artch 24 isn't negligible, what it's meant for is so that if you have no offensive/defense creeps you can't immediately make them when you're attacked. It's to make offense more powerful and defense less powerful when its purely reactive.

    I disagree that the goal should be to prevent players from being able to change their creeps. I think creeps will naturally gain identities because of the code it takes to run them.

    If anything, it is more likely is that all creeps will follow particular patterns if you don't allow changing them once they are made. If you make a bad creep its a high cost to change it, so experimentation is not incentivized.

    Why add this artificial cost? Just let it grow naturally, and later if it is an issue you can add a cost to rebuilding creeps.

    Also, if respeccing is a high permanent cost, I highly doubt players will build much offense. If we're generous and assume that screeps is 90% eco 10% offense (more like 99%), then that would mean that dedicated offensive creeps would need to be scaled to be 10x as powerful as pure eco creeps to an effective use of resources.


  • Dev Team

    @hernanduer

    Definitely still need power creep LOOK and FIND constants, or roll them under the CREEP constants.

    FIND_*_POWER_CREEPS should work on the PTR currently, have you checked?

    Operate_extensions should alleviate this some, but the really low amount of energy moved + the really long cooldown (you can get 5 50 part creeps out of 3 spawns in the time it takes for 1 fill cooldown) makes the skill practically useless and the synergy between the two skills is non-existent.

    OPERATE_EXTENSIONS just seems a bit underpowered. I think a better solution is to increase its effect rather than change the mechanics. What do you think is an appropriate value?

    One idea is to change its effect to a percentage of all extensions in the room: 20/40/60/80/100% of all extensions in the room are filled rather than some energy amount is sent.


  • Dev Team

    @davaned

    24 isn't negligible, what it's meant for is so that if you have no offensive/defense creeps you can't immediately make them when you're attacked. It's to make offense more powerful and defense less powerful when its purely reactive.

    Right, and this is a big problem. In an MMO like this, the attacker is always at an advantage due to the time he spent planning the attack, and if some mechanic gives him even more time-related advantages over the defender, it's a bad mechanic.

    I think creeps will naturally gain identities because of the code it takes to run them.

    I don't see how. If there is no delete cost, then the delete and rebuild process itself would become a part of the player code, when a PC is not treated as a constant "hero", but is deleted and recreated dynamically as a regular creep. The need to code them doesn't impose any restriction on that, it can be applied to very simple PCs like level 2 ops-generating Operators. It would be beneficial to use "spare" levels to temporarily create such operators, then delete them to spend levels somewhere else according to circumstances, then delete and recreate operators again, rinse and repeat. Such usage of Power Levels as a dynamic resource makes the entire leveling system pointless and weird, it doesn't provide any additional value and fun to gameplay, although it might seem to be more convenient and practical from the "effectiveness" viewpoint. But Power Creeps are introduced not to increase someone's effectiveness in game, but to make the game experience more varied.

    Just to give you some idea about the motivation behind Power Creeps design, these possibilities were considered when I designed Power Creeps concept initially:

    • No delete at all. You create a Power Creep, and it's with you forever until you respawn.

    • Don't allow to choose skills. You choose class only, and then when you level up your Power Creep, it receives some random skill like a growing child, and you have to learn how to use it effectively.

    These ideas are a bit extreme thus not implemented, but they are more aligned with my understanding of this game system than delete-free Power Creeps.


  • Dev Team

    @geir1983 What exact steps are trying to do? How does your room look? A screencast might be helpful.



  • @artch I logged in to the offical PTR server today with the steam client (and freaked out a bit because i though i was logging in to the normal mmo server, I did not expect the steam clietn to take me to the ptr server) and here my power creep spawned immediately. On my private server i tried pretty much everything to spawn it in, different rooms/power spawns, different power creeps, from code/console but i never got it working. Either its related to private servers or some combination on my system makes it now working?

    Btw, its possible to select higher levels than allowed when selecting powers for a power creep if you just spam click the button to increase a level. There is a check that gives an error message when saving, but should probably be looked at.


  • Dev Team

    @geir1983 I'm still not able to reproduce. Power Creeps spawn perfectly for me on my private Steam server just installed from scratch. Please record a screencast or something that helps to figure out a repro case.