How EVE Online Dealt With a 3,000-Player Battle
Space MMORPG EVE Online is best known for its amazing stories, and on Sunday it added a new epic tale. The leader of a huge coalition, preparing for a moderately sized assault, mis-clicked and accidentally warped himself into enemy territory without his support fleet, endangering his massive ship worth an estimated $3,500. Realizing the danger, he called upon every ally he could, and the enemy fleet rallied in turn, leading to an incredible 3,000-player battle. What's also impressive is that the EVE servers stayed up for the whole fight, when most MMOs struggle with even a few hundred players at the same time. The Penny Arcade report spoke with CCP Games for some information on how they managed that:
"It’s hard to wrap your head around, but they sometimes move the in-game space itself. 'We move other solar systems on the node away from the fight. This disconnects anyone in those systems temporarily, but spares them from the ongoing symptoms of being on an overloaded server,' Veritas explained. 'It helps the fight system a little bit as well, especially if a reinforcement fleet is traveling through those other systems. This was done for the fight over the weekend, but is rare.' ... They do have a built-in mechanism for dealing with massive battles, however: They slow down time itself. ... Once server load reaches a certain point, the game automatically slows down time by certain increments to deal with the strain. Time was running at 10% speed during this 3,000-person battle, which is the maximum amount of time dilation possible."
Okay, in this day in age of scalability and Cloud Services, why the hell can't they host this in an EC2 Availability Zone on Amazon?
Because that's a completely asinine idea, not even warranting a technical response?
I'd urge random smarmy Slashdotters to dig through the EVE dev blog and get a glimpse of the boundaries they've been pushing. Their infrastructure team knows their fucking business.
Boundaries of stupidity. They are using Stackless Python (NO multicore support) on the server.
>'We move other solar systems on the node away from the fight
No they dont, They disconnected people left and right, basically kicked them out of that node and made them reconnect. Its been what, 7 years? and they still didnt figure out how to do live migration.
>Once server load reaches a certain point, the game automatically slows down time by certain increments to deal with the strain. Time was running at 10% speed
He failed to mention your FPS counter also goes to 10% :) It takes HOURS to kill one ship in that SHIT hack of a lag fix mode.
Instead of implementing proper multicore support, or even dividing load among many racks they run everything in ONE python thread ....
Who logs in to gdm? Not I, said the duck.