Encouraging more combat at high GCL


  • Dev Team

    @gadjung said in Encouraging more combat at high GCL:

    deal significantly more damage to structures and less to creeps

    Do you mean Creep.dismantle()?

    👏


  • yes, but a ranged one that does not return energy and stronger, since dismantle goes for 50/tick and repair is 100/tick also dismantle cannot be used against creeps and this SIEGE could deal some small amount (not to outperform RANGED_ATTACK in any way) but to enable harassing creeps at longer range

    👏


  • @o4kapuk said in Encouraging more combat at high GCL:

    @gadjung said in Encouraging more combat at high GCL:

    deal significantly more damage to structures and less to creeps

    Do you mean Creep.dismantle()?

    It exists at range 1, yes. Range 1 can't really be used against good rampart defenses. Taking over 5000 incoming damage before even accounting for towers and ranged creeps doesn't really work so you'll constantly be having to pull back trying to dodge the ATTACK defenders. The amount of time you actually can deal damage is so small it'd be better to be a ranged creep. With RMA it's almost better to be a ranged creep against ramparts anyway, given your objective is to do more damage than repair creeps than repair, rather than make a hole in a specific place.

    Oh, and of course if by some miracle you do manage to nestle up against the walls a repair creep can almost match your damage output.

    And you're very vulvernable to skirmishers.

    🤔👏


  • @randall172 said in Encouraging more combat at high GCL:

    Supreme Commander FA

    I love the idea of a "SIEGE" part that is a RANGED_ATTACK that does 10x damage to walls / ramparts / towers but nothing to units. 👍

    👏


  • I've always thought that screeps was missing an "artillery" part that could fire from further away than the 3 tiles of RANGED_ATTACK. Maybe from anywhere in the room, and with a small blast radius for area of effect damage?

    To help balance this, I would think such a part should have some sort of cooldown where the creep can't move, or perhaps a "charging" period so you have to survive for x ticks in one spot to set up before firing.



  • @djD-REK If this existed why would you ever use dismantle/attack/rangedAttack on sieges? To kill creeps, but a good defense will give you no opportunities to kill defenders.

    @systemparadox Issue with this idea is that why wouldn't you do this? With no threat from ramparted creeps it would be the most ideal way to siege.

    Whenever I gave an idea to O4, he always mentioned that if it doesn't provide logical decision tress or becomes the best way to do something then they won't even consider it. Attacking a player's walls/ramparts you have three choices, WORK,ATTACK,RANGE_ATTACK and each have there pluses and minuses. Adding anything like a SIEGE part that is a ranged dismantle would be too good of a choice and would make the other three obsolete. But lets say they added it, and in order to make it balanced they needed to change the amount of damage the other three do. That would effect how HEAL, hits, and towers are calculated. Whenever I tried to talk to O4 about numbers, I am lead to believe the numbers are designed in a way to create coding challenges, and never have one best way.



  • All these long range seige type weapons completely fail if somebody builds edge walls. Only way to change that is to make them multi-room, which is probably a real pain in the ass.

    I personally think it was a mistake to allow ramparts and walls so close to the exit, I think I'd have bumped them back at least one tile. The "rooms" concept is one of Screeps' weaknesses in this regard.



  • @likeafox

    no it would not, since You'd need a squad to protect the SIEGE creep

    Other ways to make sure that other / new squad compositions would be viable:

    • limiting creep hits per SIEGE body part making it glass cannon
    • creep using SIEGE is dealing creep-only AOE dmg to all creeps around and itself
    • making creep fatigue after attacking with SIEGE body part (cannot move/perform any action for X ticks, but can be pulled for example)
    • making SIEGE creep not being able to have any other body part except MOVE (so we do not have siege-heal-blinkies)

    and i agree with what @Tigga said regarding edge walls/ramparts being possible to construct so close to edge



  • I think it's quite possible to make inter-room intents easy (code) and cheap (server cpu).

    After a players IVM is complete but while the CPU clock is still ticking verify all of the static data about the intents. Then it's a quick check to ensure a Ranged attack is within 3 spaces even across room boundaries. The actual damage can't be resolved until the per-room processor stage.

    I think it would create some interesting situations if Towers had a range of 50 tiles even across room boundaries. (or for backwards compatibility up to 50 tiles but not into rooms owned or reserved by another player).



  • The difficulty of walls near the edge is 2 fold. The first is inter-room intents, which is doable.

    The second is the exit tile blinks. This problem is harder to solve. There are a few pretty good ways to do it but there is ultimately a trade-off. It just isn't possible for the process stage to handle a creep conga line that crosses lots of rooms. That means certain creep movement patterns that work in the middle of a room just won't work at the edges.

    Even the best movement revamps come with the terrible burden of breaking backwards compatibility. Currently It's just not possible to move onto an exit tile in your room. If you try to, the next tick you're magically on the exit tile of the neighboring room. Changing this edge behavior might break a lot of custom movement code.

    A change like this might be a cool idea for a new shard (or just apply it shard1, we'll adapt).



  • I don't think the problem with inter-room stuff is technical. It against screeps philosophy IMO. You'd have to introduce the concept of range between rooms - being "nuker-like" with range across the whole room would just mean death for extensions. I think it's too drastic of a change, especially compared to simpler changes that might be sufficient, like nerfing repair and increasing upkeep.



  • @gadjung You have some interesting ideas - An idea would be making it be repaired instead of healed.

    Yes, you can build a squad around it, but it still doesn't get away from the idea that you would only use SIEGE parts for a siege(duh). You wouldn't be using attack/ranged/demolish as you are now.



  • What if a creep could drop shield/rampart in enemy rooms. Taking a high-level room is a multi-day affair. Much like in real life, when you besiege a castle, you build ramparts and your own defenses outside the enemy city. Allowing the attack to build like a "mini-base" would give the attacker some more staying power. It could be used to reduce distance problems too. some rough ideas:

    • build walls/ramparts in enemy rooms
    • maybe small towers (artillery)
    • containers
    • maybe even a small spawner
    • an inter room link

    All the above would need to be maintained. It would require a good bit of code, which brings the challenge. This would make it much like a real world siege. Maybe you can even build ramparts in any room. This would allow you to starve enemy rooms of their energy pipelines. Again, like a real-life siege, you block off the castle's supplies, to starve them out.



  • Many ideas that revolve around the attacker building structures or having a 100% presence in the room that's being attacked just fail to people building walls/ramparts as close as possible to the edge of the room. If we want long term seige weapons they have to be from adjacent rooms.

    The rooms concept of screeps lets it down in this regard. A continuous landscape with maximum ranges rather than "in-room" would be more satisfying from this perspective, though obviously a lot more complex in other regards.

    👍


  • ah, yes true. well maybe if you could build then in reserved rooms, then that could provide a tactical approach; allowing a player to set up a "base of operation" just next to the attacker's room. It provides a place to pipe in resources from your main rooms. This way, you can still cut the enemy off from their external hauler mines. It also provides defender the fun of counter attacks. Give the defender a motive other than turtle



  • i was giving some thought again to this topic, and i come with some not code-breaking ideas:

    • limit ramparts to 1M at RCL8
    • give PowerCreep Operator PWR_OPERATE_RAMPART (can be instead of OPERATE_TOWER)
      • Range 3 usable on controller
      • Increase Rampart max Hits in Room to 5M/15M/30M/45M/60M level 1/5/10/15/20
      • duration 800 / 1600 / 3200 / 4800 / 6400, cooldown 900/1800/3600/5400/7200, 100/500/1000/1500/2000 OPS cost
      • ramparts with hits above hitsMax decay 1% of hits per tick

    Lower max ramparts would somewhat prevent turtling behind multiple rows of 100M ramparts, nukes a more viable use case now, and defending against them requires a little more than just having 15M rampart, or spawning repairer or two to build them up.

    With this change my expectation would be that there would be more combat :

    • more breaches through ramparts (due their lower hits)
    • more use of Power Creeps due to their new defense capability
    • more use of nukes since no-one would have the default 5M/15M protection on every room 24/7/365