How Instances Work
Once an engine is installed you can start assigning copies of it to you or your admin users. These instances are what you and your clients will actually play on. Cortex gives many options to customize and manage these instances for you.
Click the Instances link in the main menu to bring up the instances page. When logged in as the admin this page will show every game instance set up on your cluster. Regular users will only see the instances the admin has assigned to them. Users with admin privileges can see and configure any instance on the cluster except those belonging to the admin user.
This page is sectioned off by user on the cluster. Beneath each user is a tally of how many instances each user has installed, how many are activated, and how many are running. All deactivated instances will be greyed out on this page. Each instance on this page shows the game logo on the left, current runtime information in the middle, and options per instance on the right. The current runtime information is queried from the server itself and shows the following:
| Address | The IP and port the server is listening on. This is the address your clients will use when they want to connect to thier game servers. |
| Web Administration | If the server has a built in web based configuration system, like TeamSpeak's web administration, then this link will direct you to that administration page. |
| Players online | The number of players currently on the server. This will read "N/A" if the server is not running. |
| Hostname | The hostname of the server set in it's configuration file. This will read "N/A" if the server is not running. |
| Map | The map currently running on the server. This will read "N/A" if the server is not running. |
| Memory Use | The amount of RAM the server is currently using. This is measured in megabytes and will read "N/A" if the server is not running. |
The options per instance allow you to customize and manage your game instance to your liking. These options are described in detail below and in the Cortex User Manual.
Adding Instances
Click the add image in the top-right hand corner of the user you want to add an instance for. This opens a multi-step form. Fill out each of the following fields. The form should reload itself to the next step, but if it doesn't click the next button to continue.
| Engine | The engine of the game or voice server you want to install for your user. This list includes every engine installed on your cluster. If you don't see your engine in this list check the engines page to make sure it's installed. |
| Server | Select which server in your cluster you want this instance to go on. This list shows the server name, how many instances are currently running on that server, and how many instances are installed on that server. |
| IP Address | The next list shows which IP addresses are available on your server to put this instance on. |
| Port | A list of ports available to put the game on. Cortex reserves 5 ports in sequence form the default game port per IP per game. If no ports are available go back one step and select another IP address. |
| Disk | The disk or volume you want to install this server onto. If your server has multiple disk drives you can configure them for use in Cortex on the System Configuration page. |
| Name | The name of your server. This is not the server hostname, but merely a name to identify it to Cortex. |
| Rcon Password | The rcon password for your server. This will be the admin login password if you're installing a Teamspeak instance. |
| Max Players | The maximum amount of players you want this instance to support. There are limits to this number. For instance F.E.A.R. supports up to 16 players, while Battlefield 2 can run up to 64 players. |
| Comments | General comments on this server for your use. This has no effect on gameplay. |
Note that the name, rcon password, max players, and comments are filled out in the same step. Once the form is complete click the next icon. Cortex will verify that the resources for this game exist on the system and then prompt you continue making the instance. Click the continue icon to create the instance.
Cortex goes through a process to convert an engine into an instance. Depending on your server's operating system and the game file that's transferred Cortex may do one of four things to the file:
- Copy the file: many files that contain game data need to be copied from the engine's directory to your instance's directory in order to function.
- Hardlink the file: Many data files don't need a specific copy in the instance to run. Windows servers hardlink these files to save disk space.
- Symlink the file: This is the default file action for Linux servers. Symlinking the file can preserve a great deal of file space.
- Ignore the file: Certain files that are controlled by Cortex, such as config files, are best left ignored and created by Cortex itself.
Once the instance is done installing click the continue button to return to the instances page. The new instance will now be on the system in a deactivated state.
Activating and Deactivating Instances
An instance can be disabled or enabled through the use of the activate and deactivate buttons. A deactivated instance cannot be configured or used by any users on the system and must be activated before it can be used. These functions tie into the operating systems that control the instances. Activating an instance activates the OS service that powers that instance, allowing it to run as a daemon and start on system boot.
|
Disabling an instance does not remove any custom configuration or files from the instance. |
Instance Editing for Admins
Admin level users have more instance editing options than standard users. Click the edit config button for your instance to see them. They are located at the top of the next form. Check the instances chapter of the Cortex User Manual for information on the standard instance editing options. Admins have the ability to edit the following:
- Change the max amount of players that the server can handle
- Customize the game server's startup command line. Use the command line additions to add extra directives into your instance's command line. These options get added in front of the standard command line options. So for instance if your command line is:
Quake4Ded.exe +exec server.cfg +si_gametype 'DM' +si_map mp/q4dm8 +spawnServer +set net_serverDedicated 1 +set net_ip 10.5.1.207 +set net_port 28004 +set fs_savepath C:\i365\instances\admin\quake4_server +set fs_basepath C:\i365\instances\admin\quake4_server
and you want to add the variable "+set fs_game q4max" to load the Q4Max mod, add it to the command line additions field. The resulting command line will look like this:
Quake4Ded.exe +set fs_game q4max +exec server.cfg +si_gametype 'DM' +si_map mp/q4dm8 +spawnServer +set net_serverDedicated 1 +set net_ip 10.5.1.207 +set net_port 28004 +set fs_savepath C:\i365\instances\admin\quake4_server +set fs_basepath C:\i365\instances\admin\quake4_server
Click the save icon when editing either of the three above options. Bear in mind that saving any of these options will restart your instance.
- Enable or disable the filebrowser in case you don't want your users to have direct access to the instance's files through Cortex
- Change the internal comment for the server
- Transfer the instance to another server on your cluster. Clicking next after selecting your new server will load up a form for which IP address to place your server on. Clicking next after that will load a form to choose your port. Click next one last time to transfer the instance to your other server. You can only transfer instances to servers that have a user linked to the instance's current owner. Check the users chapter for more information on user linking. A real time page displays the instance transfer status. Once the instance is transferred click continue to return to the instances page.
- Change the server's IP address. Select your new IP address and click next. A new port form will load next with ports available for this game on your new IP address. Select your new port and hit next to save your new IP address and port.
- Change the server's port on the current IP address. Select your new port and click the next button to save the new port.
- Set the server's processor affinity. Systems with dual-core, multi-processor, or processors that use Intel's Hyper-Threading technology report more than one processor to your Operating System. The OS is usually responsible for choosing which CPU will run your game server, but it's possible to choose which processor, or set affinity, per instance in Cortex. Click the checkbox next to the CPUs that you want the instance to run on. By default all CPU's are checked, which means that the OS will choose wich CPU to run the game server on from all processors. If you only check one CPU then the instance will only run on that CPU. If you check more than one then the server's OS will run the instance on one of the checked processors. After selecting your CPU affinity click the save button to return to the edit config page. You need to restart your instance after making these changes.
Admin users also have the ability to install 3rd party Plugins on an instance if they are available. If plugins are available for an instance an Edit Plugins icon will appear next to it on the instances page. Click that button to bring up that instance's plugin page. Click the Install button for the plugin you wish to install, and your user will be able to enable, disable, and configure them on their server.
Removing Instances
Click the delete icon for the server you wish to delete and click the OK button to confirm the deletion. Your instance including all configs, custom data, and custom maps will be removed from the server.
You cannot undo this, so please be certain you want to remove your instance when you delete it!
