]> icculus.org git repositories - taylor/freespace2.git/blob - include/cmdline.h
Initial revision
[taylor/freespace2.git] / include / cmdline.h
1 /*
2  * $Logfile: /Freespace2/code/Cmdline/cmdline.h $
3  * $Revision$
4  * $Date$
5  * $Author$
6  *
7  * $Log$
8  * Revision 1.1  2002/05/03 03:28:11  root
9  * Initial revision
10  *
11  * 
12  * 8     8/26/99 8:51p Dave
13  * Gave multiplayer TvT messaging a heavy dose of sanity. Cheat codes.
14  * 
15  * 7     7/15/99 3:07p Dave
16  * 32 bit detection support. Mouse coord commandline.
17  * 
18  * 6     7/13/99 1:15p Dave
19  * 32 bit support. Whee!
20  * 
21  * 5     6/22/99 9:37p Dave
22  * Put in pof spewing.
23  * 
24  * 4     1/12/99 5:45p Dave
25  * Moved weapon pipeline in multiplayer to almost exclusively client side.
26  * Very good results. Bandwidth goes down, playability goes up for crappy
27  * connections. Fixed object update problem for ship subsystems.
28  * 
29  * 3     11/17/98 11:12a Dave
30  * Removed player identification by address. Now assign explicit id #'s.
31  * 
32  * 2     10/07/98 10:52a Dave
33  * Initial checkin.
34  * 
35  * 1     10/07/98 10:48a Dave
36  * 
37  * 27    9/15/98 4:04p Allender
38  * added back in the -ip_addr command line switch because it needs to be
39  * in the standalone server only executable
40  * 
41  * 26    9/14/98 11:28a Allender
42  * support for server bashing of address when received from client.  Added
43  * a cmdline.cfg file to process command line arguments from a file
44  * 
45  * 25    9/08/98 2:20p Allender
46  * temporary code to force IP address to a specific value.
47  * 
48  * 24    8/20/98 5:30p Dave
49  * Put in handy multiplayer logfile system. Now need to put in useful
50  * applications of it all over the code.
51  * 
52  * 23    8/07/98 10:40a Allender
53  * new command line flags for starting netgames.  Only starting currently
54  * works, and PXO isn't implemented yet
55  * 
56  * 22    7/24/98 11:14a Allender
57  * start of new command line options for version 1.04
58  * 
59  * 21    5/21/98 1:50a Dave
60  * Remove obsolete command line functions. Reduce shield explosion packets
61  * drastically. Tweak PXO screen even more. Fix file xfer system so that
62  * we can guarantee file uniqueness.
63  * 
64  * 20    5/18/98 9:10p Dave
65  * Put in many new PXO features. Fixed skill level bashing in multiplayer.
66  * Removed several old command line options. Put in network config files.
67  * 
68  * 19    5/09/98 7:16p Dave
69  * Put in CD checking. Put in standalone host password. Made pilot into
70  * popup scrollable.
71  * 
72  * 18    4/23/98 8:27p Allender
73  * basic support for cutscene playback.  Into movie code in place.  Tech
74  * room can view cutscenes stored in CDROM_dir variable
75  * 
76  * 17    3/14/98 2:48p Dave
77  * Cleaned up observer joining code. Put in support for file xfers to
78  * ingame joiners (observers or not). Revamped and reinstalled pseudo
79  * lag/loss system.
80  * 
81  * 16    1/31/98 4:32p Dave
82  * Put in new support for VMT player validation, game logging in and game
83  * logging out.
84  * 
85  * 15    12/10/97 4:45p Dave
86  * Added in more detailed support for multiplayer packet lag/loss. Fixed
87  * some multiplayer stuff. Added some controls to the standalone.
88  * 
89  * 14    12/09/97 6:14p Lawrance
90  * add -nomusic flag
91  * 
92  * 13    11/28/97 7:04p Dave
93  * Emergency checkin due to big system crash.
94  * 
95  * 12    11/28/97 5:06p Dave
96  * Put in facilities for simulating multiplayer lag.
97  * 
98  * 11    11/24/97 5:42p Dave
99  * Fixed a file xfer buffer free/malloc problem. Lengthened command line
100  * switch string parse length.
101  * 
102  * 10    11/12/97 4:39p Dave
103  * Put in multiplayer campaign support parsing, loading and saving. Made
104  * command-line variables better named. Changed some things on the initial
105  * pilot select screen.
106  * 
107  * 9     11/11/97 4:54p Dave
108  * Put in support for single vs. multiplayer pilots. Put in initial player
109  * selection screen (no command line option yet). Started work on
110  * multiplayer campaign file save gaming.
111  * 
112  * 8     9/18/97 10:13p Dave
113  * Added -gimmemedals, which gives the current pilot all the medals in the
114  * game (debug)
115  * 
116  * 7     9/18/97 9:20a Dave
117  * Minor modifications
118  * 
119  * 6     9/15/97 11:40p Lawrance
120  * remove demo granularity switch
121  * 
122  * 5     9/03/97 5:03p Lawrance
123  * add support for -nosound command line parm
124  * 
125  * 4     8/21/97 4:55p Dave
126  * Added a switch for multiplayer chat streaming. Added a section for
127  * global command line vars.
128  * 
129  * 3     8/06/97 2:26p Dave
130  * Made the command line parse more robust. Made it easier to add and
131  * process new command-line switches.
132  * 
133  * 2     8/04/97 3:13p Dave
134  * Added command line functions. See cmdline.cpp for directions on adding
135  * new switches
136  * 
137  * 1     8/04/97 9:58a Dave
138  * 
139  * $NoKeywords: $
140  */
141
142 #ifndef FS_CMDLINE_HEADER_FILE
143 #define FS_CMDLINE_HEADER_FILE
144
145 int parse_cmdline(char *cmdline);
146
147 // COMMAND LINE SETTINGS
148 // This section is for reference by all the *_init() functions. For example, the multiplayer init function
149 // could check to see if (int Cmdline_multi_stream_chat_to_file) has been set by the command line parser.
150 //
151 // Add any extern definitions here and put the actual variables inside of cmdline.cpp for ease of use
152 // Also, check to make sure anything you add doesn't break Fred or TestCode
153
154 extern int Cmdline_multi_stream_chat_to_file;
155 extern int Cmdline_freespace_no_sound;
156 extern int Cmdline_freespace_no_music;
157 extern int Cmdline_gimme_all_medals;
158 extern int Cmdline_use_last_pilot;
159 extern int Cmdline_cd_check;
160 extern int Cmdline_start_netgame;
161 extern int Cmdline_closed_game;
162 extern int Cmdline_restricted_game;
163 extern int Cmdline_network_port;
164 extern char *Cmdline_game_name;
165 extern char *Cmdline_game_password;
166 extern char *Cmdline_rank_above;
167 extern char *Cmdline_rank_below;
168 extern char *Cmdline_connect_addr;
169 extern int Cmdline_multi_log;
170 extern int Cmdline_server_firing;
171 extern int Cmdline_client_dodamage;
172 extern int Cmdline_spew_pof_info;
173 extern int Cmdline_force_32bit;
174 extern int Cmdline_mouse_coords;
175 extern int Cmdline_timeout;
176
177 extern int Cmdline_window;
178
179 #endif
180