FS2_Open
Open source remastering of the Freespace 2 engine
multi.h File Reference

Go to the source code of this file.

Classes

struct  header
 
struct  net_player_server_info
 
struct  net_player_info
 
struct  net_player
 
struct  netgame_info
 
struct  active_game
 
struct  server_item
 
struct  join_request
 
struct  network_buffer
 

Macros

#define MULTI_VALID_MISSION_FILE   "mvalid.cfg"
 
#define MULTI_FS_SERVER_VERSION   147
 
#define MULTI_FS_SERVER_COMPATIBLE_VERSION   MULTI_FS_SERVER_VERSION
 
#define NG_VERSION_ID_FULL   1
 
#define NG_VERSION_ID   NG_VERSION_ID_FULL
 
#define MULTI_MAX_PLAYERS   12
 
#define MULTI_MAX_CONNECTIONS   16
 
#define MAX_OBSERVERS   4
 
#define LOGIN_LEN   33
 
#define MAX_GAMENAME_LEN   32
 
#define DESCRIPT_LENGTH   512
 
#define MAX_PASSWD_LEN   16
 
#define IP_ADDRESS_LENGTH   4
 
#define IP_PORT_LENGTH   2
 
#define MP_SINGLE_MISSION   0
 
#define MP_CAMPAIGN   1
 
#define RESPAWN_INVUL_TIMESTAMP   5000
 
#define MAX_RESPAWN_POINTS   25
 
#define BUTTON_INFO_SAVE_COUNT   30
 
#define MAX_PINGS   10
 
#define MULTI_RELIABLE_CONNECT_WAIT   15
 
#define MVALID_STATUS_UNKNOWN   -1
 
#define MVALID_STATUS_VALID   0
 
#define MVALID_STATUS_INVALID   1
 
#define NET_PLAYER_INDEX(np)   (np-Net_players)
 
#define NET_PLAYER_NUM(np)   (NET_PLAYER_INDEX(np))
 
#define MY_NET_PLAYER_NUM   (NET_PLAYER_INDEX(Net_player))
 
#define MULTIPLAYER_MASTER   ( (Game_mode & GM_MULTIPLAYER) && (Net_player->flags & NETINFO_FLAG_AM_MASTER) )
 
#define MULTIPLAYER_HOST   ( (Game_mode & GM_MULTIPLAYER) && (Net_player->flags & NETINFO_FLAG_GAME_HOST) )
 
#define MULTIPLAYER_CLIENT   ( (Game_mode & GM_MULTIPLAYER) && !(Net_player->flags & NETINFO_FLAG_AM_MASTER) )
 
#define MULTIPLAYER_STANDALONE   ( (Game_mode & GM_MULTIPLAYER) && (Net_players[0].flags & NETINFO_FLAG_AM_MASTER) && !(Net_players[0].flags & NETINFO_FLAG_GAME_HOST) )
 
#define MULTI_CONNECTED(np)   (np.flags & NETINFO_FLAG_CONNECTED)
 
#define MULTI_HOST(np)   (np.flags & NETINFO_FLAG_GAME_HOST)
 
#define MULTI_SERVER(np)   (np.flags & NETINFO_FLAG_AM_MASTER)
 
#define MULTI_STANDALONE(np)   ((np.flags & NETINFO_FLAG_AM_MASTER) && !(np.flags & NETINFO_FLAG_GAME_HOST))
 
#define MULTI_OBSERVER(np)   (np.flags & NETINFO_FLAG_OBSERVER)
 
#define MULTI_TEMP_OBSERVER(np)   ((np.flags & NETINFO_FLAG_OBSERVER) && (np.flags & NETINFO_FLAG_OBS_PLAYER))
 
#define MULTI_PERM_OBSERVER(np)   ((np.flags & NETINFO_FLAG_OBSERVER) && !(np.flags & NETINFO_FLAG_OBS_PLAYER))
 
#define MULTI_IS_TRACKER_GAME   (Om_tracker_flag)
 
#define NETPLAYER_SLOTS_P   0x01
 
#define FIRING_INFO   0x02
 
#define INGAME_SHIP_UPDATE   0x03
 
#define INGAME_SHIP_REQUEST   0x04
 
#define TEAM_SELECT_UPDATE   0x05
 
#define FILE_SIG_INFO   0x06
 
#define RESPAWN_NOTICE   0x07
 
#define LOAD_MISSION_NOW   0x08
 
#define FILE_SIG_REQUEST   0x09
 
#define JUMP_INTO_GAME   0x0A
 
#define RESPAWN_POINTS   0x0B
 
#define CLIENT_REPAIR_INFO   0x0C
 
#define CARGO_REVEALED   0x0E
 
#define SHIELD_EXPLOSION   0x0F
 
#define SUBSYSTEM_DESTROYED   0x10
 
#define MISSION_SYNC_DATA   0x11
 
#define STORE_MISSION_STATS   0x12
 
#define DEBRIS_UPDATE   0x13
 
#define SHIP_WSTATE_CHANGE   0x14
 
#define WSS_REQUEST_PACKET   0x15
 
#define WSS_UPDATE_PACKET   0x16
 
#define KICK_PLAYER   0x17
 
#define MISSION_GOAL_INFO   0x18
 
#define ASTEROID_INFO   0x19
 
#define NETPLAYER_PAIN   0x1A
 
#define OBJECT_UPDATE_NEW   0x1B
 
#define SUBSYS_CARGO_REVEALED   0X1C
 
#define POST_SYNC_DATA   0x20
 
#define PLAYER_SETTINGS   0x21
 
#define WSS_SLOTS_DATA   0x22
 
#define PLAYER_STATS   0x23
 
#define SLOT_UPDATE   0x24
 
#define TEAM_UPDATE   0x25
 
#define INGAME_EXTRA   0x26
 
#define HOST_RESTR_QUERY   0x27
 
#define OPTIONS_UPDATE   0x28
 
#define CLIENT_UPDATE   0x29
 
#define CD_VERIFY   0x2A
 
#define PRIMARY_FIRED_NEW   0x2B
 
#define COUNTERMEASURE_NEW   0x2C
 
#define EVENT_UPDATE   0x2D
 
#define SECONDARY_FIRED_AI   0xA0
 
#define SECONDARY_FIRED_PLR   0xA1
 
#define COUNTERMEASURE_FIRED   0xA2
 
#define FIRE_TURRET_WEAPON   0xA3
 
#define SHIP_STATUS_CHANGE   0xA4
 
#define PLAYER_ORDER_PACKET   0xA5
 
#define AI_INFO_UPDATE   0xA6
 
#define CAMPAIGN_UPDATE   0xA7
 
#define CAMPAIGN_UPDATE_INGAME   0xA8
 
#define HOMING_WEAPON_UPDATE   0xA9
 
#define FLAK_FIRED   0xAA
 
#define SELF_DESTRUCT   0xAB
 
#define JOIN   0xB1
 
#define ACCEPT   0xB2
 
#define DENY   0xB3
 
#define NOTIFY_NEW_PLAYER   0xB4
 
#define MISSION_REQUEST   0xB5
 
#define MISSION_ITEM   0xB6
 
#define GAME_INFO   0xB7
 
#define MULTI_PAUSE_REQUEST   0xB8
 
#define TRANSFER_HOST   0xB9
 
#define CHANGE_SERVER_ADDR   0xBA
 
#define ACCEPT_PLAYER_DATA   0xBB
 
#define BEAM_FIRED   0xBC
 
#define SW_STD_QUERY   0xBD
 
#define HUD_MSG   0xC1
 
#define LEAVE_GAME   0xC2
 
#define GAME_CHAT   0xC3
 
#define MISSION_MESSAGE   0xC4
 
#define SHIP_DEPART   0xC5
 
#define SHIPS_INGAME_PACKET   0xC6
 
#define WINGS_INGAME_PACKET   0xC7
 
#define MISSION_END   0xC8
 
#define INGAME_NAK   0xC9
 
#define OBSERVER_UPDATE   0xCA
 
#define SQUADMSG_PLAYER   0xCB
 
#define OBJ_UPDATE_SYNC   0xCC
 
#define FORCE_MISSION_END   0xCD
 
#define WEAPON_DET   0xD1
 
#define SHIP_KILL   0xD2
 
#define WING_CREATE   0xD3
 
#define SHIP_CREATE   0xD4
 
#define PING   0xD5
 
#define PONG   0xD6
 
#define XFER_PACKET   0xD7
 
#define VOICE_PACKET   0xD8
 
#define NETGAME_END_ERROR   0xD9
 
#define COUNTERMEASURE_SUCCESS   0xDA
 
#define REINFORCEMENT_AVAIL   0xDB
 
#define LIGHTNING_PACKET   0xDC
 
#define BYTES_SENT   0xDD
 
#define GAME_ACTIVE   0xE1
 
#define GAME_QUERY   0xE2
 
#define GAME_UPDATE   0xE3
 
#define NETPLAYER_UPDATE   0xE4
 
#define OBJECT_UPDATE   0xE6
 
#define MISSION_LOG_ENTRY   0xE7
 
#define UPDATE_DESCRIPT   0xE8
 
#define COUNTDOWN   0xE9
 
#define DEBRIEF_INFO   0xEA
 
#define EMP_EFFECT   0xEB
 
#define CHANGE_IFF   0xEC
 
#define CARGO_HIDDEN   0xED
 
#define SUBSYS_CARGO_HIDDEN   0xEE
 
#define CHANGE_AI_CLASS   0xEF
 
#define NO_SUBSYS_STRING   "NO-SUBSYS"
 
#define VARIABLE_UPDATE   0xF0
 
#define WEAPON_OR_AMMO_CHANGED   0xF1
 
#define SEXP   0xF2
 
#define CHANGE_IFF_COLOR   0xF3
 
#define MAX_TYPE_ID   0xFF
 
#define ACK_RESPAWN_POINTS   0x1
 
#define ACK_FILE_ACCEPTED   0x2
 
#define ACK_FILE_REJECTED   0x3
 
#define JOIN_DENY_JR_STATE   0
 
#define JOIN_DENY_JR_TRACKER_INVAL   1
 
#define JOIN_DENY_JR_PASSWD   2
 
#define JOIN_DENY_JR_CLOSED   3
 
#define JOIN_DENY_JR_RANK_HIGH   4
 
#define JOIN_DENY_JR_RANK_LOW   5
 
#define JOIN_DENY_JR_DUP   6
 
#define JOIN_DENY_JR_FULL   7
 
#define JOIN_DENY_JR_TEMP_CLOSED   8
 
#define JOIN_DENY_JR_BANNED   9
 
#define JOIN_DENY_JR_NOOBS   10
 
#define JOIN_DENY_JR_INGAME_JOIN   11
 
#define JOIN_DENY_JR_BAD_VERSION   12
 
#define JOIN_QUERY_RESTRICTED   13
 
#define JOIN_DENY_JR_TYPE   14
 
#define REPAIR_INFO_BEGIN   0x1
 
#define REPAIR_INFO_END   0x2
 
#define REPAIR_INFO_UPDATE   0x3
 
#define REPAIR_INFO_QUEUE   0x4
 
#define REPAIR_INFO_ABORT   0x5
 
#define REPAIR_INFO_BROKEN   0x6
 
#define REPAIR_INFO_WARP_ADD   0x7
 
#define REPAIR_INFO_WARP_REMOVE   0x8
 
#define REPAIR_INFO_ONWAY   0x9
 
#define REPAIR_INFO_KILLED   0xa
 
#define REPAIR_INFO_COMPLETE   0xb
 
#define DEBRIS_UPDATE_UPDATE   0x1
 
#define DEBRIS_UPDATE_REMOVE   0x2
 
#define DEBRIS_UPDATE_NUKE   0x3
 
#define DEBRIS_UPDATE_CREATE_HULL   0x4
 
#define WSS_WEAPON_SELECT   0x1
 
#define WSS_SHIP_SELECT   0x2
 
#define ACCEPT_INGAME   (1<<0)
 
#define ACCEPT_HOST   (1<<1)
 
#define ACCEPT_OBSERVER   (1<<2)
 
#define ACCEPT_CLIENT   (1<<3)
 
#define APD_NEXT   0
 
#define APD_END_PACKET   1
 
#define APD_END_DATA   2
 
#define INGAME_SR_REQUEST   0x1
 
#define INGAME_SR_CONFIRM   0x2
 
#define INGAME_SR_DENY   0x3
 
#define INGAME_PLAYER_CHOICE   0x4
 
#define AI_UPDATE_DOCK   0x1
 
#define AI_UPDATE_UNDOCK   0x2
 
#define AI_UPDATE_ORDERS   0x3
 
#define MISSION_LIST_REQUEST   0x1
 
#define CAMPAIGN_LIST_REQUEST   0x2
 
#define ASTEROID_CREATE   0x1
 
#define ASTEROID_THROW   0x2
 
#define ASTEROID_HIT   0x3
 
#define SQUAD_MSG_SHIP   0x1
 
#define SQUAD_MSG_WING   0x2
 
#define SQUAD_MSG_ALL   0x3
 
#define SQUAD_MSG_REINFORCEMENT   0x4
 
#define SW_STD_START   0x1
 
#define SW_STD_OK   0x2
 
#define SW_STD_BAD   0x3
 
#define STATS_MISSION   0
 
#define STATS_ALLTIME   1
 
#define STATS_MISSION_KILLS   2
 
#define STATS_DOGFIGHT_KILLS   3
 
#define STATS_MISSION_CLASS_KILLS   4
 
#define STATS_ALLTIME_KILLS   5
 
#define MAX_SHIPS_PER_PACKET   64
 
#define AG_FLAG_COOP   (1<<0)
 
#define AG_FLAG_TEAMS   (1<<1)
 
#define AG_FLAG_DOGFIGHT   (1<<2)
 
#define AG_FLAG_FORMING   (1<<3)
 
#define AG_FLAG_BRIEFING   (1<<4)
 
#define AG_FLAG_DEBRIEF   (1<<5)
 
#define AG_FLAG_PAUSE   (1<<6)
 
#define AG_FLAG_IN_MISSION   (1<<7)
 
#define AG_FLAG_PASSWD   (1<<8)
 
#define AG_FLAG_STANDALONE   (1<<9)
 
#define AG_FLAG_CAMPAIGN   (1<<10)
 
#define AG_FLAG_TRACKER   (1<<11)
 
#define AG_FLAG_CONNECTION_SPEED_MASK   ((1<<12)|(1<<13)|(1<<14))
 
#define AG_FLAG_VALID_MISSION   (1<<15)
 
#define AG_FLAG_CONNECTION_BIT   12
 
#define AG_FLAG_TYPE_MASK   (AG_FLAG_COOP|AG_FLAG_TEAMS|AG_FLAG_DOGFIGHT)
 
#define AG_FLAG_STATE_MASK   (AG_FLAG_FORMING|AG_FLAG_BRIEFING|AG_FLAG_DEBRIEF|AG_FLAG_PAUSE|AG_FLAG_IN_MISSION)
 
#define JOIN_FLAG_AS_OBSERVER   (1<<0)
 
#define JOIN_FLAG_HAXOR   (1<<2)
 
#define NETINFO_FLAG_CONNECTED   (1<<0)
 
#define NETINFO_FLAG_AM_MASTER   (1<<1)
 
#define NETINFO_FLAG_MT_CONNECTED   (1<<2)
 
#define NETINFO_FLAG_MT_FAILED   (1<<3)
 
#define NETINFO_FLAG_MT_STARTUP   (1<<4)
 
#define NETINFO_FLAG_GAME_HOST   (1<<5)
 
#define NETINFO_FLAG_INGAME_JOIN   (1<<6)
 
#define NETINFO_FLAG_OBSERVER   (1<<7)
 
#define NETINFO_FLAG_OBS_PLAYER   (1<<8)
 
#define NETINFO_FLAG_LIMBO   (1<<9)
 
#define NETINFO_FLAG_MISSION_OK   (1<<10)
 
#define NETINFO_FLAG_RESPAWNING   (1<<11)
 
#define NETINFO_FLAG_DO_NETWORKING   (1<<12)
 
#define NETINFO_FLAG_TEAM_LOCKED   (1<<13)
 
#define NETINFO_FLAG_TEAM_CAPTAIN   (1<<14)
 
#define NETINFO_FLAG_KICKED   (1<<15)
 
#define NETINFO_FLAG_ACCEPT_INGAME   (1<<16)
 
#define NETINFO_FLAG_ACCEPT_HOST   (1<<17)
 
#define NETINFO_FLAG_ACCEPT_OBSERVER   (1<<18)
 
#define NETINFO_FLAG_ACCEPT_CLIENT   (1<<19)
 
#define NETINFO_FLAG_WARPING_OUT   (1<<20)
 
#define NETINFO_FLAG_HAS_CD   (1<<21)
 
#define NETINFO_FLAG_RELIABLE_CONNECTED   (1<<22)
 
#define NETINFO_FLAG_MT_GET_FAILED   (1<<23)
 
#define NETINFO_FLAG_MT_SEND_FAILED   (1<<24)
 
#define NETINFO_FLAG_MT_DONE   (1<<25)
 
#define NETINFO_FLAG_HAXOR   (1<<26)
 
#define NETPLAYER_IS_OBSERVER(player)   (player->flags & (NETINFO_FLAG_OBSERVER|NETINFO_FLAG_OBS_PLAYER))
 
#define NETPLAYER_IS_DEAD(player)   (player->flags & (NETINFO_FLAG_LIMBO|NETINFO_FLAG_RESPAWNING))
 
#define NG_MODE_OPEN   1
 
#define NG_MODE_CLOSED   2
 
#define NG_MODE_PASSWORD   3
 
#define NG_MODE_RESTRICTED   4
 
#define NG_MODE_RANK_ABOVE   5
 
#define NG_MODE_RANK_BELOW   6
 
#define NG_FLAG_TEMP_CLOSED   (1<<0)
 
#define NG_FLAG_SERVER_LOST   (1<<1)
 
#define NG_FLAG_INGAME_JOINING   (1<<2)
 
#define NG_FLAG_INGAME_JOINING_CRITICAL   (1<<3)
 
#define NG_FLAG_STORED_MT_STATS   (1<<4)
 
#define NG_FLAG_HACKED_SHIPS_TBL   (1<<5)
 
#define NG_FLAG_HACKED_WEAPONS_TBL   (1<<6)
 
#define NG_TYPE_COOP   (1<<0)
 
#define NG_TYPE_TVT   (1<<1)
 
#define NG_TYPE_SW   (1<<2)
 
#define NG_TYPE_TEAM   ( NG_TYPE_TVT | NG_TYPE_SW )
 
#define NG_TYPE_DOGFIGHT   (1<<3)
 
#define MULTI_COOP   ((Game_mode & GM_MULTIPLAYER) && (Netgame.type_flags & NG_TYPE_COOP))
 
#define MULTI_TEAM   ((Game_mode & GM_MULTIPLAYER) && (Netgame.type_flags & NG_TYPE_TEAM))
 
#define MULTI_DOGFIGHT   ((Game_mode & GM_MULTIPLAYER) && (Netgame.type_flags & NG_TYPE_DOGFIGHT))
 
#define MULTI_NOT_COOP   ((Game_mode & GM_MULTIPLAYER) && !(Netgame.type_flags & NG_TYPE_COOP))
 
#define MULTI_NOT_TEAM   ((Game_mode & GM_MULTIPLAYER) && !(Netgame.type_flags & NG_TYPE_TEAM))
 
#define MULTI_NOT_DOGFIGHT   ((Game_mode & GM_MULTIPLAYER) && !(Netgame.type_flags & NG_TYPE_DOGFIGHT))
 
#define NETGAME_STATE_FORMING   1
 
#define NETGAME_STATE_BRIEFING   2
 
#define NETGAME_STATE_IN_MISSION   3
 
#define NETGAME_STATE_SERVER_TRANSFER   4
 
#define NETGAME_STATE_PAUSED   5
 
#define NETGAME_STATE_DEBRIEF   6
 
#define NETGAME_STATE_MISSION_SYNC   7
 
#define NETGAME_STATE_ENDGAME   8
 
#define NETGAME_STATE_STD_HOST_SETUP   9
 
#define NETGAME_STATE_HOST_SETUP   10
 
#define NETPLAYER_STATE_JOINING   0
 
#define NETPLAYER_STATE_JOINED   1
 
#define NETPLAYER_STATE_MISSION_LOADING   2
 
#define NETPLAYER_STATE_MISSION_LOADED   3
 
#define NETPLAYER_STATE_BRIEFING   4
 
#define NETPLAYER_STATE_SHIP_SELECT   5
 
#define NETPLAYER_STATE_WEAPON_SELECT   6
 
#define NETPLAYER_STATE_DATA_LOAD   7
 
#define NETPLAYER_STATE_WAITING   8
 
#define NETPLAYER_STATE_SLOT_ACK   9
 
#define NETPLAYER_STATE_IN_MISSION   10
 
#define NETPLAYER_STATE_INGAME_SHIPS   11
 
#define NETPLAYER_STATE_INGAME_WINGS   12
 
#define NETPLAYER_STATE_INGAME_RPTS   13
 
#define NETPLAYER_STATE_INGAME_SHIP_SELECT   14
 
#define NETPLAYER_STATE_DEBRIEF   15
 
#define NETPLAYER_STATE_MISSION_SYNC   16
 
#define NETPLAYER_STATE_STD_HOST_SETUP   17
 
#define NETPLAYER_STATE_HOST_SETUP   18
 
#define NETPLAYER_STATE_SETTINGS_ACK   19
 
#define NETPLAYER_STATE_SLOTS_ACK   20
 
#define NETPLAYER_STATE_POST_DATA_ACK   21
 
#define NETPLAYER_STATE_WSS_ACK   22
 
#define NETPLAYER_STATE_FLAG_ACK   23
 
#define NETPLAYER_STATE_MT_STATS   24
 
#define NETPLAYER_STATE_MISSION_XFER   25
 
#define NETPLAYER_STATE_INGAME_STUFF   26
 
#define NETPLAYER_STATE_DEBRIEF_ACCEPT   27
 
#define NETPLAYER_STATE_DEBRIEF_REPLAY   28
 
#define NETPLAYER_STATE_CPOOL_ACK   29
 
#define NETPLAYER_STATE_INGAME_CINFO   30
 
#define CONNECTION_SPEED_NONE   -1
 
#define CONNECTION_SPEED_288   0
 
#define CONNECTION_SPEED_56K   1
 
#define CONNECTION_SPEED_SISDN   2
 
#define CONNECTION_SPEED_CABLE   3
 
#define CONNECTION_SPEED_T1   4
 
#define MULTI_IN_MISSION   ( (Netgame.game_state == NETGAME_STATE_IN_MISSION) || (Netgame.game_state == NETGAME_STATE_PAUSED) )
 
#define SHIP_SIG_MIN   1
 
#define SHIP_SIG_MAX   (0x2fff)
 
#define STANDALONE_SHIP_SIG   (SHIP_SIG_MAX+1)
 
#define REAL_SHIP_SIG_MAX   (0x3fff)
 
#define DEBRIS_SIG_MIN   (REAL_SHIP_SIG_MAX+1)
 
#define DEBRIS_SIG_MAX   (0x5fff)
 
#define ASTEROID_SIG_MIN   (DEBRIS_SIG_MAX+1)
 
#define ASTEROID_SIG_MAX   (0x7fff)
 
#define NPERM_SIG_MIN   (ASTEROID_SIG_MAX+1)
 
#define NPERM_SIG_MAX   (0xffff)
 
#define MULTI_QUERY_RESTR_STAMP   5000
 
#define MULTI_JOIN_RESTR_MODE_1   0
 
#define MULTI_JOIN_RESTR_MODE_2   1
 
#define MULTI_JOIN_RESTR_MODE_3   2
 
#define MULTI_JOIN_RESTR_MODE_4   3
 
#define MULTI_TRACKER_STRING_LEN   100
 

Typedefs

typedef struct header header
 
typedef struct net_player_server_info net_player_server_info
 
typedef struct net_player_info net_player_info
 
typedef struct net_player net_player
 
typedef struct netgame_info netgame_info
 
typedef struct active_game active_game
 
typedef struct server_item server_item
 
typedef struct join_request join_request
 
typedef struct network_buffer network_buffer
 

Functions

void multi_init ()
 
void multi_level_init ()
 
void multi_reset_timestamps ()
 
int multi_client_server_dead ()
 
void multi_do_frame ()
 
void multi_pause_do_frame ()
 
void multi_process_reliable_details ()
 
void standalone_main_init ()
 
void standalone_main_do ()
 
void standalone_main_close ()
 
void multi_standalone_reset_all ()
 
void multi_standalone_wait_init ()
 
void multi_standalone_wait_do ()
 
void multi_standalone_wait_close ()
 
void multi_standalone_postgame_init ()
 
void multi_standalone_postgame_do ()
 
void multi_standalone_postgame_close ()
 

Variables

int Om_tracker_flag
 
int Multi_connection_speed
 
net_player Net_players [MAX_PLAYERS]
 
net_playerNet_player
 
ushort Next_ship_signature
 
ushort Next_asteroid_signature
 
ushort Next_non_perm_signature
 
ushort Next_debris_signature
 
netgame_info Netgame
 
int Multi_mission_loaded
 
ushort Multi_ingame_join_sig
 
int Multi_button_info_ok
 
int Multi_button_info_id
 
int ADDRESS_LENGTH
 
int PORT_LENGTH
 
int HEADER_LENGTH
 
active_gameActive_game_head
 
int Active_game_count
 
CFILEMulti_chat_stream
 
int Multi_has_cd
 
int Multi_num_players_at_start
 
short Multi_id_num
 
server_itemGame_server_head
 
int Multi_restr_query_timestamp
 
join_request Multi_restr_join_request
 
net_addr Multi_restr_addr
 
int Multi_join_restr_mode
 
char Multi_tracker_login [MULTI_TRACKER_STRING_LEN+1]
 
char Multi_tracker_passwd [MULTI_TRACKER_STRING_LEN+1]
 
char Multi_tracker_squad_name [MULTI_TRACKER_STRING_LEN+1]
 
int Multi_tracker_id
 
char Multi_tracker_id_string [255]
 
ushort Multi_current_file_checksum
 
int Multi_current_file_length
 

Macro Definition Documentation

#define ACCEPT   0xB2

Definition at line 213 of file multi.h.

#define ACCEPT_CLIENT   (1<<3)

Definition at line 328 of file multi.h.

#define ACCEPT_HOST   (1<<1)

Definition at line 326 of file multi.h.

#define ACCEPT_INGAME   (1<<0)

Definition at line 325 of file multi.h.

#define ACCEPT_OBSERVER   (1<<2)

Definition at line 327 of file multi.h.

#define ACCEPT_PLAYER_DATA   0xBB

Definition at line 222 of file multi.h.

#define ACK_FILE_ACCEPTED   0x2

Definition at line 281 of file multi.h.

#define ACK_FILE_REJECTED   0x3

Definition at line 282 of file multi.h.

#define ACK_RESPAWN_POINTS   0x1

Definition at line 280 of file multi.h.

#define AG_FLAG_BRIEFING   (1<<4)

Definition at line 525 of file multi.h.

#define AG_FLAG_CAMPAIGN   (1<<10)

Definition at line 531 of file multi.h.

#define AG_FLAG_CONNECTION_BIT   12

Definition at line 539 of file multi.h.

#define AG_FLAG_CONNECTION_SPEED_MASK   ((1<<12)|(1<<13)|(1<<14))

Definition at line 535 of file multi.h.

#define AG_FLAG_COOP   (1<<0)

Definition at line 521 of file multi.h.

#define AG_FLAG_DEBRIEF   (1<<5)

Definition at line 526 of file multi.h.

#define AG_FLAG_DOGFIGHT   (1<<2)

Definition at line 523 of file multi.h.

#define AG_FLAG_FORMING   (1<<3)

Definition at line 524 of file multi.h.

#define AG_FLAG_IN_MISSION   (1<<7)

Definition at line 528 of file multi.h.

#define AG_FLAG_PASSWD   (1<<8)

Definition at line 529 of file multi.h.

#define AG_FLAG_PAUSE   (1<<6)

Definition at line 527 of file multi.h.

#define AG_FLAG_STANDALONE   (1<<9)

Definition at line 530 of file multi.h.

Definition at line 542 of file multi.h.

#define AG_FLAG_TEAMS   (1<<1)

Definition at line 522 of file multi.h.

#define AG_FLAG_TRACKER   (1<<11)

Definition at line 532 of file multi.h.

#define AG_FLAG_TYPE_MASK   (AG_FLAG_COOP|AG_FLAG_TEAMS|AG_FLAG_DOGFIGHT)

Definition at line 541 of file multi.h.

#define AG_FLAG_VALID_MISSION   (1<<15)

Definition at line 537 of file multi.h.

#define AI_INFO_UPDATE   0xA6

Definition at line 205 of file multi.h.

#define AI_UPDATE_DOCK   0x1

Definition at line 342 of file multi.h.

#define AI_UPDATE_ORDERS   0x3

Definition at line 344 of file multi.h.

#define AI_UPDATE_UNDOCK   0x2

Definition at line 343 of file multi.h.

#define APD_END_DATA   2

Definition at line 333 of file multi.h.

#define APD_END_PACKET   1

Definition at line 332 of file multi.h.

#define APD_NEXT   0

Definition at line 331 of file multi.h.

#define ASTEROID_CREATE   0x1

Definition at line 351 of file multi.h.

#define ASTEROID_HIT   0x3

Definition at line 353 of file multi.h.

#define ASTEROID_INFO   0x19

Definition at line 179 of file multi.h.

#define ASTEROID_SIG_MAX   (0x7fff)

Definition at line 745 of file multi.h.

#define ASTEROID_SIG_MIN   (DEBRIS_SIG_MAX+1)

Definition at line 744 of file multi.h.

#define ASTEROID_THROW   0x2

Definition at line 352 of file multi.h.

#define BEAM_FIRED   0xBC

Definition at line 223 of file multi.h.

#define BUTTON_INFO_SAVE_COUNT   30

Definition at line 105 of file multi.h.

#define BYTES_SENT   0xDD

Definition at line 252 of file multi.h.

#define CAMPAIGN_LIST_REQUEST   0x2

Definition at line 348 of file multi.h.

#define CAMPAIGN_UPDATE   0xA7

Definition at line 206 of file multi.h.

#define CAMPAIGN_UPDATE_INGAME   0xA8

Definition at line 207 of file multi.h.

#define CARGO_HIDDEN   0xED

Definition at line 266 of file multi.h.

#define CARGO_REVEALED   0x0E

Definition at line 167 of file multi.h.

#define CD_VERIFY   0x2A

Definition at line 194 of file multi.h.

#define CHANGE_AI_CLASS   0xEF

Definition at line 269 of file multi.h.

#define CHANGE_IFF   0xEC

Definition at line 264 of file multi.h.

#define CHANGE_IFF_COLOR   0xF3

Definition at line 275 of file multi.h.

#define CHANGE_SERVER_ADDR   0xBA

Definition at line 221 of file multi.h.

#define CLIENT_REPAIR_INFO   0x0C

Definition at line 166 of file multi.h.

#define CLIENT_UPDATE   0x29

Definition at line 193 of file multi.h.

#define CONNECTION_SPEED_288   0

Definition at line 711 of file multi.h.

#define CONNECTION_SPEED_56K   1

Definition at line 712 of file multi.h.

#define CONNECTION_SPEED_CABLE   3

Definition at line 714 of file multi.h.

#define CONNECTION_SPEED_NONE   -1

Definition at line 709 of file multi.h.

#define CONNECTION_SPEED_SISDN   2

Definition at line 713 of file multi.h.

#define CONNECTION_SPEED_T1   4

Definition at line 715 of file multi.h.

#define COUNTDOWN   0xE9

Definition at line 261 of file multi.h.

#define COUNTERMEASURE_FIRED   0xA2

Definition at line 201 of file multi.h.

#define COUNTERMEASURE_NEW   0x2C

Definition at line 196 of file multi.h.

#define COUNTERMEASURE_SUCCESS   0xDA

Definition at line 249 of file multi.h.

#define DEBRIEF_INFO   0xEA

Definition at line 262 of file multi.h.

#define DEBRIS_SIG_MAX   (0x5fff)

Definition at line 742 of file multi.h.

#define DEBRIS_SIG_MIN   (REAL_SHIP_SIG_MAX+1)

Definition at line 741 of file multi.h.

#define DEBRIS_UPDATE   0x13

Definition at line 173 of file multi.h.

#define DEBRIS_UPDATE_CREATE_HULL   0x4

Definition at line 318 of file multi.h.

#define DEBRIS_UPDATE_NUKE   0x3

Definition at line 317 of file multi.h.

#define DEBRIS_UPDATE_REMOVE   0x2

Definition at line 316 of file multi.h.

#define DEBRIS_UPDATE_UPDATE   0x1

Definition at line 315 of file multi.h.

#define DENY   0xB3

Definition at line 214 of file multi.h.

#define DESCRIPT_LENGTH   512

Definition at line 89 of file multi.h.

#define EMP_EFFECT   0xEB

Definition at line 263 of file multi.h.

#define EVENT_UPDATE   0x2D

Definition at line 197 of file multi.h.

#define FILE_SIG_INFO   0x06

Definition at line 160 of file multi.h.

#define FILE_SIG_REQUEST   0x09

Definition at line 163 of file multi.h.

#define FIRE_TURRET_WEAPON   0xA3

Definition at line 202 of file multi.h.

#define FIRING_INFO   0x02

Definition at line 156 of file multi.h.

#define FLAK_FIRED   0xAA

Definition at line 209 of file multi.h.

#define FORCE_MISSION_END   0xCD

Definition at line 238 of file multi.h.

#define GAME_ACTIVE   0xE1

Definition at line 254 of file multi.h.

#define GAME_CHAT   0xC3

Definition at line 228 of file multi.h.

#define GAME_INFO   0xB7

Definition at line 218 of file multi.h.

#define GAME_QUERY   0xE2

Definition at line 255 of file multi.h.

#define GAME_UPDATE   0xE3

Definition at line 256 of file multi.h.

#define HOMING_WEAPON_UPDATE   0xA9

Definition at line 208 of file multi.h.

#define HOST_RESTR_QUERY   0x27

Definition at line 191 of file multi.h.

#define HUD_MSG   0xC1

Definition at line 226 of file multi.h.

#define INGAME_EXTRA   0x26

Definition at line 190 of file multi.h.

#define INGAME_NAK   0xC9

Definition at line 234 of file multi.h.

#define INGAME_PLAYER_CHOICE   0x4

Definition at line 339 of file multi.h.

#define INGAME_SHIP_REQUEST   0x04

Definition at line 158 of file multi.h.

#define INGAME_SHIP_UPDATE   0x03

Definition at line 157 of file multi.h.

#define INGAME_SR_CONFIRM   0x2

Definition at line 337 of file multi.h.

#define INGAME_SR_DENY   0x3

Definition at line 338 of file multi.h.

#define INGAME_SR_REQUEST   0x1

Definition at line 336 of file multi.h.

#define IP_ADDRESS_LENGTH   4

Definition at line 93 of file multi.h.

#define IP_PORT_LENGTH   2

Definition at line 94 of file multi.h.

#define JOIN   0xB1

Definition at line 212 of file multi.h.

#define JOIN_DENY_JR_BAD_VERSION   12

Definition at line 297 of file multi.h.

#define JOIN_DENY_JR_BANNED   9

Definition at line 294 of file multi.h.

#define JOIN_DENY_JR_CLOSED   3

Definition at line 288 of file multi.h.

#define JOIN_DENY_JR_DUP   6

Definition at line 291 of file multi.h.

#define JOIN_DENY_JR_FULL   7

Definition at line 292 of file multi.h.

#define JOIN_DENY_JR_INGAME_JOIN   11

Definition at line 296 of file multi.h.

#define JOIN_DENY_JR_NOOBS   10

Definition at line 295 of file multi.h.

#define JOIN_DENY_JR_PASSWD   2

Definition at line 287 of file multi.h.

#define JOIN_DENY_JR_RANK_HIGH   4

Definition at line 289 of file multi.h.

#define JOIN_DENY_JR_RANK_LOW   5

Definition at line 290 of file multi.h.

#define JOIN_DENY_JR_STATE   0

Definition at line 285 of file multi.h.

#define JOIN_DENY_JR_TEMP_CLOSED   8

Definition at line 293 of file multi.h.

#define JOIN_DENY_JR_TRACKER_INVAL   1

Definition at line 286 of file multi.h.

#define JOIN_DENY_JR_TYPE   14

Definition at line 299 of file multi.h.

#define JOIN_FLAG_AS_OBSERVER   (1<<0)

Definition at line 566 of file multi.h.

#define JOIN_FLAG_HAXOR   (1<<2)

Definition at line 567 of file multi.h.

#define JOIN_QUERY_RESTRICTED   13

Definition at line 298 of file multi.h.

#define JUMP_INTO_GAME   0x0A

Definition at line 164 of file multi.h.

#define KICK_PLAYER   0x17

Definition at line 177 of file multi.h.

#define LEAVE_GAME   0xC2

Definition at line 227 of file multi.h.

#define LIGHTNING_PACKET   0xDC

Definition at line 251 of file multi.h.

#define LOAD_MISSION_NOW   0x08

Definition at line 162 of file multi.h.

#define LOGIN_LEN   33

Definition at line 85 of file multi.h.

#define MAX_GAMENAME_LEN   32

Definition at line 88 of file multi.h.

#define MAX_OBSERVERS   4

Definition at line 83 of file multi.h.

#define MAX_PASSWD_LEN   16

Definition at line 90 of file multi.h.

#define MAX_PINGS   10

Definition at line 106 of file multi.h.

#define MAX_RESPAWN_POINTS   25

Definition at line 102 of file multi.h.

#define MAX_SHIPS_PER_PACKET   64

Definition at line 374 of file multi.h.

#define MAX_TYPE_ID   0xFF

Definition at line 277 of file multi.h.

#define MISSION_END   0xC8

Definition at line 233 of file multi.h.

#define MISSION_GOAL_INFO   0x18

Definition at line 178 of file multi.h.

#define MISSION_ITEM   0xB6

Definition at line 217 of file multi.h.

#define MISSION_LIST_REQUEST   0x1

Definition at line 347 of file multi.h.

#define MISSION_LOG_ENTRY   0xE7

Definition at line 259 of file multi.h.

#define MISSION_MESSAGE   0xC4

Definition at line 229 of file multi.h.

#define MISSION_REQUEST   0xB5

Definition at line 216 of file multi.h.

#define MISSION_SYNC_DATA   0x11

Definition at line 171 of file multi.h.

#define MP_CAMPAIGN   1

Definition at line 98 of file multi.h.

#define MP_SINGLE_MISSION   0

Definition at line 97 of file multi.h.

#define MULTI_CONNECTED (   np)    (np.flags & NETINFO_FLAG_CONNECTED)

Definition at line 136 of file multi.h.

#define MULTI_COOP   ((Game_mode & GM_MULTIPLAYER) && (Netgame.type_flags & NG_TYPE_COOP))

Definition at line 654 of file multi.h.

#define MULTI_DOGFIGHT   ((Game_mode & GM_MULTIPLAYER) && (Netgame.type_flags & NG_TYPE_DOGFIGHT))

Definition at line 656 of file multi.h.

#define MULTI_FS_SERVER_COMPATIBLE_VERSION   MULTI_FS_SERVER_VERSION

Definition at line 67 of file multi.h.

#define MULTI_FS_SERVER_VERSION   147

Definition at line 65 of file multi.h.

#define MULTI_HOST (   np)    (np.flags & NETINFO_FLAG_GAME_HOST)

Definition at line 137 of file multi.h.

#define MULTI_IN_MISSION   ( (Netgame.game_state == NETGAME_STATE_IN_MISSION) || (Netgame.game_state == NETGAME_STATE_PAUSED) )

Definition at line 718 of file multi.h.

#define MULTI_IS_TRACKER_GAME   (Om_tracker_flag)

Definition at line 146 of file multi.h.

#define MULTI_JOIN_RESTR_MODE_1   0

Definition at line 780 of file multi.h.

#define MULTI_JOIN_RESTR_MODE_2   1

Definition at line 781 of file multi.h.

#define MULTI_JOIN_RESTR_MODE_3   2

Definition at line 782 of file multi.h.

#define MULTI_JOIN_RESTR_MODE_4   3

Definition at line 783 of file multi.h.

#define MULTI_MAX_CONNECTIONS   16

Definition at line 80 of file multi.h.

#define MULTI_MAX_PLAYERS   12

Definition at line 77 of file multi.h.

#define MULTI_NOT_COOP   ((Game_mode & GM_MULTIPLAYER) && !(Netgame.type_flags & NG_TYPE_COOP))

Definition at line 659 of file multi.h.

#define MULTI_NOT_DOGFIGHT   ((Game_mode & GM_MULTIPLAYER) && !(Netgame.type_flags & NG_TYPE_DOGFIGHT))

Definition at line 661 of file multi.h.

#define MULTI_NOT_TEAM   ((Game_mode & GM_MULTIPLAYER) && !(Netgame.type_flags & NG_TYPE_TEAM))

Definition at line 660 of file multi.h.

#define MULTI_OBSERVER (   np)    (np.flags & NETINFO_FLAG_OBSERVER)

Definition at line 140 of file multi.h.

#define MULTI_PAUSE_REQUEST   0xB8

Definition at line 219 of file multi.h.

#define MULTI_PERM_OBSERVER (   np)    ((np.flags & NETINFO_FLAG_OBSERVER) && !(np.flags & NETINFO_FLAG_OBS_PLAYER))

Definition at line 142 of file multi.h.

#define MULTI_QUERY_RESTR_STAMP   5000

Definition at line 779 of file multi.h.

#define MULTI_RELIABLE_CONNECT_WAIT   15

Definition at line 109 of file multi.h.

#define MULTI_SERVER (   np)    (np.flags & NETINFO_FLAG_AM_MASTER)

Definition at line 138 of file multi.h.

#define MULTI_STANDALONE (   np)    ((np.flags & NETINFO_FLAG_AM_MASTER) && !(np.flags & NETINFO_FLAG_GAME_HOST))

Definition at line 139 of file multi.h.

#define MULTI_TEAM   ((Game_mode & GM_MULTIPLAYER) && (Netgame.type_flags & NG_TYPE_TEAM))

Definition at line 655 of file multi.h.

#define MULTI_TEMP_OBSERVER (   np)    ((np.flags & NETINFO_FLAG_OBSERVER) && (np.flags & NETINFO_FLAG_OBS_PLAYER))

Definition at line 141 of file multi.h.

#define MULTI_TRACKER_STRING_LEN   100

Definition at line 791 of file multi.h.

#define MULTI_VALID_MISSION_FILE   "mvalid.cfg"

Definition at line 40 of file multi.h.

#define MULTIPLAYER_CLIENT   ( (Game_mode & GM_MULTIPLAYER) && !(Net_player->flags & NETINFO_FLAG_AM_MASTER) )

Definition at line 132 of file multi.h.

#define MULTIPLAYER_HOST   ( (Game_mode & GM_MULTIPLAYER) && (Net_player->flags & NETINFO_FLAG_GAME_HOST) )

Definition at line 131 of file multi.h.

#define MULTIPLAYER_MASTER   ( (Game_mode & GM_MULTIPLAYER) && (Net_player->flags & NETINFO_FLAG_AM_MASTER) )

Definition at line 130 of file multi.h.

#define MULTIPLAYER_STANDALONE   ( (Game_mode & GM_MULTIPLAYER) && (Net_players[0].flags & NETINFO_FLAG_AM_MASTER) && !(Net_players[0].flags & NETINFO_FLAG_GAME_HOST) )

Definition at line 133 of file multi.h.

#define MVALID_STATUS_INVALID   1

Definition at line 114 of file multi.h.

#define MVALID_STATUS_UNKNOWN   -1

Definition at line 112 of file multi.h.

#define MVALID_STATUS_VALID   0

Definition at line 113 of file multi.h.

#define MY_NET_PLAYER_NUM   (NET_PLAYER_INDEX(Net_player))

Definition at line 127 of file multi.h.

#define NET_PLAYER_INDEX (   np)    (np-Net_players)

Definition at line 125 of file multi.h.

#define NET_PLAYER_NUM (   np)    (NET_PLAYER_INDEX(np))

Definition at line 126 of file multi.h.

#define NETGAME_END_ERROR   0xD9

Definition at line 248 of file multi.h.

#define NETGAME_STATE_BRIEFING   2

Definition at line 665 of file multi.h.

#define NETGAME_STATE_DEBRIEF   6

Definition at line 669 of file multi.h.

#define NETGAME_STATE_ENDGAME   8

Definition at line 671 of file multi.h.

#define NETGAME_STATE_FORMING   1

Definition at line 664 of file multi.h.

#define NETGAME_STATE_HOST_SETUP   10

Definition at line 673 of file multi.h.

#define NETGAME_STATE_IN_MISSION   3

Definition at line 666 of file multi.h.

#define NETGAME_STATE_MISSION_SYNC   7

Definition at line 670 of file multi.h.

#define NETGAME_STATE_PAUSED   5

Definition at line 668 of file multi.h.

#define NETGAME_STATE_SERVER_TRANSFER   4

Definition at line 667 of file multi.h.

#define NETGAME_STATE_STD_HOST_SETUP   9

Definition at line 672 of file multi.h.

#define NETINFO_FLAG_ACCEPT_CLIENT   (1<<19)

Definition at line 617 of file multi.h.

#define NETINFO_FLAG_ACCEPT_HOST   (1<<17)

Definition at line 615 of file multi.h.

#define NETINFO_FLAG_ACCEPT_INGAME   (1<<16)

Definition at line 614 of file multi.h.

#define NETINFO_FLAG_ACCEPT_OBSERVER   (1<<18)

Definition at line 616 of file multi.h.

#define NETINFO_FLAG_AM_MASTER   (1<<1)

Definition at line 599 of file multi.h.

#define NETINFO_FLAG_CONNECTED   (1<<0)

Definition at line 598 of file multi.h.

#define NETINFO_FLAG_DO_NETWORKING   (1<<12)

Definition at line 610 of file multi.h.

#define NETINFO_FLAG_GAME_HOST   (1<<5)

Definition at line 603 of file multi.h.

#define NETINFO_FLAG_HAS_CD   (1<<21)

Definition at line 619 of file multi.h.

#define NETINFO_FLAG_HAXOR   (1<<26)

Definition at line 624 of file multi.h.

#define NETINFO_FLAG_INGAME_JOIN   (1<<6)

Definition at line 604 of file multi.h.

#define NETINFO_FLAG_KICKED   (1<<15)

Definition at line 613 of file multi.h.

#define NETINFO_FLAG_LIMBO   (1<<9)

Definition at line 607 of file multi.h.

#define NETINFO_FLAG_MISSION_OK   (1<<10)

Definition at line 608 of file multi.h.

#define NETINFO_FLAG_MT_CONNECTED   (1<<2)

Definition at line 600 of file multi.h.

#define NETINFO_FLAG_MT_DONE   (1<<25)

Definition at line 623 of file multi.h.

#define NETINFO_FLAG_MT_FAILED   (1<<3)

Definition at line 601 of file multi.h.

#define NETINFO_FLAG_MT_GET_FAILED   (1<<23)

Definition at line 621 of file multi.h.

#define NETINFO_FLAG_MT_SEND_FAILED   (1<<24)

Definition at line 622 of file multi.h.

#define NETINFO_FLAG_MT_STARTUP   (1<<4)

Definition at line 602 of file multi.h.

#define NETINFO_FLAG_OBS_PLAYER   (1<<8)

Definition at line 606 of file multi.h.

#define NETINFO_FLAG_OBSERVER   (1<<7)

Definition at line 605 of file multi.h.

#define NETINFO_FLAG_RELIABLE_CONNECTED   (1<<22)

Definition at line 620 of file multi.h.

#define NETINFO_FLAG_RESPAWNING   (1<<11)

Definition at line 609 of file multi.h.

#define NETINFO_FLAG_TEAM_CAPTAIN   (1<<14)

Definition at line 612 of file multi.h.

#define NETINFO_FLAG_TEAM_LOCKED   (1<<13)

Definition at line 611 of file multi.h.

#define NETINFO_FLAG_WARPING_OUT   (1<<20)

Definition at line 618 of file multi.h.

#define NETPLAYER_IS_DEAD (   player)    (player->flags & (NETINFO_FLAG_LIMBO|NETINFO_FLAG_RESPAWNING))

Definition at line 627 of file multi.h.

#define NETPLAYER_IS_OBSERVER (   player)    (player->flags & (NETINFO_FLAG_OBSERVER|NETINFO_FLAG_OBS_PLAYER))

Definition at line 626 of file multi.h.

#define NETPLAYER_PAIN   0x1A

Definition at line 180 of file multi.h.

#define NETPLAYER_SLOTS_P   0x01

Definition at line 155 of file multi.h.

#define NETPLAYER_STATE_BRIEFING   4

Definition at line 680 of file multi.h.

#define NETPLAYER_STATE_CPOOL_ACK   29

Definition at line 705 of file multi.h.

#define NETPLAYER_STATE_DATA_LOAD   7

Definition at line 683 of file multi.h.

#define NETPLAYER_STATE_DEBRIEF   15

Definition at line 691 of file multi.h.

#define NETPLAYER_STATE_DEBRIEF_ACCEPT   27

Definition at line 703 of file multi.h.

#define NETPLAYER_STATE_DEBRIEF_REPLAY   28

Definition at line 704 of file multi.h.

#define NETPLAYER_STATE_FLAG_ACK   23

Definition at line 699 of file multi.h.

#define NETPLAYER_STATE_HOST_SETUP   18

Definition at line 694 of file multi.h.

#define NETPLAYER_STATE_IN_MISSION   10

Definition at line 686 of file multi.h.

#define NETPLAYER_STATE_INGAME_CINFO   30

Definition at line 706 of file multi.h.

#define NETPLAYER_STATE_INGAME_RPTS   13

Definition at line 689 of file multi.h.

#define NETPLAYER_STATE_INGAME_SHIP_SELECT   14

Definition at line 690 of file multi.h.

#define NETPLAYER_STATE_INGAME_SHIPS   11

Definition at line 687 of file multi.h.

#define NETPLAYER_STATE_INGAME_STUFF   26

Definition at line 702 of file multi.h.

#define NETPLAYER_STATE_INGAME_WINGS   12

Definition at line 688 of file multi.h.

#define NETPLAYER_STATE_JOINED   1

Definition at line 677 of file multi.h.

#define NETPLAYER_STATE_JOINING   0

Definition at line 676 of file multi.h.

#define NETPLAYER_STATE_MISSION_LOADED   3

Definition at line 679 of file multi.h.

#define NETPLAYER_STATE_MISSION_LOADING   2

Definition at line 678 of file multi.h.

#define NETPLAYER_STATE_MISSION_SYNC   16

Definition at line 692 of file multi.h.

#define NETPLAYER_STATE_MISSION_XFER   25

Definition at line 701 of file multi.h.

#define NETPLAYER_STATE_MT_STATS   24

Definition at line 700 of file multi.h.

#define NETPLAYER_STATE_POST_DATA_ACK   21

Definition at line 697 of file multi.h.

#define NETPLAYER_STATE_SETTINGS_ACK   19

Definition at line 695 of file multi.h.

#define NETPLAYER_STATE_SHIP_SELECT   5

Definition at line 681 of file multi.h.

#define NETPLAYER_STATE_SLOT_ACK   9

Definition at line 685 of file multi.h.

#define NETPLAYER_STATE_SLOTS_ACK   20

Definition at line 696 of file multi.h.

#define NETPLAYER_STATE_STD_HOST_SETUP   17

Definition at line 693 of file multi.h.

#define NETPLAYER_STATE_WAITING   8

Definition at line 684 of file multi.h.

#define NETPLAYER_STATE_WEAPON_SELECT   6

Definition at line 682 of file multi.h.

#define NETPLAYER_STATE_WSS_ACK   22

Definition at line 698 of file multi.h.

#define NETPLAYER_UPDATE   0xE4

Definition at line 257 of file multi.h.

#define NG_FLAG_HACKED_SHIPS_TBL   (1<<5)

Definition at line 643 of file multi.h.

#define NG_FLAG_HACKED_WEAPONS_TBL   (1<<6)

Definition at line 644 of file multi.h.

#define NG_FLAG_INGAME_JOINING   (1<<2)

Definition at line 640 of file multi.h.

#define NG_FLAG_INGAME_JOINING_CRITICAL   (1<<3)

Definition at line 641 of file multi.h.

#define NG_FLAG_SERVER_LOST   (1<<1)

Definition at line 639 of file multi.h.

#define NG_FLAG_STORED_MT_STATS   (1<<4)

Definition at line 642 of file multi.h.

#define NG_FLAG_TEMP_CLOSED   (1<<0)

Definition at line 638 of file multi.h.

#define NG_MODE_CLOSED   2

Definition at line 631 of file multi.h.

#define NG_MODE_OPEN   1

Definition at line 630 of file multi.h.

#define NG_MODE_PASSWORD   3

Definition at line 632 of file multi.h.

#define NG_MODE_RANK_ABOVE   5

Definition at line 634 of file multi.h.

#define NG_MODE_RANK_BELOW   6

Definition at line 635 of file multi.h.

#define NG_MODE_RESTRICTED   4

Definition at line 633 of file multi.h.

#define NG_TYPE_COOP   (1<<0)

Definition at line 647 of file multi.h.

#define NG_TYPE_DOGFIGHT   (1<<3)

Definition at line 651 of file multi.h.

#define NG_TYPE_SW   (1<<2)

Definition at line 649 of file multi.h.

#define NG_TYPE_TEAM   ( NG_TYPE_TVT | NG_TYPE_SW )

Definition at line 650 of file multi.h.

#define NG_TYPE_TVT   (1<<1)

Definition at line 648 of file multi.h.

#define NG_VERSION_ID   NG_VERSION_ID_FULL

Definition at line 74 of file multi.h.

#define NG_VERSION_ID_FULL   1

Definition at line 71 of file multi.h.

#define NO_SUBSYS_STRING   "NO-SUBSYS"

Definition at line 270 of file multi.h.

#define NOTIFY_NEW_PLAYER   0xB4

Definition at line 215 of file multi.h.

#define NPERM_SIG_MAX   (0xffff)

Definition at line 748 of file multi.h.

#define NPERM_SIG_MIN   (ASTEROID_SIG_MAX+1)

Definition at line 747 of file multi.h.

#define OBJ_UPDATE_SYNC   0xCC

Definition at line 237 of file multi.h.

#define OBJECT_UPDATE   0xE6

Definition at line 258 of file multi.h.

#define OBJECT_UPDATE_NEW   0x1B

Definition at line 181 of file multi.h.

#define OBSERVER_UPDATE   0xCA

Definition at line 235 of file multi.h.

#define OPTIONS_UPDATE   0x28

Definition at line 192 of file multi.h.

#define PING   0xD5

Definition at line 244 of file multi.h.

#define PLAYER_ORDER_PACKET   0xA5

Definition at line 204 of file multi.h.

#define PLAYER_SETTINGS   0x21

Definition at line 185 of file multi.h.

#define PLAYER_STATS   0x23

Definition at line 187 of file multi.h.

#define PONG   0xD6

Definition at line 245 of file multi.h.

#define POST_SYNC_DATA   0x20

Definition at line 184 of file multi.h.

#define PRIMARY_FIRED_NEW   0x2B

Definition at line 195 of file multi.h.

#define REAL_SHIP_SIG_MAX   (0x3fff)

Definition at line 739 of file multi.h.

#define REINFORCEMENT_AVAIL   0xDB

Definition at line 250 of file multi.h.

#define REPAIR_INFO_ABORT   0x5

Definition at line 306 of file multi.h.

#define REPAIR_INFO_BEGIN   0x1

Definition at line 302 of file multi.h.

#define REPAIR_INFO_BROKEN   0x6

Definition at line 307 of file multi.h.

#define REPAIR_INFO_COMPLETE   0xb

Definition at line 312 of file multi.h.

#define REPAIR_INFO_END   0x2

Definition at line 303 of file multi.h.

#define REPAIR_INFO_KILLED   0xa

Definition at line 311 of file multi.h.

#define REPAIR_INFO_ONWAY   0x9

Definition at line 310 of file multi.h.

#define REPAIR_INFO_QUEUE   0x4

Definition at line 305 of file multi.h.

#define REPAIR_INFO_UPDATE   0x3

Definition at line 304 of file multi.h.

#define REPAIR_INFO_WARP_ADD   0x7

Definition at line 308 of file multi.h.

#define REPAIR_INFO_WARP_REMOVE   0x8

Definition at line 309 of file multi.h.

#define RESPAWN_INVUL_TIMESTAMP   5000

Definition at line 101 of file multi.h.

#define RESPAWN_NOTICE   0x07

Definition at line 161 of file multi.h.

#define RESPAWN_POINTS   0x0B

Definition at line 165 of file multi.h.

#define SECONDARY_FIRED_AI   0xA0

Definition at line 199 of file multi.h.

#define SECONDARY_FIRED_PLR   0xA1

Definition at line 200 of file multi.h.

#define SELF_DESTRUCT   0xAB

Definition at line 210 of file multi.h.

#define SEXP   0xF2

Definition at line 274 of file multi.h.

#define SHIELD_EXPLOSION   0x0F

Definition at line 168 of file multi.h.

#define SHIP_CREATE   0xD4

Definition at line 243 of file multi.h.

#define SHIP_DEPART   0xC5

Definition at line 230 of file multi.h.

#define SHIP_KILL   0xD2

Definition at line 241 of file multi.h.

#define SHIP_SIG_MAX   (0x2fff)

Definition at line 736 of file multi.h.

#define SHIP_SIG_MIN   1

Definition at line 735 of file multi.h.

#define SHIP_STATUS_CHANGE   0xA4

Definition at line 203 of file multi.h.

#define SHIP_WSTATE_CHANGE   0x14

Definition at line 174 of file multi.h.

#define SHIPS_INGAME_PACKET   0xC6

Definition at line 231 of file multi.h.

#define SLOT_UPDATE   0x24

Definition at line 188 of file multi.h.

#define SQUAD_MSG_ALL   0x3

Definition at line 358 of file multi.h.

#define SQUAD_MSG_REINFORCEMENT   0x4

Definition at line 359 of file multi.h.

#define SQUAD_MSG_SHIP   0x1

Definition at line 356 of file multi.h.

#define SQUAD_MSG_WING   0x2

Definition at line 357 of file multi.h.

#define SQUADMSG_PLAYER   0xCB

Definition at line 236 of file multi.h.

#define STANDALONE_SHIP_SIG   (SHIP_SIG_MAX+1)

Definition at line 738 of file multi.h.

#define STATS_ALLTIME   1

Definition at line 368 of file multi.h.

#define STATS_ALLTIME_KILLS   5

Definition at line 372 of file multi.h.

#define STATS_DOGFIGHT_KILLS   3

Definition at line 370 of file multi.h.

#define STATS_MISSION   0

Definition at line 367 of file multi.h.

#define STATS_MISSION_CLASS_KILLS   4

Definition at line 371 of file multi.h.

#define STATS_MISSION_KILLS   2

Definition at line 369 of file multi.h.

#define STORE_MISSION_STATS   0x12

Definition at line 172 of file multi.h.

#define SUBSYS_CARGO_HIDDEN   0xEE

Definition at line 267 of file multi.h.

#define SUBSYS_CARGO_REVEALED   0X1C

Definition at line 182 of file multi.h.

#define SUBSYSTEM_DESTROYED   0x10

Definition at line 170 of file multi.h.

#define SW_STD_BAD   0x3

Definition at line 364 of file multi.h.

#define SW_STD_OK   0x2

Definition at line 363 of file multi.h.

#define SW_STD_QUERY   0xBD

Definition at line 224 of file multi.h.

#define SW_STD_START   0x1

Definition at line 362 of file multi.h.

#define TEAM_SELECT_UPDATE   0x05

Definition at line 159 of file multi.h.

#define TEAM_UPDATE   0x25

Definition at line 189 of file multi.h.

#define TRANSFER_HOST   0xB9

Definition at line 220 of file multi.h.

#define UPDATE_DESCRIPT   0xE8

Definition at line 260 of file multi.h.

#define VARIABLE_UPDATE   0xF0

Definition at line 272 of file multi.h.

#define VOICE_PACKET   0xD8

Definition at line 247 of file multi.h.

#define WEAPON_DET   0xD1

Definition at line 240 of file multi.h.

#define WEAPON_OR_AMMO_CHANGED   0xF1

Definition at line 273 of file multi.h.

#define WING_CREATE   0xD3

Definition at line 242 of file multi.h.

#define WINGS_INGAME_PACKET   0xC7

Definition at line 232 of file multi.h.

#define WSS_REQUEST_PACKET   0x15

Definition at line 175 of file multi.h.

#define WSS_SHIP_SELECT   0x2

Definition at line 322 of file multi.h.

#define WSS_SLOTS_DATA   0x22

Definition at line 186 of file multi.h.

#define WSS_UPDATE_PACKET   0x16

Definition at line 176 of file multi.h.

#define WSS_WEAPON_SELECT   0x1

Definition at line 321 of file multi.h.

#define XFER_PACKET   0xD7

Definition at line 246 of file multi.h.

Typedef Documentation

typedef struct active_game active_game
typedef struct header header
typedef struct join_request join_request
typedef struct net_player net_player
typedef struct netgame_info netgame_info
typedef struct server_item server_item

Function Documentation

int multi_client_server_dead ( )

Definition at line 376 of file multi.cpp.

void multi_do_frame ( )

Definition at line 1122 of file multi.cpp.

void multi_init ( )

Definition at line 160 of file multi.cpp.

void multi_level_init ( )

Definition at line 253 of file multi.cpp.

void multi_pause_do_frame ( )

Definition at line 1329 of file multi.cpp.

void multi_process_reliable_details ( )

Definition at line 996 of file multi.cpp.

void multi_reset_timestamps ( )

Definition at line 1741 of file multi.cpp.

void multi_standalone_postgame_close ( )

Definition at line 1736 of file multi.cpp.

void multi_standalone_postgame_do ( )

Definition at line 1721 of file multi.cpp.

void multi_standalone_postgame_init ( )

Definition at line 1690 of file multi.cpp.

void multi_standalone_reset_all ( )

Definition at line 1610 of file multi.cpp.

void multi_standalone_wait_close ( )

Definition at line 1671 of file multi.cpp.

void multi_standalone_wait_do ( )

Definition at line 1663 of file multi.cpp.

void multi_standalone_wait_init ( )

Definition at line 1644 of file multi.cpp.

void standalone_main_close ( )

Definition at line 1605 of file multi.cpp.

void standalone_main_do ( )

Definition at line 1590 of file multi.cpp.

void standalone_main_init ( )

Definition at line 1428 of file multi.cpp.

Variable Documentation

int Active_game_count

Definition at line 110 of file multi.cpp.

active_game* Active_game_head

Definition at line 109 of file multi.cpp.

int ADDRESS_LENGTH

Definition at line 104 of file multi.cpp.

server_item* Game_server_head

Definition at line 118 of file multi.cpp.

int HEADER_LENGTH

Definition at line 106 of file multi.cpp.

int Multi_button_info_id

Definition at line 101 of file multi.cpp.

int Multi_button_info_ok

Definition at line 100 of file multi.cpp.

CFILE* Multi_chat_stream

Definition at line 111 of file multi.cpp.

int Multi_connection_speed

Definition at line 113 of file multi.cpp.

ushort Multi_current_file_checksum

Definition at line 150 of file multi.cpp.

int Multi_current_file_length

Definition at line 151 of file multi.cpp.

int Multi_has_cd

Definition at line 112 of file multi.cpp.

short Multi_id_num

Definition at line 115 of file multi.cpp.

ushort Multi_ingame_join_sig

Definition at line 504 of file multi_ingame.cpp.

int Multi_join_restr_mode

Definition at line 138 of file multi.cpp.

int Multi_mission_loaded

Definition at line 98 of file multi.cpp.

int Multi_num_players_at_start

Definition at line 114 of file multi.cpp.

net_addr Multi_restr_addr

Definition at line 137 of file multi.cpp.

join_request Multi_restr_join_request

Definition at line 136 of file multi.cpp.

int Multi_restr_query_timestamp

Definition at line 135 of file multi.cpp.

int Multi_tracker_id

Definition at line 146 of file multi.cpp.

char Multi_tracker_id_string[255]

Definition at line 147 of file multi.cpp.

char Multi_tracker_login[MULTI_TRACKER_STRING_LEN+1]

Definition at line 143 of file multi.cpp.

char Multi_tracker_passwd[MULTI_TRACKER_STRING_LEN+1]

Definition at line 144 of file multi.cpp.

char Multi_tracker_squad_name[MULTI_TRACKER_STRING_LEN+1]

Definition at line 145 of file multi.cpp.

net_player* Net_player

Definition at line 94 of file multi.cpp.

net_player Net_players[MAX_PLAYERS]

Definition at line 93 of file multi.cpp.

netgame_info Netgame

Definition at line 97 of file multi.cpp.

ushort Next_asteroid_signature

Definition at line 89 of file multiutil.cpp.

ushort Next_debris_signature

Definition at line 91 of file multiutil.cpp.

ushort Next_non_perm_signature

Definition at line 90 of file multiutil.cpp.

ushort Next_ship_signature

Definition at line 88 of file multiutil.cpp.

int Om_tracker_flag

Definition at line 247 of file optionsmenumulti.cpp.

int PORT_LENGTH

Definition at line 105 of file multi.cpp.