PTR Changelog 2016-09-09


  • Dev Team

    Come on Artem, you know as well as I do that an online attacker would be lucky to get 100 ticks straight attacking a wall if the defender is online and knows how to defend.

    I mentioned “if defence is broken”. When your towers are not firing and your defend creeps are not being spawned because of a small stupid typo in your defence logic.



  • Were you secretly playing the game and this happened to you?

     

    PS: where can I find the markdown rules?



  • Atavus: this happens all the time, and shouldn't shock anyone as you write defense code without ability to properly test it, so when it clashes with reality it fails one way or another. And unlike attacker, who is online and can adjust it as he goes, you are offline and very soon dead.



  • I was not arguing for or against it. Just found it funny to imagine Artem playing the game incognito and then dissi accidentally crushing him overnight.

     



  • Although I should mention a few things.

    First and foremost, modular code which fails gracefully is one of the cornerstones of proper software development and certainly one of the good lessons people can take from this game. Structuring your process so that unexpected code failures are isolated at the creep, room, spawn etc level is quintessential to survival in this game.

    I have to agree with hernuander that the way the game is now, large empires cannot be taken down overnight anyways. They might lose a room or two in the initial strike, but that's the benefit of first strike, a fundamental aspect of warfare. It is indeed already quite difficult to envision how you might be able to overcome some of the more effective defense tactics. It is likely that future warfare among the big players will end up as a very long term grind where resource efficiency will be more relevant then actual tactical effectiveness. Where the key will simply be to drain all possible resources from the opponent. Although the introduction of the market allows players to bypass this restriction.

    On the other hand, I have to agree with Artem, that this mechanism would allow screeps players to get a more comfortable sleep. If this mechanism must be implemented, I would strongly suggest:

    1. Make it empire wide rather then room based
    2. Extend the refresh timer to 50k

    I can understand the desire to make the game more accessible and fully support any change in that direction. The game is already super niche and having a larger community would be welcome. As the community grows the challenge for the established players will certainly increase.

    Suggesting that players which do not have the following:

    1. Modular error handling
    2. Effective automatic defense system
    3. Daily access and activity within the system

    Should just suck it up, is not ok. Yes, people should just restart when they get wiped. People should do a lot of things, but they don't. What matters is the perception people have of the game. If you want this game to develop, a strong community behind it is quintessential. Constructing necessary mechanisms which protect and engage players is important. Just not sure if this method really has an impact.



  • Atavus: if a player does not have daily access to the game, the safe mode system would not be helpful for them. That reason is partly why I think this design is a bit against the theme of the game. Without safe mode any player in a war can take shot at the other at their convenient time. With safe mode, it will let the one with more consistent daily online time some advantages (imagine the changes in a war between someone that can go only twice a week  and someone that can go online daily, with and without safe mode). I do not know if said advantage is significant or not.

     



  • if the sole role of this protection is to defend you against your own tiny and stupid defence bugs and typos - add some limit to it - 10, 100, 1000 protections per player per respawn.. but a limit so this is not abused in all other cases



  • Not only typos and tiny bugs, but even if your entire siege mode didn't kick in - that will work as failsafe against it (or just normal bugs in defense logic). A hard limit on top of existing one, which resets on respawn, is actually not a bad idea as a limiter, although it will reward not-warring players more than the aggressive one, discouraging attacks even further.



  • as it should - the more active defender you are, the more proofed your defence code is and you don't need such an almighty protection


  • Culture

    Don't forget if your code errors out your code can't activate safemode



  • @dissi not neceserily. if the bug is not a syntax error, but for example calling a non object and its AFTER reinforce code checking, it will get executed. For example I can shove 

    Game.getObjectById('abc').memory;

    At the end of my main() and my empire will work fine, despite erorrs being thrown. So putting that as first thing in main will safeguard against non-syntax errors.



  • Ugh, I really feel this change will be a big disadvantage for 'intermediate' players. We, the group at GCL 4 thru 8 that don't have reliable access to Ghodium yet (Which would be the bigger part of the active, subscribing, customer base I assume).

    - Our sectors will see a bigger influx of new and respawning players that will be even more tedious and slow to clean out than they currently are. I don't see why a respawning player would spawn right next to a top 20 player, so it would be 'us' that gets the respawners, meaning less space to expand and even more waiting than we experience now.

    - I can see lots of double boxing accounts popping up, just to grief someone. Base code to get a room up to RCL 4 is easy, which would entail 4 safe mode stints if you aren't able to time the window. Also, the 'free' 10 CPU limit will be plenty to achieve that.

    - In the end 'we' will end up taking even longer to secure reliable Ghodium supplies, while the current top players will happily `generateSafeMode` away and Ghodium (and perhaps ingredients) prices on the Market will rise above the ridiculous, making the game pay-to-win to stay afloat with tokens.

    The game is already so incredibly slow, and I feel this change will only add to that feeling in multiple ways. I can see how that would be good for subscriptions with everything taking even longer, but perhaps there will be an even bigger group of players that can't be bothered anymore and move on to pick up their lives again.

    I guess we'll have to find out how it turns out in the end, but at this moment I'm not too thrilled with the prospect of this change.



  • But you can buy the ghodium, or work with your neighbours and get it just fine, without their help, especially since you don't need much of it for either small back-up supply of boosts or reinforcing room (and you can get credits from selling your own stuff to players/npcs). It really isn't impossible or effect os some conspiracy theory that you don't have it up and running. But that is not to diminish the problem of large empire players, and lack of incentify for them to kill one another, just that it should be handled in separate topic as it's a much larger issue that need a large and separate solution. And blackballing something that is actually good for smaller players because it will also help the big ones doesn't seem like a good precedent to set.

    And this is helping new players, especially boost-less players. Now if a boost-filled player will decide to take you out, he can do so quickly and swiftly, and unless you have monster walls it will be so swiftly that even sitting in front of PC won't save you as you won't code defences fast enough. With this you will have hours to get to pc and code in basic creep defence system which throws a massive wrench even in attack of boosted creeps, giving you a fair chance to repel it and continue fighting, rather than waking up from 7 rooms to a respawn button.


  • Dev Team

    Considering all the feedback here, I think we’ll go with this important change to safe mode rules:

    Only one room can be in safe mode at the same time. CallingactivateSafeMode while it’s active in another room will returnERR_BUSY.

    This still allows all players to protect themselves from fatal bugs, but doesn’t affect the balance for high level players so much however.

    The PTR has the nice feature where you can summon invaders at will which is a great start. I think it would help if a feature like this was available in the regular screeps world.

    This makes sense actually. We’ll include this feature in the same patch.



  • Artem just make sure that those spawned invaders will not drop minerals/energy on death, that could easily turn into new improved mining ;).


  • Culture

    > Artem just make sure that those spawned invaders will not drop minerals/energy on death, that could easily turn into new improved mining ;

    You're ruining my evil plan! 

     

    In all seriousness; If you spawned em manually you should be able to kill them as well, by hand. If you accidentally broke your code during these invaders it would be really bad to have em roaming for 1500 ticks or longer.


  • Culture

    I just realized something with the invaders

    If you see non-NPC-attackers coming for your rooms, you could, theoretically, spawn boosted invaders at your walls to help you defense.

    I think it's a bad idea to add invaders to production as well, as it could be exploited heavily.



  • I was thinking of the same thing. You may be able to abuse this functionality to spawn large quantities of invaders when under attack.

     

    I would suggest postponing the integration of invaders into the production system. Too many things which could go wrong.


  • Dev Team

    This can be simply avoided by setting an inner flag that these invaders are user-summoned. They will not drop anything, they can be suicided by their summoner user, and if any other creeps appear in the room, they suicide immediately.



  • Cool.

    Sounds like a plan.