ZenHAX

Free Game Research Forum | Official QuickBMS support | twitter @zenhax | SSL HTTPS://zenhax.com
It is currently Mon Sep 25, 2017 4:15 am

All times are UTC




Post new topic  Reply to topic  [ 8 posts ] 
Author Message
PostPosted: Tue Aug 05, 2014 11:05 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6707
At the end of May 2014 Gamespy closed all their public servers used by tons of games (over 5000) for many things like server browsing, nat negotiation, chat, matchmaking, stats and so on.

In the last 12 years I have made lot of research about the protocols used by this infrastructure and you can find all my code here:
http://aluigi.org/papers.htm#distrust

The same Gamespy released an open source SDK in 2011:
http://zenhax.com/download/file.php?mode=view&id=2

Now this thread is dedicated to ALL the currently available solutions created by the community to emulate the Gamespy network.
It's difficult to find all these projects so feel free to add any resource of which you are aware.
Additionally hosting a public server is ever a big security risk and it's difficult to know what the security status of these projects.

OpenSpy (Masaq fork)
https://github.com/Masaq-/Openspy-Core
OpenSpy was the first project to emulate the GS network, it started as an online-only project and later its code was released publicly.
The old OpenSpy code is no longer supported from 2 years (afaik) and currently there is a fork maintained by Masaq that is fully active.
As far as I know it should support almost all the services.
Written in C++.

PowerServer
https://github.com/Poweruser/PowerServer
It supports only the master server part of the network and doesn't seem to support enctypeX.
Written in Java.

Project Reality MasterServer
https://github.com/AncientMan2002/PRMasterServer
Battlefield 2 only.

nwn2dev-public
https://github.com/SkywingvL/nwn2dev-public
Neverwinter Nights 2 only.

dwc_network_server_emulator
https://github.com/polaris-/dwc_network_server_emulator
DS and Wii games, I don't know what network protocols are supported, probably login and master server (enctypeX).

gs_login_server and peerchat_server
http://aluigi.altervista.org/papers.htm#distrust
They are only proof-of-concepts but they did the job to run the game in LAN without master server.
I remember that some people used them to play online with fake names and values :)
A third-party SQL fork is available on https://code.google.com/p/gsloginserver/


---

Gamespy online substitutes.
Online-only servers (no code to use by yourself) that can be used by modifying the hosts file to change the DNS resolution.

OpenSpy
http://www.openspy.org

Qtracker
http://www.qtracker.com/master-gamespy.php
Master server and limited login support.

Epic Games Unreal Tournament 3
Epic Games have their own Gamespy replacement for UT3.

---

A quick explanation of the "enctype" words you have seen referred to the master server code:
  • enctype 0: no encryption, used by old games probably before 2003
  • enctype 1: used only by the Gamespy3D tool (who used that?!?)
  • enctype 2: used by many games like Battlefield 2
  • enctype X: used by the recent games
Note that the usage of enctype 2 or X is probably due to the SDK version used by the developers when they started to work on their game.
For example Halo1 was released in 2003 and used enctypeX while Battlefield 2 released in 2005 uses enctype 2.


Attachments:
File comment: GameSpy Open SDK 1.00
GameSpyOpenSDKs_v1_00.zip [3.94 MiB]
Downloaded 1543 times
Top
   
PostPosted: Fri Aug 08, 2014 4:48 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6707
Who works with the Gamespy master server protocol probably would find useful the following tool:
http://aluigi.org/papers/enctypedec.zip
It's an off-line enctype decrypter.
Dump the raw tcp connection you collected with Wireshark and it will do the rest asking only the gamekey (-g gamekey).


Top
   
PostPosted: Fri May 15, 2015 5:01 pm 

Joined: Sat May 09, 2015 7:18 pm
Posts: 9
Here is an early version that I have been working for the past week based off q2master which was based from gloommaster:

http://dk.toastednet.org/gsem/DKMASTER_02.zip -- Source only, tested building on MSVC but should work with *nix with little to no source changes. Supports encode type 0 games only.


Top
   
PostPosted: Wed Nov 04, 2015 4:47 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6707
Just an information related to my gslist tool and gsm.qtracker.com.

This particular server requires to specify the key of the requested game to work so remember to specify it with -Y, for example:
gslist -n heretic2 -Y heretic2 2iuCAS -x gsm.qtracker.com

The full list of keys is available with: gslist -l
Hope it helps.


Top
   
PostPosted: Sat May 21, 2016 10:43 pm 

Joined: Sat May 21, 2016 10:39 pm
Posts: 1
@aluigi
Are you still active on this? I have actual servers, which have plenty of power for Gamespy.
I want to more or less bring back the dead...


Top
   
PostPosted: Sun May 22, 2016 7:35 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6707
personally I'm far from the Gamespy stuff from 10 years :)


Top
   
PostPosted: Fri Jul 29, 2016 6:04 pm 

Joined: Fri Jul 29, 2016 5:34 pm
Posts: 1
Is there a way to contact OpenSpy authors? They never answer on their own forum and the whole project seems to be dead. The website is unfinished, the master server is unfinished, and we have no information on what is going on.


Top
   
PostPosted: Fri Jul 29, 2016 7:16 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6707
I have no contacts, sorry.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 8 posts ] 

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Limited