Lag is a nuisance in any online game but the company's most ingenious solution so far is something called "time dilation." Introduced in 2010, the code adjusts the passage of time incrementally depending on the load, scaling up and down in symphony with the action.
It keeps constant tabs on itself, the size of the execution queue, and other variables within the game environment. Although its presence is most vividly felt during fleet battles, its function isn't unique to combat and can activate even when a player is merely moving items around.
Fascinating as it might be, CCP Senior Development Director Erlendur Þorsteinsson describes time dilation as a "band-aid," a temporary answer as opposed to a true resolution.
"We're not really solving the underlying symptoms. What we're sort of doing is extending the range with which we can accommodate people," Þorsteinsson declares. "There's a certain range, maybe up to 1,000 people roughly, that we can solve without time dilating. After that, up till 5,000 people, we're handling with time dilation. Beyond that? Things will simply queue up and you will experience what is known as lag."
The way forward
The CCP developer also touches briefly on a collaboration between the company and the University of Reykjavik, which is something of a research project that Þorsteinsson is quick to note is not actively being worked on.
He explains that the related professor and his students looked into whether it was possible to predict an encroaching fight by examining logistics movement and counter-fleet movement. The experiment was reportedly quite successful for a university project, although CCP chose not to embed the idea in their code.
"What we did instead is, based on the discussion we had around this project, was change how we map solar systems. We did it in a different manner that we think now balances the load throughout the cluster, which makes the cluster better able to take on unexpected loads. Then we allocated more hardware to nullsec, so that unexpected load will have much more room."
While CCP iterates on the software that keeps Eve Online functional, the operations team continues the Herculean task of keeping the single-shard (single-server) universe afloat. "It's a constant battle figuring out what hardware works with the game," explains Viggósson. "The market is slowly trending into reducing clock speeds and increasing cores. And it just doesn't really have much. We just need the power of the CPU."
That necessity for raw power is made abundantly clear in the existence of the Everest node, Jita's current home and the workhorse handling the most system-intensive processes.
"At the time when we bought it, only places like the New York Stock Exchange had it," chuckled Viggósson.
Purchased from IBM four years ago, the computational behemoth sports a 4.12Ghz processor and 64gb memory. According to Viggósson, Everest was not available commercially at the time and it contained CPUs that were overclocked by IBM itself. The warranty was only applicable for 12 months; Viggósson postulates it was because the technology company's staff had no confidence in it lasting longer than a year.
Nonetheless, Everest continues to persist, and with it Tranquility. The two sit tethered together by a patchwork of old code and new ideas as a work in progress. In some ways, this is reflective of CCP's approach as a whole: tackling problems head-first, without allowing the impossibilities of a dream dissuade ambition.
- Check out what the TechRadar staff uses for our PC gaming