PvP Game discussion



  • Sorry for this very long post, I hope some of you will completely read it but here’s a summary:

    TL:DR; Downgrade mechanism doesn’t work for PvP, domination mode is proposed which can be triggered by attacker after he initially takes down the room.

     

    Introduction

    Last week, Heggico, Genovese and me (TNG Alliance) attacked SteeleR (Thunderkittens) and managed to take down 9 of his RCL8 rooms. We enjoyed the PVP aspect of this game while being the underdog very much, however it showed us some imbalances (at least in our eyes) that should be discussed.

    Please note that the income of Thunderkittens is about 5 times higher than ours. We’re not saying we should have been able to win a war against them or that the changes we propose would have had effect on the outcome of it. Although we’re pretty sure it would have made the battle more interesting for both parties.

     

    Problem

    Imagine your offensive scripts in combination with manual interactions (since you’re the attacking party) are stronger than the enemy defensive code and break down the rampart/walls brick by brick. You’re seeing the hits decreasing to a very low number and all of a sudden your creeps stop attacking. OMG do I have a critical error in my code right now…? Nope, it’s the safe mode that was triggered. Don’t get me wrong, I’m totally in favor of this mechanism and think it’s a great feature within the game.

    Of course you’ve anticipated on this, planned your attack in advance and started attacking multiple rooms at the same time. The other rooms eventually fall to your attack code and you’ve breached the enemy defensive zone. A great euphoric feeling enters your body since the attack that you’ve planned for so long finally takes shape and you start crushing the enemy structures within the room.

    At this point you’ve put a lot of effort into taking down the room. A lot of players will emphasize that attacking is easy since you’re online, while the defensive party tends to be offline during the attack. I strongly disagree with this opinion. If both the attacking and defending party would have decent code, the defender is strongly in favor because his creeps will be in ramparts. He only needs to boost his ATTACK parts while the attacker needs to boost ATTACK/DISMANTLE, TOUGH and MOVE. Furthermore the defender has the option to enter safe mode which already saves 1 room for around 20 hours.

    Even if you disagree with defending while AFK being easier than attacking while being online, please proceed to read the problem statement.

    The room has been cleared and the controller starts downgrading. To make sure the enemy room will downgrade with even one level you have to prevent your opponent from putting a single unit of energy in the controller for 150.000 ticks, which is around 7 days in real life with current tick speed. What are the measures we have for this? We can block the controller by performing the attackController with a creep that has claim (thus limiting the range to 10 rooms distance). This means we have to structurally use creeps to attack the controller, and as soon as the defensive party comes in with his attacking forces to upgrade room, you have 1.000 ticks to get this room back into your possession or else he can upgrade OR safemode the room. This process seems very imbalanced. The defending party has to get the room back under his control ONCE in 7 days, or prevent your creep with claim parts to get to the room ONCE in 7 days (to start safemode).

    In the current state this mechanism is never going to work and therefore makes the PvP aspect so much less interesting. The only way to really capture rooms from your enemy is by braking morale. If you keep on taking down the room for long enough, or completely wipe a player and his alliance & friends in the surroundings, you might get him to quit the game or respawn somewhere else.

    Please consider this from an underdog perspective. You can never capture rooms from your bigger opponent since you won’t be able to break his morale, he has much more resources and therefore will be able to continue this boring resources trade much longer.

     

    Proposal

    We think that after you’ve successfully attacked a room and taken it down, there should follow an interesting battle which is only slightly in favor of the defender. The defender already has spoiled his “big” benefit by letting the room go down in the first place. We think that the attacker should be able to trigger a “domination” mode within the room, in which both parties battle for it in a somewhat balanced way.

    Let’s say the there’s an additional counter (call it “dominated”), and as soon as this counter reaches a specified threshold based on the RCL, the room gets auto unclaimed. The attacker would have to use claim parts to increase this counter, while the defender would use claim parts to lower it (can’t get lower than 0). The defender would still have the benefit of being able to construct structures, but he would not be able to use safe mode after the domination mode has started. Domination mode should end automatically after a specified time, and probably have a timeout after this period.

     

    Final remarks

    I’m very sure a lot of players will not agree with our vision, to counteract some of the arguments that we will get I’ve already listed a few:

    Q: This will strongly influence new/small players
    A: Nope, new and small players tend to respawn after their rooms are taken out (morale issue). It will only impact wars between bigger players/alliances.

    Q: The defender should have time to adjust his code and that wouldn’t be fair with the “domination mode” since the attacker is probably online.
    A: We agree! There should be a delay after which domination starts to make sure the defender is aware of the situation and is able to respond. I personally suggest a 3 day period (to survive offline weekends), and then have domination mode ongoing for 2 days.

    EDIT

    In stead of the "domination" mode there's also a much easier implementation: Have the attackController method increase the upgradeBlocked period and put in a "defendController" method to decrease the upgradeBlocked period. The max upgradeBlocked period should be high (around 20k ticks). This would enforce a battle between defender and attacker that is slightly in favor of the defender. This idea got quite some support within the Slack channel.

    Sorry, couldn’t find a creep tomato 😞



  • To make it fair it could be changed that once you go into "domination" you cannot interact (freeze code? you committed to an attack, now face the consequences) as well.

    That attacker and defender need to rely solely on their code.

    A delay would solve no online/offline problem.

     

     

    Also, I am in the role of an underdog and not gotten so far yet. But can't you already cancel a safe mode by nuking the room? (From the docs it reads as a nuke cancels the safe mode?)

     



  • My statement was as follows: 

    Clearing/destroying a room is doable, but takes effort. Taking over a single room is impossible. 

    Since the defender only has to drop 1 energy into the controller in those 7 days, he only needs to send a large army capable of destroying your creeps which are keeping the room empty. Doing that once, waiting for those 1000 ticks to run out (which is in the lifetime of that army!) and then dropping 1 energy in the controller to reset the timer to about 7 days. Eventually the attacker will run out of resources (certainly if he's the underdog) so he'll have to stop attacking.

     

    So, the only real way to take over a room is to destroy the player completely, which is very hard to do. Even more so if they are in an alliance. I too "lost" rooms, but in fact, I didn't lose any. I still have those rooms, they just don't have anything build in them. I can just keep dropping a little energy in them to prevent them from downgrading. Then I can just rebuild a terminal en start sending creeps to build the defences in the room and everything else. 

    This is what happend with one of the rooms I destroyed from steeler. I did send a few guards in that room, but he could just send stronger ones. We didn't send a claimcreep to block the controller, since its pointless. If the defender enters the room with a large force, you have 1000 ticks to spawn a counter, walk there, destroy the enemy creeps en start attacking the controller again. It is not sustainable to keep a large enough force in the room to block a player from retaking it. 


    The proposed solution of a domination means that both attacking and defending gets more gameplay than just throwing resources at each other. Lets say the threshold is 10000 or even 100000, it still takes a long time for a player to lose a room, but the defender doesn't immediately get 150000 ticks of additional time to reclaim it. The defender also has to act in order to not lose the room and not wait till there is only a few 1000 ticks remaining before sending an army and dropping 1 energy into the controller to gain another week.



  • @Sanados: Thanks for your input. A nuke does cancel the safemode but because of the ticksToLand period this doesn't really effect this mechanic, unless you can throw nukes preventively every 1k ticks (which even bonzai/dissi won't be able to do).


  • Culture

    I have faced this as well. It's either a complete wipe of a player, or nothing at all.

     

    In total, you have to defend for 400,5K ticks for a single creep to successfully "claim" a room from someone else. This extreme long duration, which is counter-able by a single creep, seems to be the main issue. The amount of resources an attacker has to spend to maintain control is disproportionate to the amount a defender has to spent:

    • Defender: 1 creep in 400K creeps with 1 WORK and 1 energy
    • Attacker: multiple creeps defending said controller from any creep reaching it

     

    A quick short-term "fix" is preventing upgrading while an enemy non-npc creep is inside the room, but I think taking over rooms as a whole has to be reconsidered. I do not have any idea's yet on how to tackle the issue. When I get one I'll drop it here.


  • Dev Team

    If the root controller proposal takes place, then we can probably consider removing this RCL progress saving mechanic, it won't be needed anymore, controller downgrading will be permanent and non-undoable. Does it solve the issue for you?


  • Dev Team

    Attacker: multiple creeps defending said controller from any creep reaching it

    Not quite true. You need only one creep to attackController once per 1000 ticks, and only if it’s killed, then you need to spawn a military squad.



  • "Not quite true. You need only one creep to attackController once per 1000 ticks, and only if it’s killed, then you need to spawn a military squad."


    You then have 1000 ticks to spawn creeps, move there, kill the enemy and use the attackController again. While the defender has 150000 ticks to deposit a single energy. And when the defender gets there with just 100 ticks remaining and succeeds in pushing 1 energy back in the controller, he just gained 149900 ticks.
    There just isn't enough time to defend against a player retaking a room from that alone, excluding that when it downgrades it retains 90% of the progress so even if the attacker can get it down a level, the defender only has to spend 10% to upgrade it back from lvl 7 to lvl 8.

    If my creep that attacks the controller dies, and the other player had send 8 boosted creeps to defend the room to retake it, then I have no chance of stopping him from resetting the progress on the controller in time. I can kill those creeps eventually, but I have to start over from scratch and block it for 7 days again. And if he fails he can probably try again tomorrow, since he has 7 days to do so. 



  • While I agree with your general theme that combat favors the defender a little too much, you and your team ignored some pretty important mechanics that would have made a big difference. First of all, the attackController mechanic which you mentioned, several of your rooms were in close range to steelers and you could have used this to destroy his safe mode charges.

    Also, you can nuke to end a safe mode. After you do this, there is a 200 tick period in which the defender cannot safe mode again. You might get a demonstration of how one might use these mechanics together to their benefit. Planning for the strong likelihood of using safe mode would have meant building up some nukes and using them strategically.

    My biggest complaint about safe mode is that it doesn't seem to fit well with any of the other game mechanics. It is just a deus ex machina that doesn't really add to the enjoyment of the game. It also doesn't fulfill its original purpose, which was to stop a player from getting steamrolled a short time period due to defense bugs. If the attacking player has the resources and the code to support it, they can completely negate any benefit from safe mode. 



  • @Artem:

    I like the root controller proposal but I think those are separate issues. Resetting the downgrade timer is just too easy right now and that is only partially fixed by removing the RCL saving, although it would already be a step in the good direction.

    "You need only one creep to attackController once per 1000 ticks, and only if it’s killed, then you need to spawn a military squad." 

    That's completely true, however the the "defending" party just has to make sure that your new creep doesn't reach the controller within 1k ticks. This is insanely imbalanced as you will probably understand yourself as well.



  • If we can't get rid of safe modes (which I think would be the simpler and better solution), maybe something like your idea would be a nice thing to offset it. Completely wiping a player with decent code and the ability to maintain it during the attack is near impossible, partly due to the long downgrade timers and partly due to safe modes. Perhaps this is the balance that the devs are hoping to achieve. People who are looking for a PvP experience in which you can completely decapitate another strong opponent are probably going to be less satisfied with screeps.


  • Culture

    @bonzaiferroni

     - Also, you can nuke to end a safe mode

    A nuke, when launched, takes 50K ticks to land, a safemode lasts for 20k ticks. It's not a viable counter for safemodes. You only get 200 ticks to "attack" the controller, this is way too short.

     


  • Dev Team

    This is insanely imbalanced as you will probably understand yourself as well.

    It’s not “imbalanced”, it’s balanced in defenders favor. Taking over rooms is not supposed to be easy at all. It has a huge grief potential which can scare away some players who are not able to monitor their Screeps every day.



  • I actually really like both of Qzar suggestion of how this issue can be resolved, but strongly disagree with his thesis that a defender is at a good position no matter if online or offline - you attack a room when you see how it can be taken down - ranged units, mass units, consecutive attacks and such so in a case of a well-prepared attack a defender has no chance no matter if he only needs to boost ATTACK or not.

    In the case of our war i was away for about 3 days with very limited net access - so the result - a well structured attack based on the weaknesses of my defence lead to a loss of many rooms without the option of me countering it, still - a week later i don't have time to do so.

    Due to the fact that everything in this game is done at a really, really slow pace and you need to automate everything so it plays by itself there is rarely the case where u have prepared code for all possible scenarios or the time do it in a couple of days when being attacked and have to defend the rest of your rooms - my experience there shows that each next attack on you exploits something you failed to oversee, which is totally normal and the best way to find it and patch it

    The proposed ideas are good, but not enough in favor of both parties, so i would suggest something in addition:
    - if we're going with the domination counter - trigger an automatic safe mode for the duration of that domination to the nearest room of the defender so he can actually engage in that domination fight


  • Culture

    > players who are not able to monitor their Screeps every day

    But this is not the problem, the problem is more the ease they get for "resetting" the timer. I'm fine with defending a room from being taken over for 14 days. I'm not OK with 13 days of invested time being reset in 1 tick.


  • Dev Team

    People who are looking for a PvP experience in which you can completely decapitate another strong opponent are probably going to be less satisfied with screeps.

    Yes, Screeps is not intended to be a truly PvP-based game. It is the Arena feature that we have in mind when we think about all the PvP fun in the first place.


  • Dev Team

    But this is not the problem, the problem is more the ease they get for “resetting” the timer. I’m fine with defending a room from being taken over for 14 days. I’m not OK with 13 days of invested time being reset in 1 tick.

    This can be solved by removing downgrade progress savings, right?



  • @dissi

    A nuke, when launched, takes 50K ticks to land, a safemode lasts for 20k ticks. It's not a viable counter for safemodes. You only get 200 ticks to "attack" the controller, this is way too short.

    I was under the impression that the cancellation happens upon launch instead of upon landing, is it the other way around?


  • Culture

    @artem, yes but only partially.

    Problem is that you still got about ~6 days of downgrading to do on a RCL 8 room.

    Obviously that can be done quicker with CLAIM creeps, but due to their expensive nature you can only create 1 for 500 ticks at a cost of 10500 energy (15 CLAIM 15 MOVE). Attacking a controller is currently a bit too expensive.

    I think that another part should be able to block controller upgrading ( WORK ) and should cost energy. if you can "build up" blocked time like reserving a controller while it costs energy you have an extra "cheaper" way of blocking the resetting of the downgrade timer more efficiently.

    Personally I think there should be a clear difference between blocking upgrades and downgrading controllers.



  • @dissi

    But this is not the problem, the problem is more the ease they get for "resetting" the timer. I'm fine with defending a room from being taken over for 14 days. I'm not OK with 13 days of invested time being reset in 1 tick.

    I strongly agree with this, it took a lot of effort to make that progress on the downgrade, doesn't seem fair to be able to wipe it out so easily.