I had a buddy who flies fleet ops with WIdot finally convince me to start playing EVE. He's a game developer, actually a studly project lead type at Volition. (Hi, Dave!)
I've made a few posts here, but I'm just a noob on a trial account. However, I'm also a performance/concurrency specialist, and what's struck me is that although the game is quite fun for me as a total idjit, it's showing seams for those of you who have progressed through to the endgame large-scale fleet battles.
This whole scale-up issue in EVE is interesting from an engineering perspective. The fact of the matter is that CCP engineers are very strong on server technology. They've accomplished some things that the rest of the industry hasn't even tried. On the other hand, by doing so they've exposed problems in areas that other MMO's haven't had to address, by virtue of keeping their entire user base on one network.
"Lag" - It really seems like this is a solvable problem. From an outsider's perspective, it looks like CCP has addressed what we'd see as the hard problems, and that the limiting factor in fleet battles is more in the area of conventional sim optimization.
That said, that lag is a "solvable" problem doesn't mean it's an "easy" problem. The issue is complexity. For any performance related problem, the first goal is to identify & isolate the problem or set of problems. In a simple system, isolation is straightforward and the main effort goes into eliminating the problem. For a moderatly complex system (ie, a desktop game) isolation is "interesting" but eliminating the problem is generally a constant, ie, proportionally less effort. For friggin' Tranquility with thousands of remote clients, identification and isolation is a total fucking nightmare. Fixing the problem(s) is typically almost an afterthought.
Potential Gains - On the third hand, just because a problem is difficult doesn't mean that the potential gains are minimal. I'd estimate, from years of experience, that the server simuation can handle up to about 20x the number of spaceships it's currently bottlenecked on. We're not talking about multiprocessing gains only (which would require an architectural revamp), but algorithmic and small-scale architectural (ie, inter-module) optimizations. I'd also guesstimate that sans macro-architectural issues we're looking at about 5-10x performance increases.
So, why the hell aren't the CCP dudes fixing this now? Simple. Effort. Man-hours. Work. Or as we in the game development industry like to say, "money".
There's also a significant element of risk, in that without expending the effort to develop an extensive profiling infrastructure nobody can say for sure whether the problems that show up are fixable without extensive codebase modifications. Therefore, they can't say for sure how many man-hours are required to fix the problem(s). Which brings us to the point of this post.
How many subscribers are we losing to lag? If CCP were to "fix" the lag problem (where "fix" is a semi-amorphous concept), how many more subscribers (and hence "money") would they stand to gain?
Also, assume the "fix" would ential some reasonably graceful degradation in service quality, along the lines of accepting a once-per-minute update rate on (presumably traffic-intensive) elements such as drone position and the like. How much of that sort of thing are you all willing to accept?
Now, I know the knee-jerk reaction to this sort of query for you guys is something like, "It affects everyone in 0.0 space!" and "we'll take anything as long as we can have large-scale fleet battles!" But seriously, how much do your typical alliance members care?
tl;dr - how much money is lag costing CCP?


Sections