2 * $Logfile: /Freespace2/code/Cmdline/cmdline.h $
8 * Revision 1.1 2002/05/03 03:28:11 root
12 * 8 8/26/99 8:51p Dave
13 * Gave multiplayer TvT messaging a heavy dose of sanity. Cheat codes.
15 * 7 7/15/99 3:07p Dave
16 * 32 bit detection support. Mouse coord commandline.
18 * 6 7/13/99 1:15p Dave
19 * 32 bit support. Whee!
21 * 5 6/22/99 9:37p Dave
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.
29 * 3 11/17/98 11:12a Dave
30 * Removed player identification by address. Now assign explicit id #'s.
32 * 2 10/07/98 10:52a Dave
35 * 1 10/07/98 10:48a Dave
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
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
45 * 25 9/08/98 2:20p Allender
46 * temporary code to force IP address to a specific value.
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.
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
56 * 22 7/24/98 11:14a Allender
57 * start of new command line options for version 1.04
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.
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.
68 * 19 5/09/98 7:16p Dave
69 * Put in CD checking. Put in standalone host password. Made pilot into
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
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
81 * 16 1/31/98 4:32p Dave
82 * Put in new support for VMT player validation, game logging in and game
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.
89 * 14 12/09/97 6:14p Lawrance
92 * 13 11/28/97 7:04p Dave
93 * Emergency checkin due to big system crash.
95 * 12 11/28/97 5:06p Dave
96 * Put in facilities for simulating multiplayer lag.
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.
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.
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.
112 * 8 9/18/97 10:13p Dave
113 * Added -gimmemedals, which gives the current pilot all the medals in the
116 * 7 9/18/97 9:20a Dave
117 * Minor modifications
119 * 6 9/15/97 11:40p Lawrance
120 * remove demo granularity switch
122 * 5 9/03/97 5:03p Lawrance
123 * add support for -nosound command line parm
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.
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.
133 * 2 8/04/97 3:13p Dave
134 * Added command line functions. See cmdline.cpp for directions on adding
137 * 1 8/04/97 9:58a Dave
142 #ifndef FS_CMDLINE_HEADER_FILE
143 #define FS_CMDLINE_HEADER_FILE
145 int parse_cmdline(char *cmdline);
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.
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
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;
177 extern int Cmdline_window;