Monday, January 20, 2014

Fleet Crushing Lag

Another big EVE fight.  Another failure.  This time the server node did not fall over, but apparently the side entering the field second (CFC and friends) lost because they could not get their hardeners on.  Both sides were seeing the hilarious "Soul Crushing Lag" popups.  (These are funny from my POV in wspace, where such lag does not happen.  I am sure nullies were not laughing.)
Not a joke

Trebor Daehdoow covers the thing here.  EVE combat is O(N^2) in the number of pilots involved.  So no matter how much processing power you have, linear increases in N will always exceed the processing power available.  (We hope that Moore's Law overcomes this, but it has not in the past few years.)  In short, "Fleets expand to fill the lag available".

Daehdoow covers the three ways in which CCP can address the problem: more hardware, more programming effort, and changed mechanics so that too-huge fights don't happen.  Of these, they are already maxxed out in hardware, and programming effort has already been heroic.  The low hanging fruit is already harvested.

Anyway, all that is prefatory to my idea for how to fix the problem.  And that is: remove ships from the field when TIDI gets high.  One might be "nice" about doing that; perhaps a forced logoff with a cooling off time allowing no login.  But then it is hard to think of a rationale for why ships would just disappear in the middle of a fight.  It's a huge fight: they want to be there!  And also, this is EVE: if you want something removed, kill it.

I thought about the idea of using player-controlled weapons to create such an effect.  For example, perhaps a giant area-effect weapon of some kind.  But I think this is a bad idea.  You want the effect to be guaranteed by the server, not the players, regardless of whether the players like or want it.

So, I propose a new mechanic.  When a particular server is sufficiently overloaded -- let us say, below 20% TIDI -- then there is a chance of a very damaging area-effect explosion.  Our bullshit scifi explanation might be: due to the massive energy of large fleet combat, there is a rip in the space-time continuum.

The chance for a space-time rip to happen should increase with increasing lag; for example, it might be 1% per hour at TIDI 20, then double for every point lower, so that at 10% TIDI it becomes 1% per each 7 seconds or so.  (This gives an average time for a rip to start of about a minute.)  When a rip starts, there should be some warning, such that smaller ships might be able to warp off grid.  And there needs to be a epicenter, which should be computed as the center of mass of all ships on grid.  So, put an cool graphic there, a pulsing nastily energetic looking thing.  Or maybe a black hole looking thing.  Whatever it is, make sure a warning is popped up to everyone.  Indeed: put a marker on the system map, like a cyno.

One minute after a rip is created, it explodes and vanishes.  The explosion does damage directly to shields, armor, and structure of all ships on grid.  The amount should not be mitigated by speed, but only (a) signature, and (b) distance from the rip location.  This needs to be carefully tuned, but the idea should be that even a distant, undamaged ship should be at mild danger (say, 5%) of being blown up.  Ships right on the rip  when it tears should die fairly reliably.  All other ships should take substantial damage, including hull damage.  The armor and/or shields would be reparable in short order with the sort of logistics that fleets have, but not hull, which would make it increasingly deadly to stay on grid after a series of rips.

Thus, below 20% TIDI a large fleet battle becomes something of a game of chicken.  Both sides still benefit from having a larger blob, but proportionately nowhere near as much, since both sides will be taking more or less constant (and equal) attrition.  In the limit, a large force that simply gets on grid together with no enemy ships present whatsoever would create risk for itself; basically any large fleet which causes TIDI is punished.  FCs would learn not to do that.  They'd do it only on the field of combat.

A massive null fleet battle would then have a strong reason for reserves, rather than simply throwing in all force available immediately.


  1. Interesting idea, even if it feels like a deus ex machina. And I bet people would even find ways to gain tactical advantage from deliberately creating such rifts.

  2. someone would create rips in Jita

    fixed damage not %. favour bigger ships. if only because they are likely to be tackled and/or too slow to warp away each rip. but more to encourage bigger ships vs N+1

    or you could just give titans AoE doomsdays back

  3. This comment has been removed by the author.

  4. I think a better solution is to think outside the box. Why must a "big fight" all be in one system? If CCP could somehow make the "big fight" be a thing that extends across multiple systems then problem solved.

    I don't really know how it could be achieved.

    Someone wrote a blog post about how there the lack of terrain in eve makes this difficult. There isn't a strategic hill, a bridge over the river, a nearby airfield. None of these things exist, the only way to win the war is to bring as much fire power as possible onto the field.

    There is no benefit to controlling the surrounding systems. The only place where anything matters is in the system where the big fight (and big lag) is.

  5. Fights grow bigger an bigger at a fast pace. Asakai was a huge event, covert in newspapers and even television. 2700 pilots participated. Now we are talking about 4000+ pilots. That's >10% of the average players logged in at a time and all of them focusing on a single system.
    But - no need to change a thing.
    Nullsec players WANT to play it that way.
    Game mechanics don't force you to go "all-in", the agressor can choose to split his army into 5 or 10 groups, attacking 5 or 10 systems simultaneous.
    The defender would have to decide whether he want to focus on one agressor (and lose 4-9 systems) or split his defense and try to defend 2, 3, 4, 5, 6, 7, 8, 9 or 10 systems.
    5 systems with ~800 pilots vs 1 system with ~4000 pilots.
    It's up to the players to decide how they want to play the game.

    "We have numbers*2 therefore we win"

    Sad truth: new (and highly motivated) corporations/alliances can't get their feet into nullsec if they want to conquer instead of being renters or pets. Even superior strategic thinking will lose to 200 titans, 500 supers, 2000 carrier, 4000 sentry-domi dropping at you.
    In WH space you have limited numbers because of the mass limitation... and in my opinion WH wars are much more interesting, demanding, motivating, satisfying.

    WH space is how nullsec space should be.

  6. Way simpler. Mass or number limitations on the gates an cynos. 'System is full' in technobabble system can't handle it version, with a tiered message structure. 'System is suffering from excessive presence, system is buckling under extreme ship presence' etc. Yes, that would lead to a buildup blocking out other ships. Guess what: those 30 titans blocking a system are now NOT defending anywhere else.

  7. I'm sorry, this is a bad idea, because it favors sides with larger ships. Carriers, dreads, supers survive the rip and subcaps die. This is practically bringing back the old AoE doomsday.

    If the rip is strong enough to kill capitals too, then it favors subcaps: keep the capitals scrammed by T1 battleships, die with them, you lost 100M, they lost 1B.

    The remove ships is the solution, but not via forced logoff. See my post on Thursday.

  8. I like the principle of the idea - that bringing in more ships increases the risk to both sides. It would be self-correcting in that it removes ships/pilots from the battle when it gets too high. The desired effect is that you spread battles out, but I wonder what the unintended consequences will be.

  9. A bit of a tangent to your idea but I would suggest scrapping the reinforcement timers (I suspect this has been suggested before), this would mean to defend your space you have to be in it, if your blob is off somewhere rolling over your enemy then your territory is vulnerable to multiple smaller strikes.

    Yes this will still favor larger alliances, but it will require and 24/7 presence which I think will lead to much smaller areas of space being controlled.

  10. Nony: someone would create rips in Jita... Feature, or bug? Personally, I like the idea. However, highseccers would hate it, and one has to imagine that the Caldari government would take measures to avoid it. And in fact, they do -- that's why there is a player cap in Jita.

    Gavin, your criticism is correct. It would be nice if there was a reason to spread out. However, even if there were such an incentive, there is still also the incentive to dogpile, and it needs to be dealt with. So, maybe more/different ideas are needed, but this is a start.

    Gevlon, it requires tuning. That is why CCP has game designers. Yes, the rip must be strong enough to kill capitals, or else they are totally dominant. But that is what I was proposing: capitals are ships, and every ship has a 5% chance to die. The important point is that ships are being forceably removed from the system, in a somewhat equitable way.

    Pilgrim, that's a good summary of both the goal and the method. I do wonder about the unintended consequences, but also I wonder how players would exploit it. I.e.: find your enemy massing somewhere, and they are just about 20%, then you drop on them and bubble with the intent to cause rips and disproportionate damage. This is gaming the thing in a sense. OTOH, it is a tactic always available to everyone, so it is fair in that sense.

  11. What if grids have a pilot cap? They could dissect busy systems into the system itself and the grids (maybe this part is already done?).

    You could have so many pilots that if everyone flew to a grid, it would fragment. Anchored things would need to exist across all fragments.
    Since defenders can't have an advantage, the grid would be able to load everyone onto it and then it would begin fragmenting.
    Deciding who goes in which grid could sort of be left up to the FCs via fleet setups. Odd numbered fleets or wings go to grid 1 and even go to grid 2. This would require something bigger than a fleet (maybe an armada?) so that you are divided onto grids with enemies. If there are three armadas, then each grid gets 1 fleet from each armada. If you out numbered your enemy, you would still outnumber them. Your numbers are halved, and so are theirs.

    If you try to make everyone odd or the grid has to fragment again assignment goes by every other fleet/wing.

    People could "pad" armadas to try to get fair fights, which brings up warping out and back in. If you warp out and then warp to some one on the other grid you will land on the grid, but if you hit the pilot cap the grid is split again.

    Yes, this is in no way explainable, but now you can dogpile. Yes, tactics could get complicated, but that might be fun?

    TLDR - Grid fu.