| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- //-----------------------------------------------------------------------------
- // Copyright (c) 2012 GarageGames, LLC
- //
- // Permission is hereby granted, free of charge, to any person obtaining a copy
- // of this software and associated documentation files (the "Software"), to
- // deal in the Software without restriction, including without limitation the
- // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- // sell copies of the Software, and to permit persons to whom the Software is
- // furnished to do so, subject to the following conditions:
- //
- // The above copyright notice and this permission notice shall be included in
- // all copies or substantial portions of the Software.
- //
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- // IN THE SOFTWARE.
- //-----------------------------------------------------------------------------
- //-----------------------------------------------------------------------------
- // Variables used by server scripts & code. The ones marked with (c)
- // are accessed from code. Variables preceeded by Pref:: are server
- // preferences and stored automatically in the ServerPrefs.cs file
- // in between server sessions.
- //
- // (c) Server::ServerType {SinglePlayer, MultiPlayer}
- // (c) Server::GameType Unique game name
- // (c) Server::Dedicated Bool
- // ( ) Server::MissionFile Mission .mis file name
- // (c) Server::MissionName DisplayName from .mis file
- // (c) Server::MissionType Not used
- // (c) Server::PlayerCount Current player count
- // (c) Server::GuidList Player GUID (record list?)
- // (c) Server::Status Current server status
- //
- // (c) Pref::Server::Name Server Name
- // (c) Pref::Server::Password Password for client connections
- // ( ) Pref::Server::AdminPassword Password for client admins
- // (c) Pref::Server::Info Server description
- // (c) Pref::Server::MaxPlayers Max allowed players
- // (c) Pref::Server::RegionMask Registers this mask with master server
- // ( ) Pref::Server::BanTime Duration of a player ban
- // ( ) Pref::Server::KickBanTime Duration of a player kick & ban
- // ( ) Pref::Server::MaxChatLen Max chat message len
- // ( ) Pref::Server::FloodProtectionEnabled Bool
- //-----------------------------------------------------------------------------
- //-----------------------------------------------------------------------------
- function initServer()
- {
- echo("\n--------- Initializing " @ $appName @ ": Server Scripts ---------");
- // Server::Status is returned in the Game Info Query and represents the
- // current status of the server. This string sould be very short.
- $Server::Status = "Unknown";
- // Turn on testing/debug script functions
- $Server::TestCheats = false;
- // Specify where the mission files are.
- $Server::MissionFileSpec = "levels/*.mis";
- // The common module provides the basic server functionality
- initBaseServer();
- // Load up game server support scripts
- exec("./commands.cs");
- exec("./game.cs");
- }
- //-----------------------------------------------------------------------------
- function initDedicated()
- {
- enableWinConsole(true);
- echo("\n--------- Starting Dedicated Server ---------");
- // Make sure this variable reflects the correct state.
- $Server::Dedicated = true;
- // The server isn't started unless a mission has been specified.
- if ($missionArg !$= "") {
- createServer("MultiPlayer", $missionArg);
- }
- else
- echo("No mission specified (use -mission filename)");
- }
|