GameSpy's shutdown and the master server problem
GameSpy's hosted services ended on 31 May 2014, and most of Electronic Arts' GameSpy titles followed on 30 June. The game servers kept running, but the master servers that listed them were gone, so in-game browsers came up empty. Studios that still cared patched their games to point elsewhere; for the rest, players rebuilt the masters and redirected the games themselves.
By SweetMask · · 4 min read
31 May 2014 was the date on the notice: GameSpy would stop providing hosted services to every game still using it. For PC games built around dedicated servers, the service players missed first was the master server, the directory a game asks for its list of servers. The servers themselves kept running. What disappeared was the list, for every game that had been asking the same company for one.
GameSpy began in 1996 as QSpy, a program for finding Quake servers, and spent the next eighteen years selling multiplayer services to other studios. By 2014 it belonged to Glu Mobile, and Game Informer reported at the time that more than 800 developers and publishers used it. Nothing about the closure itself was unusual; companies retire services they no longer want. The trouble was how many games had put one company's hostname at the centre of their multiplayer and never planned for its absence.
What a master server does
The arrangement is simple. A dedicated server, once running, announces itself to the master at intervals. A player opens the in-game browser, the game asks the master for the current list of addresses, and each row fills in with a server's name and player count. The servers can answer questions about themselves perfectly well (how those per-server queries work). What none of them can do is tell a player they exist. That is the master's whole job, and its address is usually the one fixed point in the whole system.
In the original Unreal Tournament the address sat in a text file. The browser's entry in UnrealTournament.ini named master.gamespy.com on TCP port 28900, and the repair is to swap in a community master on the same port, as 333networks' instructions still describe. Many games were less obliging. The hostname lived inside the executable, and changing it needed either a patch from whoever held the source code or a way around the game.
May and June 2014
Electronic Arts set 30 June for most of its GameSpy titles and said more than 50 of them would lose their online services. Bohemia Interactive's notice, posted by its chief executive, was unusually exact about what was going. The older Arma games and Take On Helicopters would lose their server browser and CD-key authentication, along with the NAT traversal that let players reach servers behind home routers, while Arma 2: Operation Arrowhead and Arma 3 were to move to Steam. Direct connections by IP address, the notice added, should keep working.
That last line explains the event better than the headlines did. The game servers were not going anywhere, and a player who already knew an address could still reach it. What was being switched off was the way most players learned addresses in the first place. For some games GameSpy also ran the login and the CD-key check, so losing it cost players the right to join as well as the means to find a server.
The games somebody patched
Where a studio still cared, the fix was a patch that pointed the game somewhere else. Patch 1.0.10 for Halo PC and Halo Custom Edition was announced on Bungie.net on 16 May 2014. Its replacement server browser had been written by a community member for Bungie to host, which is about as tidy as the whole episode got.
Battlefield 2 got its replacement from players. BF2Hub, started by 2F4Y.com in mid-May once EA's plans were public, rebuilt far more than a list: a login server, a master for game servers to report to, a list server for the in-game browser, CD-key validation and a stats server, all aimed at the 30 June cut-off. It is one of several such projects for the game, and which one a given server expects is a property of that server (what joining Battlefield 2 involves now).
The games nobody patched
Plenty of GameSpy games had no studio left to ask, or none that was interested. For those, people rebuilt GameSpy itself. OpenSpy runs replacement services for a long list of titles, and a separate project, openspy-client, connects old games to it without altering their files. It is a single DLL, copied next to the game's executable and renamed to whatever that particular game loads, which redirects GameSpy requests to OpenSpy in memory (its repository lists the supported games). Where even that is impractical, the lookup can be intercepted with an entry in the system's hosts file that sends the old GameSpy hostname to a community server instead.
Every one of these fixes depends on community-run servers staying up, and each has to be found by the player before it helps. The in-game browser was already losing its place as the way into multiplayer (how that happened). For these games it went dark until someone rebuilt what stood behind it, and finding a server for an old game now usually starts outside the game.
One hostname in every copy
Look at what actually failed in 2014. The game servers, run by many people on many hosts, carried on. The part that failed was the only centralised piece: a hostname inside every copy of every game, owned by a company whose interest in those games had ended. Each game then fared according to how hard that hostname was to change. A line in a config file took minutes; a patch needed a studio that still existed; a DLL or a hosts entry needed strangers willing to reimplement a protocol; and some games got nothing at all.
The shape has not changed, only the owners. Most PC games that still have a browser (fewer than there were) get their list from a platform, Steam's master server for Source games among them, or from the publisher's own back end. That is convenient and, while it lasts, reliable. What made a game easy to rescue in 2014 is clear from the ones that were: a master address players could edit, a direct-connect box that worked without any directory, and servers that answered queries themselves, so that anyone could rebuild a list from outside the game (why an external list keeps working when a browser stops).
Sources
- [Update] Glu Shutting Down Gamespy Service, Affecting A Reported 800 Developers And Publishers — Game Informer
- End of Gamespy - BOHEMIA INTERACTIVE - NEWS - Bohemia Interactive Forums — Bohemia Interactive
- Halo PC/CE 1.0.10 now available > All Topics | Forums | Bungie.net — Bungie
- BF2Hub.com - History — BF2Hub
gamespymaster servershistorypreservation
More
The person who maintains the modpack
A modded server's stability is mostly one person's judgement about versions and timing, and when that person stops, the pack does not break so much as freeze.
SweetMask · · 4 min
Whatever happened to rented official servers
Publishers kept the server software, licensed the renting, took the renting in-house and finally folded hosting into the game, and each step left communities less of the machine.
SweetMask · · 5 min
What the NeoForge split changed for modded servers
The fork looked like a rename in 2023. By Minecraft 1.21.1 it decided which mods and hybrid servers a modded server could run, while installation and Forge itself carried on.
SweetMask · · 4 min