Difference between revisions of "Launcher Protocol"

From OdaWiki
Line 53: Line 53:
  
 
|-
 
|-
| String
+
| string
 
| ASCIIZ
 
| ASCIIZ
 
| null terminated
 
| null terminated
 +
 +
|-
 +
| '''Other'''
 +
 +
|-
 +
| bool
 +
| byte (1 or 0)
 +
| boolean
  
 
|}
 
|}
Line 68: Line 76:
  
 
==Specifications==
 
==Specifications==
 +
 
'''Master server list request'''
 
'''Master server list request'''
  
Line 121: Line 130:
  
 
|}
 
|}
 +
  
 
'''Server Information Request'''
 
'''Server Information Request'''
 +
 +
{|border=1
 +
 +
!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(s)
 +
 +
|-
 +
| byte
 +
| X
 +
| Game type
 +
 +
|-
 +
| byte
 +
| X
 +
| Skill level
 +
 +
|-
 +
| bool
 +
| X
 +
| Teamplay?
 +
 +
|-
 +
| string
 +
| X
 +
| *Player name (amt = numplayers)
 +
 +
|-
 +
| short
 +
| X
 +
| *Player frags
 +
 +
|-
 +
| int
 +
| X
 +
| *Player ping
 +
 +
|-
 +
| byte
 +
| X
 +
| *Player team
 +
 +
|-
 +
| string
 +
| X
 +
| *PWAD MD5 hashes (amt = 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)

Revision as of 07:47, 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

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
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(s)
byte X Game type
byte X Skill level
bool X Teamplay?
string X *Player name (amt = numplayers)
short X *Player frags
int X *Player ping
byte X *Player team
string X *PWAD MD5 hashes (amt = 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)