author | darkvater |
Thu, 23 Dec 2004 00:24:44 +0000 | |
changeset 774 | 258c11431acb |
parent 773 | 0c5d7a4bac3d |
child 785 | e9ca2bcc9c8f |
permissions | -rw-r--r-- |
211 | 1 |
#ifndef NETWORK_H |
2 |
#define NETWORK_H |
|
3 |
||
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
4 |
#include "network_core.h" |
663
3236ec743f75
(svn r1098) -Fix: server without revision build doesn't care about the client's version. Also moved all revision things where it belongs (network.c)
darkvater
parents:
662
diff
changeset
|
5 |
#define NOREV_STRING "norev000" |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
6 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
7 |
#ifdef ENABLE_NETWORK |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
8 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
9 |
// If this line is enable, every frame will have a sync test |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
10 |
// this is not needed in normal games. Normal is like 1 sync in 100 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
11 |
// frames. You can enable this if you have a lot of desyncs on a certain |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
12 |
// game. |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
13 |
// Remember: both client and server have to be compiled with this |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
14 |
// option enabled to make it to work. If one of the two has it disabled |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
15 |
// nothing will happen. |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
16 |
//#define ENABLE_NETWORK_SYNC_EVERY_FRAME |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
17 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
18 |
// In theory sending 1 of the 2 seeds is enough to check for desyncs |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
19 |
// so in theory, this next define can be left off. |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
20 |
//#define NETWORK_SEND_DOUBLE_SEED |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
21 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
22 |
// How many clients can we have? Like.. MAX_PLAYERS - 1 is the amount of |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
23 |
// players that can really play.. so.. a max of 4 spectators.. gives us.. |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
24 |
// MAX_PLAYERS + 3 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
25 |
#define MAX_CLIENTS (MAX_PLAYERS + 3) |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
26 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
27 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
28 |
// Do not change this next line. It should _ALWAYS_ be MAX_CLIENTS + 1 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
29 |
#define MAX_CLIENT_INFO (MAX_CLIENTS + 1) |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
30 |
|
668
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
31 |
/* Stuff for the master-server */ |
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
32 |
#define NETWORK_MASTER_SERVER_PORT 3978 |
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
33 |
#define NETWORK_MASTER_SERVER_HOST "master.openttd.org" |
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
34 |
#define NETWORK_MASTER_SERVER_WELCOME_MESSAGE "OpenTTDRegister" |
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
35 |
|
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
36 |
#define NETWORK_DEFAULT_PORT 3979 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
37 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
38 |
#define MAX_INTERFACES 9 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
39 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
40 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
41 |
// How many vehicle/station types we put over the network |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
42 |
#define NETWORK_VEHICLE_TYPES 5 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
43 |
#define NETWORK_STATION_TYPES 5 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
44 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
45 |
#define NETWORK_NAME_LENGTH 80 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
46 |
#define NETWORK_HOSTNAME_LENGTH 80 |
624
8c17add1acf8
(svn r1054) -Fix: [Network] Redid revision 1024, only a bit more nice this time
truelight
parents:
602
diff
changeset
|
47 |
#define NETWORK_REVISION_LENGTH 10 |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
48 |
#define NETWORK_PASSWORD_LENGTH 20 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
49 |
#define NETWORK_PLAYERS_LENGTH 200 |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
50 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
51 |
// This is the struct used by both client and server |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
52 |
// some fields will be empty on the client (like game_password) by default |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
53 |
// and only filled with data a player enters. |
211 | 54 |
typedef struct NetworkGameInfo { |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
55 |
char server_name[NETWORK_NAME_LENGTH]; // Server name |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
56 |
char hostname[NETWORK_HOSTNAME_LENGTH]; // Hostname of the server (if any) |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
57 |
char server_revision[NETWORK_REVISION_LENGTH]; // The SVN version number the server is using (e.g.: 'r304') |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
58 |
// It even shows a SVN version in release-version, so |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
59 |
// it is easy to compare if a server is of the correct version |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
60 |
byte server_lang; // Language of the server (we should make a nice table for this) |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
61 |
byte use_password; // Is set to != 0 if it uses a password |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
62 |
char server_password[NETWORK_PASSWORD_LENGTH]; // On the server: the game password, on the client: != "" if server has password |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
63 |
byte clients_max; // Max clients allowed on server |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
64 |
byte clients_on; // Current count of clients on server |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
65 |
byte spectators_on; // How many spectators do we have? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
66 |
uint16 game_date; // Current date |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
67 |
uint16 start_date; // When the game started |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
68 |
char map_name[NETWORK_NAME_LENGTH]; // Map which is played ["random" for a randomized map] |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
69 |
uint16 map_width; // Map width |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
70 |
uint16 map_height; // Map height |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
71 |
byte map_set; // Graphical set |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
72 |
bool dedicated; // Is this a dedicated server? |
211 | 73 |
} NetworkGameInfo; |
74 |
||
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
75 |
typedef struct NetworkPlayerInfo { |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
76 |
char company_name[NETWORK_NAME_LENGTH]; // Company name |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
77 |
char password[NETWORK_PASSWORD_LENGTH]; // The password for the player |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
78 |
byte inaugurated_year; // What year the company started in |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
79 |
int64 company_value; // The company value |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
80 |
int64 money; // The amount of money the company has |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
81 |
int64 income; // How much did the company earned last year |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
82 |
uint16 performance; // What was his performance last month? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
83 |
uint16 num_vehicle[NETWORK_VEHICLE_TYPES]; // How many vehicles are there of this type? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
84 |
uint16 num_station[NETWORK_STATION_TYPES]; // How many stations are there of this type? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
85 |
char players[NETWORK_PLAYERS_LENGTH]; // The players that control this company (Name1, name2, ..) |
690
9f449a6b133e
(svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents:
670
diff
changeset
|
86 |
uint16 months_empty; // How many months the company is empty |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
87 |
} NetworkPlayerInfo; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
88 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
89 |
typedef struct NetworkClientInfo { |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
90 |
uint16 client_index; // Index of the client (same as ClientState->index) |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
91 |
char client_name[NETWORK_NAME_LENGTH]; // Name of the client |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
92 |
byte client_lang; // The language of the client |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
93 |
byte client_playas; // As which player is this client playing |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
94 |
uint32 client_ip; // IP-address of the client (so he can be banned) |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
95 |
uint16 join_date; // Gamedate the player has joined |
602
9bbe42a9e3ed
(svn r1026) -Add: [Network] Added unique id, so in network, each client has an
truelight
parents:
600
diff
changeset
|
96 |
char unique_id[NETWORK_NAME_LENGTH]; // Every play sends an unique id so we can indentify him |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
97 |
} NetworkClientInfo; |
211 | 98 |
|
99 |
typedef struct NetworkGameList { |
|
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
100 |
NetworkGameInfo info; |
211 | 101 |
uint32 ip; |
102 |
uint16 port; |
|
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
103 |
bool online; // False if the server did not respond (default status) |
738
0b2fb79e64fc
(svn r1194) Feature: You can now add and remove servers from the server list. Those will be remembered until you delete them by pressing the Delete key.
dominik
parents:
716
diff
changeset
|
104 |
bool manually; // True if the server was added manually |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
105 |
struct NetworkGameList *next; |
211 | 106 |
} NetworkGameList; |
107 |
||
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
108 |
typedef enum { |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
109 |
NETWORK_JOIN_STATUS_CONNECTING, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
110 |
NETWORK_JOIN_STATUS_AUTHORIZING, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
111 |
NETWORK_JOIN_STATUS_WAITING, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
112 |
NETWORK_JOIN_STATUS_DOWNLOADING, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
113 |
NETWORK_JOIN_STATUS_PROCESSING, |
670
7c58dc46609c
(svn r1108) -Fix: [Network] Fixed problem around slow clients:
truelight
parents:
668
diff
changeset
|
114 |
NETWORK_JOIN_STATUS_REGISTERING, |
239 | 115 |
|
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
116 |
NETWORK_JOIN_STATUS_GETTING_COMPANY_INFO, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
117 |
} NetworkJoinStatus; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
118 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
119 |
// language ids for server_lang and client_lang |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
120 |
typedef enum { |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
121 |
NETLANG_ANY = 0, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
122 |
NETLANG_ENGLISH = 1, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
123 |
NETLANG_GERMAN = 2, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
124 |
NETLANG_FRENCH = 3, |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
125 |
} NetworkLanguage; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
126 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
127 |
VARDEF NetworkGameList *_network_game_list; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
128 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
129 |
VARDEF NetworkGameInfo _network_game_info; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
130 |
VARDEF NetworkPlayerInfo _network_player_info[MAX_PLAYERS]; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
131 |
VARDEF NetworkClientInfo _network_client_info[MAX_CLIENT_INFO]; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
132 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
133 |
VARDEF char _network_player_name[NETWORK_NAME_LENGTH]; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
134 |
VARDEF char _network_default_ip[NETWORK_HOSTNAME_LENGTH]; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
135 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
136 |
VARDEF uint16 _network_own_client_index; |
602
9bbe42a9e3ed
(svn r1026) -Add: [Network] Added unique id, so in network, each client has an
truelight
parents:
600
diff
changeset
|
137 |
VARDEF char _network_unique_id[NETWORK_NAME_LENGTH]; // Our own unique ID |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
138 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
139 |
VARDEF uint32 _frame_counter_server; // The frame_counter of the server, if in network-mode |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
140 |
VARDEF uint32 _frame_counter_max; // To where we may go with our clients |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
141 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
142 |
// networking settings |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
143 |
VARDEF uint32 _network_ip_list[MAX_INTERFACES + 1]; // Network IPs |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
144 |
VARDEF uint16 _network_game_count; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
145 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
146 |
VARDEF uint16 _network_lobby_company_count; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
147 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
148 |
VARDEF uint _network_server_port; |
629
ce914eb4023d
(svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents:
627
diff
changeset
|
149 |
/* We use bind_ip and bind_ip_host, where bind_ip_host is the readable form of |
ce914eb4023d
(svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents:
627
diff
changeset
|
150 |
bind_ip_host, and bind_ip the numeric value, because we want a nice number |
ce914eb4023d
(svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents:
627
diff
changeset
|
151 |
in the openttd.cfg, but we wants to use the uint32 internally.. */ |
ce914eb4023d
(svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents:
627
diff
changeset
|
152 |
VARDEF uint32 _network_server_bind_ip; |
ce914eb4023d
(svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents:
627
diff
changeset
|
153 |
VARDEF char _network_server_bind_ip_host[NETWORK_HOSTNAME_LENGTH]; |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
154 |
VARDEF bool _is_network_server; // Does this client wants to be a network-server? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
155 |
VARDEF char _network_server_name[NETWORK_NAME_LENGTH]; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
156 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
157 |
VARDEF uint16 _network_sync_freq; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
158 |
VARDEF uint8 _network_frame_freq; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
159 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
160 |
VARDEF uint32 _sync_seed_1, _sync_seed_2; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
161 |
VARDEF uint32 _sync_frame; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
162 |
VARDEF bool _network_first_time; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
163 |
// Vars needed for the join-GUI |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
164 |
VARDEF NetworkJoinStatus _network_join_status; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
165 |
VARDEF uint8 _network_join_waiting; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
166 |
VARDEF uint16 _network_join_kbytes; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
167 |
VARDEF uint16 _network_join_kbytes_total; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
168 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
169 |
VARDEF char _network_last_host[NETWORK_HOSTNAME_LENGTH]; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
170 |
VARDEF short _network_last_port; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
171 |
VARDEF uint32 _network_last_host_ip; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
172 |
VARDEF uint8 _network_reconnect; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
173 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
174 |
VARDEF bool _network_udp_server; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
175 |
VARDEF uint16 _network_udp_broadcast; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
176 |
|
764
68b398e2b780
(svn r1227) -Add: Ingame Server-list (select Internet, then Find Servers)
truelight
parents:
738
diff
changeset
|
177 |
VARDEF byte _network_lan_internet; |
68b398e2b780
(svn r1227) -Add: Ingame Server-list (select Internet, then Find Servers)
truelight
parents:
738
diff
changeset
|
178 |
|
668
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
179 |
VARDEF bool _network_advertise; |
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
180 |
VARDEF uint16 _network_last_advertise_date; |
764
68b398e2b780
(svn r1227) -Add: Ingame Server-list (select Internet, then Find Servers)
truelight
parents:
738
diff
changeset
|
181 |
VARDEF uint8 _network_advertise_retries; |
668
346853c8b513
(svn r1106) -Add: [Network] Added master-server protocol and advertise to
truelight
parents:
663
diff
changeset
|
182 |
|
690
9f449a6b133e
(svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents:
670
diff
changeset
|
183 |
VARDEF bool _network_autoclean_companies; |
9f449a6b133e
(svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents:
670
diff
changeset
|
184 |
VARDEF uint8 _network_autoclean_unprotected; // Remove a company after X months |
9f449a6b133e
(svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents:
670
diff
changeset
|
185 |
VARDEF uint8 _network_autoclean_protected; // Unprotect a company after X months |
9f449a6b133e
(svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents:
670
diff
changeset
|
186 |
|
774
258c11431acb
(svn r1240) -Fix: OpenTTD once again compiles if ENABLE_NETWORK is disabled.
darkvater
parents:
773
diff
changeset
|
187 |
NetworkGameList *NetworkQueryServer(const byte* host, unsigned short port, bool game_info); |
258c11431acb
(svn r1240) -Fix: OpenTTD once again compiles if ENABLE_NETWORK is disabled.
darkvater
parents:
773
diff
changeset
|
188 |
|
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
189 |
#endif /* ENABLE_NETWORK */ |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
190 |
|
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
191 |
// Those variables must always be registered! |
774
258c11431acb
(svn r1240) -Fix: OpenTTD once again compiles if ENABLE_NETWORK is disabled.
darkvater
parents:
773
diff
changeset
|
192 |
#define MAX_SAVED_SERVERS 10 |
258c11431acb
(svn r1240) -Fix: OpenTTD once again compiles if ENABLE_NETWORK is disabled.
darkvater
parents:
773
diff
changeset
|
193 |
VARDEF char *_network_host_list[MAX_SAVED_SERVERS]; |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
194 |
VARDEF bool _networking; |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
195 |
VARDEF bool _network_available; // is network mode available? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
196 |
VARDEF bool _network_server; // network-server is active |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
197 |
VARDEF bool _network_dedicated; // are we a dedicated server? |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
198 |
VARDEF byte _network_playas; // an id to play as.. |
211 | 199 |
|
228
f65dec6727d9
(svn r229) -Fix: Some more const stuff fixed .(Tron)
darkvater
parents:
211
diff
changeset
|
200 |
void ParseConnectionString(const byte **player, const byte **port, byte *connection_string); |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
239
diff
changeset
|
201 |
void NetworkUpdateClientInfo(uint16 client_index); |
716
40a349345f82
(svn r1168) -Cleanup: [Network] Cleaned the network code a bit. Added 'const'
truelight
parents:
710
diff
changeset
|
202 |
void NetworkAddServer(const byte *b); |
738
0b2fb79e64fc
(svn r1194) Feature: You can now add and remove servers from the server list. Those will be remembered until you delete them by pressing the Delete key.
dominik
parents:
716
diff
changeset
|
203 |
void NetworkRebuildHostList(); |
773
0c5d7a4bac3d
(svn r1239) -Feature: Added gui option of setting company password. It can be found in the 'company information' window
darkvater
parents:
764
diff
changeset
|
204 |
void NetworkChangeCompanyPassword(const char *str); |
228
f65dec6727d9
(svn r229) -Fix: Some more const stuff fixed .(Tron)
darkvater
parents:
211
diff
changeset
|
205 |
|
211 | 206 |
#endif /* NETWORK_H */ |