ref: dcd0398ab4aad2103d4ab3eca677850087bc28c0
dir: /net_defs.h/
//
// Copyright(C) 2005-2014 Simon Howard
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// DESCRIPTION:
// Definitions for use in networking code.
//
#ifndef NET_DEFS_H
#define NET_DEFS_H
#include <stdio.h>
#include "doomtype.h"
#include "d_ticcmd.h"
extern boolean net_client_connected;
// Absolute maximum number of "nodes" in the game. This is different to
// NET_MAXPLAYERS, as there may be observers that are not participating
// (eg. left/right monitors)
#define MAXNETNODES 16
// The maximum number of players, multiplayer/networking.
// This is the maximum supported by the networking code; individual games
// have their own values for MAXPLAYERS that can be smaller.
#define NET_MAXPLAYERS 8
// Maximum length of a player's name.
#define MAXPLAYERNAME 30
// Networking and tick handling related.
#define BACKUPTICS 128
// Magic number sent when connecting to check this is a valid client
#define NET_MAGIC_NUMBER 1454104972U
// Old magic number used by Chocolate Doom versions before v3.0:
#define NET_OLD_MAGIC_NUMBER 3436803284U
// header field value indicating that the packet is a reliable packet
#define NET_RELIABLE_PACKET (1 << 15)
// Game settings sent by client to server when initiating game start,
// and received from the server by clients when the game starts.
typedef struct
{
int ticdup;
int extratics;
int deathmatch;
int episode;
int nomonsters;
int fast_monsters;
int respawn_monsters;
int map;
int skill;
int gameversion;
int lowres_turn;
int new_sync;
int timelimit;
int loadgame;
int random; // [Strife only]
// These fields are only used by the server when sending a game
// start message:
int num_players;
int consoleplayer;
// Hexen player classes:
int player_classes[NET_MAXPLAYERS];
} net_gamesettings_t;
#endif /* #ifndef NET_DEFS_H */