Difference between revisions of "Launcher Protocol"

From OdaWiki
Line 71: Line 71:
 
> = Sent to
 
> = Sent to
  
+ = Array of information
+
+ = Array of information (amount here)
  
 
X = Any value
 
X = Any value
Line 107: Line 107:
 
| byte
 
| byte
 
| X
 
| X
| +Server IP 1
+
| +Server IP 1 (Server count)
  
 
|-
 
|-
Line 187: Line 187:
 
| string
 
| string
 
| X
 
| X
| *PWAD name(s)
+
| *PWAD name (PWAD count)  
  
 
|-
 
|-
Line 207: Line 207:
 
| string
 
| string
 
| X
 
| X
| *Player name (amt = numplayers)
+
| *Player name (numplayers)
  
 
|-
 
|-
Line 227: Line 227:
 
| string
 
| string
 
| X
 
| X
| *PWAD MD5 hashes (amt = numpwads)
+
| *PWAD MD5 hashes (numpwads)
  
 
|-
 
|-
Line 273: Line 273:
 
| X
 
| X
 
| Gold score (if team enabled)
 
| Gold score (if team enabled)
 +
 +
|}

Revision as of 07:48, 25 September 2006

Overview

This is the Odamex Launcher protocol, which will help developers develop custom launchers in other programming languages This protocol uses UDP Datagram sockets

Types used

These are the types used in this specification

Type name Range Size
Signed Integers
char -128 to 127 8-bit
short -32768 to 32767 16-bit
int -2147483648 to 2147483647 32-bit
Unsigned integers
byte 0 to 255 8-bit
word 0 to 65535 16-bit
long 0 to 4294967295 32-bit
Strings
string ASCIIZ null terminated
Other
bool byte (1 or 0) boolean

Keywords:

> = Sent to

+ = Array of information (amount here)

X = Any value

Specifications

Master server list request

Type Data Description
Launcher > Master
int 777123 Request
Master > Launcher
int 777123 Response
short X Server count
byte X +Server IP 1 (Server count)
byte X +Server IP 2
byte X +Server IP 3
byte X +Server IP 4
short X +Server Port


Server Information Request

Type Data Description
Launcher > Server
int 777123 Request
Server > Launcher
int 5560020 Response
int X Verification data
string X Server Name
byte X Players in server
byte X Maximum players
string X Current map
byte X PWAD count
string X *PWAD name (PWAD count)
byte X Game type
byte X Skill level
bool X Teamplay?
string X *Player name (numplayers)
short X *Player frags
int X *Player ping
byte X *Player team
string X *PWAD MD5 hashes (numpwads)
bool X CTF mode?
string X Server Website address
int X Teamplay/CTF score limit (if teamplay AND/OR CTF enabled)
bool X Blue team?
int X Blue score (if team enabled)
bool X Red team?
int X Red score (if team enabled)
bool X Gold team?
int X Gold score (if team enabled)