Well, well, well, well, well… would you look at that. It appears that Thyth of Tribes/Tribes 2 hackery fame pulled off a fantastic miracle fittingly called TribesNext.
I’m impressed.
For those of you who don’t know: Tribes and Tribes 2 were amazing multiplayer, online-only team-based FPS shooters. The difference between Tribes and other shooters? A jetpack. It always amazed me to have a third dimension of freedom in a shooter that never existed before–or since.
Unfortunately, Dynamix (the studio responsible for Tribes) was shutdown and disbanded by Vivendi, leaving the franchise to effectively rot. Worse, Tribes 2 was one of the first highly anticipated online-only titles to include fairly draconian DRM prohibiting its use online without a valid account (though LAN games could still be played unauthenticated). The DRM was never stripped out after Dynamix’ breakup and as of 2008, Vivendi took down the authentication servers rendering Tribes 2 impossible to use in online matches. In effect, Tribes 2 is the oldest title (and possibly first) whose publisher doomed to the pages of forgotten history.
Enter an individual I know only as Thyth. I recall seeing a site of his back in mid-2008, and he claimed that he could muck about with the logic in the Tribes 2 binary which has thusfar rendered multiplayer unusable. Not only did he manage to circumvent the master checks, but it’s pretty apparent that he also reverse-engineered the protocol used for the master servers and has the client patch working to communicate with his masters. but he has also implemented his own master protocol via HTTP using a Ruby interpreter shoehorned into the executable.
This guy is pretty amazing.
Anyway, I haven’t tested it yet, but if you want to grab the patch to make Tribes 2 usable again, go here.
Edit May 31st – June 1st
Well, the disappointing reality of TribesNext is that it doesn’t play nicely with Wine. Thusfar, I’m relegated to running Tribes from a VM. Josh and I tried for much of this weekend to get it working, but it appears that something in the latest version of Wine (though we tried 1.1.29, 1.1.30, 1.1.40, and 1.1.44) breaks TN’s hack. It mostly works, but the embedded interpreter either dies or issues a response the client doesn’t understand immediately after connect. I don’t know enough about Tribes or its protocol to understand what’s going on, but it certainly appears that Wine (perhaps its implementation of winsock) acts strangely.
However, it works perfectly under a virtual machine. It’s quite amazing! It’s also quite nostalgic. To think: It’s almost been a decade since Tribes 2 was released. I can’t even believe it’s been that long in retrospect…
Regardless, I have some modifications I’d very much like to make to the default scripts that ship with the game mostly for trial purposes. It should be quite fun–especially since I know a great deal more about coding practices in general, and their scripting language isn’t all that difficult.