I think it just went again. I have creeps with impossible TTLs and corrupt memory. Eg. this guy appeared with 1600 TTL: https://screeps.com/a/#!/room/shard2/W7S30
Posts made by Tigga
RE: Encouraging more combat at high GCL
Others would like to get to combat at some point, but are still struggling with the basics.
I don't believe that any of the changes I've suggested would effect combat at the "basic" level. They're mostly targeted at the "high ramparts, high GCL, strong turtle-based defense" players. I don't think they'd have a whole lot of impact for anybody without already advanced defense code.
EDIT: Sent too quick - I don't much care for the idea of a new shard as I think we've got enough space as it is. Maybe if the playerbase grows a lot it could be shard 4. Private servers act as a pretty good combat arena right now so it's not too bad. Really I just think it's a bit too easy to make an inpenitrable room on the main server right now, and I feel the main server shouldn't be as stale as it is, especially compared to days of old.
RE: When shards are known to be broken...
So turns out the specific issue I have right now is parallel global states. I have more than one global state (not sure how many) and the game is alternating which it gives me, breaking any sort of between-tick heap usage. Had it 3.5 hours now. Point remains though.
RE: Encouraging more combat at high GCL
What I think should be done: First, the aforementioned changes to ramparts and walls. Reduce max GCL to no more than 15. 10 would be better.
For me, rule one of proposing balance changes is "don't completely destroy what already exists". People have GCL 30+ with 300 CPU and 30+ rooms. Reducing that would break the entire game and piss off a lot of people. You've got to distinguish between "things that would make the game better from a fresh start" and "things that would make the game better today".
When shards are known to be broken...
... can they be seriously slowed or paused? Shard 2 has been ticking along for an hour now in a broken state. Global is resetting every tick and creeps are spawning either without memory or with corrupt memory. Still going ahead at 3.2 seconds/tick, collapsing people's colonies.
Furhermore, some sort of fault detection and "safe mode" for the server might be a good idea. These memory corruptions and constant global resets are clear to the user and I'm sure they must be leaving some sort of trace in the server log. Dropping the tick rate in these circumstances would seem to be fairly easy to automatically do until an admin can come along and fix it.
I'm sure the new servers will get more stable with time, but we're currently in the middle of the 5th or 6th major issue since the server move. It's getting rather frustrating.
EDIT: To be clear, in case you aren't aware, shard 2 is resetting global every tick (which is costing me 80 CPU/tick before we take into account wiped caches), creeps are spawning with no memory (which some people don't have any recovery code for), and creeps are spawning with corrupt memory (which is just annoying). Been like this since ~6:20 UTC.
Encouraging more combat at high GCL
Right now, the world is pretty stale. High GCL combat is hard for the attacker as a lot of the strategies that work at lower GCL (eg. resource denial) just stop working when the other guy has 100 million credits to buy stuff with and 10 rooms out of range to harvest energy freely from. Also, people get better defensive code and, in general, you have to do a lot less to defend then you do to attack. The old military maxim is that an attacker needs three times the investmnet of the defender to succeed. In Screeps it is much greater than that, in my opinion.
I think this comes from four main places:
The repair action. 100 hit points per energy (unboosted) is a little bit too powerful. Put a bit of effort in and an RCL 8 room can repair ~60k hits/tick. You don't actually have to kill the guys attacking you, you just have to keep them from being able to sit next to the ramparts. With T3 boosted attack creep + repair creeps many rooms are simply impossible to kill. The only three ways right now are disrupt terminal, exposed controllers, or a massive attack hitting 15+ ramparts with ranged attacks at once (the idea being to put the defender on spawn time limits with how many repair creeps he can spam), along with associated healing. If the room doesn't have power enabled, or doesn't have an exposed controller, or doesn't have 15+ rampart surface area you're not killing it. Even with lots of ramparts or power enabled it's far from certain: keeping 100% uptime in attacks is hard. Especially if the ramparts are massive, bringing me to my next point:
Wall height. Because the repair action is quite cost effective people can affort rather big ramparts. As above, to out-damage repair creeps needs expensive attacks. These attacks rely on distributed damage across the front. You might only do 30k damage/tick. Sounds like a lot, but split over 20 double thickness 50m+ ramparts you're not getting very far. This is more of an economics thing: the cost in boosts to crack this thing far outweighs the cost in energy to build it.
Safe mode. Once you have these 100m+ ramparts and a reasonable defense code you can use safe mode freely. That means that unless you have 3+ rooms under these massive assaults, each room can spend 40% of it's time in safe mode repairing and stuffing the storage with resources to last the next 30k ticks. Regenerating safe mode is very cheap, and the risk is low.
TTK and bursts. When attacking a room you're often living in a case where one bad move kills you. T3 tough is fairly pointless due to the uncertainty in pre-healing. Sorties combined with tower damage can be timed by the defender to burst down the attacker very quickly. The attacker has to do everything right every tick. The defender just has to do something right occasionally.
Now I think power has gone a way toward helping. Maybe with factories we'll see more rooms with power enabled. Power lets you freeze the spawns, take out the towers, lock out the terminal. Those are all big deals. The question is whether factories are enough incentive to enable power in many rooms. My first impresison is "no", but we'll see.
I have some other proposals for fixes though. Lets have a go:
- Repair is too good. Drop it to 50 hits/energy.
- High defenses are too prevalent. Multiply rampart decay by
Math.ceil(hits / 10e6). In other words, up to 10m the ramparts cost the same as now, but up to 20m they'd cost double. This would also bring walls back. Too many people just spam ramparts.
- Safe mode is too good. Just remove the
generateSafeModeaction. If you've used 7 safe modes on a room then you've had enough time to save it.
- Burst damage. A couple of ideas here. First is to simply double hits/part. 200 hits/part would make creeps a lot less fragile and make the co-ordinated heal and prehealing less knife-edged. It'd mean we'd need less tough for it to actually be useful (it's only useful today if you pre-heal right). Second idea is to give towers a "miss" chance of 50%. The worst-case damage would stay the same, but you'd be really unlucky if they did that two ticks in a row. Maybe increase
800to compensate. This would reduce the defender advantage somewhat in pure DPT, but also make the attack less prone to one-bad-preheal.
RE: Pull across room boundaries
Yeah, that's an option, but I feel shouldn't be required. On further investigation my previous post was wrong and you can't work around the issue. Going back to where the "wagon" previously was is no worse than any other solution but IMO the game should allow you to sit in place and pull.
RE: Pull across room boundaries
@Snowgoose on slack told me how to avoid the "Tick 3" intent issue. In the OP I complained because the game doesn't let you pull unless you move somewhere, which screws up when you have an "implicit" move by sitting still on an exit tile. You don't want to move anywhere though. You want to teleport back through.
The trick is to move to the creep object that you're pulling. That seems to confuse the game graphics a little (and maybe the engine), but gets the desired behaviour of pulling using the implicit teleportation.
I still think we should be allowed ot issue move intents into the room edge and have pull complete.
Pull across room boundaries
I've been looking at pull recently with 0 move creeps being pulled. Obviously across room boundires this adds challenges. Just pairs of creeps at the moment. Right now the way to do it is
- Tick 1: Move onto edge with pulling creep pulling other creep next to edge
- Tick 2: Do nothing
- Tick 3: Pulling creep is back in the room with the other creep. Now you have to issue a valid
moveintent to enable the pull. This is nasty. You cannot move "into the wall", you have to either move along the room edge or move back into the room you just came from. Going to assume you move along the room edge as I think moving into the room you just came from adds a tick.
- Tick 4: Pulled creep is now through to the other room. If the pulling creep moved along the room edge it is also. Pulling creep moves into the room further.
- Tick 5: Do nothing
- Tick 6: Pull other creep off room edge.
This is all fine except tick 3 should not work as it does. I don't think we should be required to issue a move intent for this. If we are required to issue a move intent, I feel it shold be valid to have an intent that essentially says "stay still and teleport" by moving into the room wall.