These instructions are for experienced Unix and GNU/Linux users. If you are not familiar with these commands, I suggest reading up on Linux BASH commands or having an experienced user do this for you.
Master Server
The server that hosts the game control panel and all of it's website files
to control the slave game servers. A master server may also be the only server
which will host both the control panel AND the game services.
Slave Server
The server that hosts any and all game servers/daemons/services.
Choose here whether you are installing or upgrading.
The install pages are pretty self-explanatory. Once complete, you MUST delete the directory 'install'.
After this has been deleted, you must edit the file 'config.php' located inside the directory 'include'. (include/config.php).
After you have added your database info and other details, you may point your browser to:
http://yoursite.com/gpx-master-[version]/
You will log in as your admin user, and you can view the system.
(( Slave Server ))
On your slave server, create the user 'gpx', or any user you wish. This user will be used to house
ALL game server files, including any files gpx needs to operate. It will be the user all games
run as. We will not be adding this user to the 'wheel' group. For your protection, please do NOT
consider running any games or server daemons as root.
useradd -m -s /bin/bash gpx
The folder '_accounts' is used for all users' game files. The directory structure for user 'ryan' would be as follows:
/home/gpx/_accounts/ryan/cs_s/3nr0p3jf/
That's the user (ryan), the game's short description (cs_s for Counter-Strike: Source), and the server's auto-generated nickname (3nr0p3jf).
mkdir /usr/local/gpx/
Now cd into a temporary directory, download, extract, and move the folder to /usr/local/gpx.
cd /root/ wget http://internap.dl.sourceforge.net/sourceforge/gamepanelx/gpx-slave-0.32.tar.gz tar -zxvf gpx-slave-0.32.tar.gz mv gpx-slave/* /usr/local/gpx/ chown gpx:gpx /usr/local/gpx/ -R
cd /usr/local/gpx/install/
Now you can copy the scripts in the folder 'initscripts' depending on your distribution into /etc/init.d/. There are Gentoo and Red Hat-based distrubitions' initscripts.
Now extract the contents of 'userdir.tar.gz' into your /home/gpx/ and change ownership to gpx: tar -zxvf /usr/local/gpx/install/userdir.tar.gz -C /home/gpx/
chown gpx:gpx /home/gpx/ -R
Now edit your configuration file and setup your db info etc: nano -w /usr/local/gpx/web/config.php
Once this is complete, start up the GPX webserver: /etc/init.d/gpx-httpd start
Once the server is running, you will need to add this Slave Server's IP Address to your slave servers on your Master Control Panel.
Log into your master server. Under the section "Server Setup", click "Edit Configuration". Fill out all the fields according to your setup. Next, under "Current User", click "Edit My Information". Fill out your info here as well.
Now you need to add your IP Addresses into the Slave Manager. If you have only one IP, you can add IP's one-by-one by clicking "New Slave - Single" under the section "Slave Servers". If you have an entire span of IP's to add, for example all addresses from 1.2.3.4 to 1.2.3.16, you would use "New Slave - Multiple".
Next you will want to add a user to run a game. Let's say we want to run Counter-Strike: Source. Under the section "User Accounts", click "Create User". Fill out the required fields in 'User Information' and select "Counter-Strike: Source" under 'Game Setup'. After clicking 'Next', you will see many fields for setting up the game. If you don't know what these mean, I suggest reading up on the game server before just guessing on it's settings. Click 'Next' when done, and you will be redirected to the User Editor.
----------------------------------
Now comes the fun part. You will need to create a srcds installation on your slave server. How to install the srcds game server is beyond the span of this. All I need to tell you is that everything for the server needs to go inside /home/gpx/_accounts/[your user here]/[game short name]/[game server nickname]/. Create the directory for example user 'ryan' there:
mkdir /home/gpx/_accounts/ryan/
You will need to create a directory inside based on the directory structure "/home/gpx/_accounts/[your user here]/[game short name]/[game server nickname]/" I showed before. You will need to find out what nickname your Master Server assigned your game server. Log into your master server as your game user, and go to "Game Manager". Right-Click on the restart button and click "Save Link Location" (depends on your browser). Now paste this somewhere and look for the part that says "&nick=". Basically you need to get your game's nickname. Once you know it, you need to create a directory for your game, and your nickname. Inside the nickname directory is where all your game files go. So to create the game's directory and nickname directory:
Of course change the [nickname here] bit to your game server's actual nickname. Now change to this directory:
cd /home/gpx/_accounts/ryan/[game type]/[nickname here]/
If you need to find the game type for your server (a.k.a gameShort name), then look at the section Game Types.
Now you will want to put 'hldsupdatetool.bin' inside this directory, and begin your installation. Once you have all your files completely in here, you can click "Restart" inside your Game Manager and your game should start up. If it is a Valve Source-Based game, you can see if it's online or not. Otherwise, the status will show as "Unknown" at the moment. Enjoy!