Inside3D!
     

QW master server source code

 
Post new topic   Reply to topic    Inside3d Forums Forum Index -> Engine Programming
View previous topic :: View next topic  
Author Message
frag.machine



Joined: 25 Nov 2006
Posts: 728

PostPosted: Wed Jun 30, 2010 7:51 pm    Post subject: QW master server source code Reply with quote

I was wondering that an interesting project to implement would be a Java version version of the QW Master Server, maybe hosted at Google AppEngine. Anyone knows if id ever released the QW master server sources so I could study the protocol ?
_________________
frag.machine - Q2K4 Project
http://fragmachine.quakedev.com/
Back to top
View user's profile Send private message Visit poster's website
Spike



Joined: 05 Nov 2004
Posts: 944
Location: UK

PostPosted: Wed Jun 30, 2010 8:15 pm    Post subject: Reply with quote

id did not.

fte has one in sv_master.c
_________________
What's a signature?
Back to top
View user's profile Send private message Visit poster's website
frag.machine



Joined: 25 Nov 2006
Posts: 728

PostPosted: Wed Jun 30, 2010 8:50 pm    Post subject: Reply with quote

Does FTE uses the original protocol or has its own version ? From what I remember both FTE and Darkplaces can use the dp master server implementation, right ?
_________________
frag.machine - Q2K4 Project
http://fragmachine.quakedev.com/
Back to top
View user's profile Send private message Visit poster's website
Spike



Joined: 05 Nov 2004
Posts: 944
Location: UK

PostPosted: Wed Jun 30, 2010 9:05 pm    Post subject: Reply with quote

The qw master protocol is a bit awkward.
The original protocol isn't even supported by ID any more. There are no projects that still use it.

FTE clients support both QW and dpmaster masters, as do the servers.
The master server supports dpmaster+Q2+QW, supposedly.

The QW protocol is basically this:

QW Query:
\xff\xff\xff\xffc
Gives the response:
\xff\xff\xff\xffd\nIIIIPPIIIIPPIIIIPP
(Where IIII is the ip, and PP is the port of each server).

QW Heartbeat:
\xff\xff\xff\xffa
Doesn't give a response (id's master sends a ping - a 'k' packet, but that's more for the operator's use than anything else, and only when first added).

And yeah, that's basically it.
Each heartbeat needs to keep the server listed for long enough to cover packet loss. 5/6 mins will do it.

There used to be more commands in earlier versions, but that stuff isn't used any more. Servers don't support/need it.
_________________
What's a signature?
Back to top
View user's profile Send private message Visit poster's website
frag.machine



Joined: 25 Nov 2006
Posts: 728

PostPosted: Wed Jun 30, 2010 9:24 pm    Post subject: Reply with quote

Cool, i'll check it later then. Looks like quite feasible to emulate, and I want something practical to test Google's hosting capabilities. And besides, if turns out to be something useful for our tiny community, better. Smile
_________________
frag.machine - Q2K4 Project
http://fragmachine.quakedev.com/
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Inside3d Forums Forum Index -> Engine Programming All times are GMT
Page 1 of 1

 
Jump to:  
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 vote in polls in this forum


Powered by phpBB © 2004 phpBB Group