Unreal v1.01 update patch is now available! This update allows players to join multiplayer games by clicking on links to "*.unreal" files from their web browser.It was covered on the official Unreal news site, Blue's News, and many other long-since-defunct gaming sites, back in the day.
".unreal" files are simple ini files which tell the player's machine the location and port the server is running on. Links work in both MS Internet Explorer and Netscape Navigator (v2.0 and above).
".unreal" files are simple 2 line INI files. They should look like this:
You can specify a server using either its hostname or an IP address. The port number is optional. Examples shown below:
will both launch to the same server.
So it might surprise you to learn that I wrote the patch, yet I never worked at Epic MegaGames, nor GT Interactive, nor have I ever touched the Unreal source code.
How'd that happen? Read on, for a short tale, a glimpse behind the curtain, a peek into the machinations that go on behind the scenes of the gaming industry.
I was working at Mplayer at the time, as the installer/automatic updater technology guy. I'd seen some early builds of a game called Unreal that looked fantastic. We'd signed a deal to host Unreal on Mplayer, so I was looking forward to getting the full game. We often got free copies of the games we hosted—one of the perks of running an online multiplayer gaming service.
One day, just after Unreal went gold but before it hit the stores, one of Mplayer's "producers" came into my cube to talk to me. (What Mplayer called a "producer" was the person who negotiated the deals for games.) He asked me if I'd be willing to write a patch for Unreal! He told me the following:
When we signed the deal with Epic MegaGames, we didn't get an exclusive. But we negotiated a clause in the contract giving us "most favored nation" status. That means that if Epic gives something to any of their other licensees, they have to give it to us too.
Unreal has links in the Start Menu that launch Unreal to play online. During development, there was one link for Mplayer and one link for GameSpy. Well, someone at Epic decided at the very last minute to yank the link for Mplayer. They decided they liked GameSpy better or something. Unfortunately, that meant they were now in breach of contract, and we called 'em on it.
They said—you're right. You're absolutely right. We're really, really sorry. Please don't sue us! We'll make it right. Anything you like. Just please don't sue.
So we told 'em, we want your next game. They said sure. [That game was the wonderful Unreal Tournament, and indeed it was on Mplayer. --Ed.]
We also told 'em, we want you to issue a patch immediately to correct this problem. They said sure. In fact, they said, why don't you write the patch, and we'll release it as the official patch as soon as you're ready.
So. We'd like you to write a patch for Unreal that puts Mplayer back in the Start Menu. You're the guy to do it, because basically all it is is an installer that puts back that shortcut. If you wanna do something else too, that's fine, talk to Epic about it, but we don't really care. All that matters to us is that it fixes the Start Menu.
I'm not sure how we got on the subject, but Mr. Sweeney observed that Unreal could connect to online games by passing a standard-looking URL on the command-line, like this:
unreal://server.unreal.com:7777/They'd meant to add support so that you could launch games directly from web pages, but they hadn't gotten around to it. Mr. Sweeney said "It's a shame, but now it's too late to do anything about it." I said, "Well, the game hasn't shipped to stores yet, and we're talking about releasing the first patch right now—sounds to me like there's still time."
So I wrote a simple launcher I called UnreaLaunch. It took a command-line argument of a .unreal file, a simple INI-file that listed the Unreal URL as above. It'd pull out the URL, then launch Unreal with that URL on the command-line, and Unreal would connect to that server. I then wired up the Windows registry so that .unreal files launched UnrealLaunch appropriately. It all worked fine.
So I then bundled it a quick installer with the WISE Install System that did about four things:
Here we are, years later. Mplayer is long gone, and Unreal Tournament 2004 didn't ship with links to anybody in its Start Menu. But it runs on GameSpy!
How come I didn't tell the story until now? I was asked to keep quiet about it, 'cause after all, it was mildly embarassing to Epic. But at GDC in 2004 I met Tim Sweeney and Mark Rein, and asked them for permission to tell the story, and they said sure. They're real nice fellas.
In case you're wondering whether or not I made it all up, well, I don't have any concrete proof for you. I didn't do anything so unprofessional as to embed my name in it or anything. But consider: I used the WISE installer, which doesn't match any of the installers Unreal used. I also called it the "1.01 patch", which doesn't match the usual Unreal patch nomenclature; they use build numbers, not version numbers.