New Features in GIT

Did some features+bug fixing today. These are available on GitHub immediately.

– Added Cloud Games Submit
— This means people can now create custom games in Game Setups, test them out, and submit them to the public GPX Cloud for my review. If I approve, that game will show up in the public cloud for everyone to install and use.
— (You can submit in Game Setups -> (click game) -> Misc -> Submit to Cloud Games

– Updated Create Server page
— This is no longer a popup, it is on the center section like everything else. It is now smarter, and only shows templates once you have chosen a Network Server, so it doesnt show you templates that arent on that server. I also now hide the “FIle Path” by default since most people won’t need it, and it confuses some people.

– Fixed bug where saving Startup items in Game Setups would remove the Startup CMD

Commit: … 9776489a7b

Discussion in the Forums:

Bug Fixes on GitHub

I have fixed a few bugs on GitHub:

– Deleting user – If it’s already gone in Remote Linux, you get “Failed: Failed to delete user on network server (2): That user does not exist, exiting.!”
– Firefox readonly inputs on startup editor, buttons not showing
– API updated and working
– Admin saving user theme doesnt change it

Also, added documentation for available API Calls:

Remote 3.0.13 released (SteamCMD fixes)

This release is a simple release that fixes SteamCMD support.  Please go into Cloud Games and reinstall any Steam games you plan to use, as they have changed.

Also added:

DOD: Source

to cloud games, and updated TF2 and CS:Source to use SteamCMD/pipe.

Also — all games’ Working Directories (that use SteamCMD) will now use the App ID (e.g. 740) as their working directory. Before, the steamcmd installer was hardcoded to use “csgo”, but that is no longer the case.


Discussion and downloads here:

Master 3.0.10 and Remote 3.0.12 released

– Remote Moved to /usr/local/gpx
– Real Linux system user accounts (privilege separation)
– Remote manager script (GPXManager) reports it’s load to the master automatically

Bug Fixes
– user (not admin) server settings not saving other than working dir (caused “undefined” working dir issue)
– Working dir setting as undefined (clients saving this caused this error)
– Grep error on Restart
– AutoInstaller broken
– Stop Server: Failed: kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec] Usage: grep [OPTION]… PATTERN [FILE]… Try `grep –help’ for more information. success
– Saving files with “`” tilde bugs out
– Query engine set to none gives ISE. Set this to basic TCP check
– Ventrilo is in Games list, not voice list.
– Fix update script
– Plugins page not listing available, non-installed plugins (problem was JSON file related)
– update minecraft cfg file – ‘’ not ‘Server.Properties’
– Add Default Game – does not have Max Players and a few other fields
– Server Stop Failed: /home/betagpx2//scripts/Stop: line 100: kill: (10535) – No such process success
– Finish adding basic murmur
– Cloud games are broken
– Bug where you couldn’t delete a network server, and no error would show why
– Admin password change broken (updated admin passwords to hash+base64+SHA1)
– SteamCMD games support anonymous logins. Just don’t set “steam user” or “steam pass” in settings to use this.

– Add simple API to restart/stop servers, create server, create user, all-in-one creator, etc

Upcoming Remote Changes

So there are some changes coming soon to the Remote package.  This is being reworked mainly for security reasons, but also for simpler development.  These changes will come in 3.0.12.

Basically, when installing Remote, instead of /home/gpxuser being created, everything will now be stored in /usr/local/gamepanelx.

– /home/gpxuser is changing to /usr/local/gamepanelx
– Each gpx client/user account now will have it’s own Linux system user on your remote server
—- Users no longer in /home/gpxuser/accounts/<user>/
—- Path now in /usr/local/gamepanelx/users/<user>/
—- Servers still in userdir, e.g. /usr/local/gamepanelx/users/<user>/<ip>:<port>
– We will be storing a list of known server executables (e.g. srcds_linux,srcds_run,etc) in the master db, and these will be sent through the same queue script.   The manager will handle setting these executables to read/execute, but no write privileges.  This means users cannot spin up any custom servers (as long as the executable list is correct and nothing else can be run).

New system user creation will be handled by a queue script, “”.  This will watch a queue directory in /usr/local/gamepanelx/queue for new temporary files; these files will contain info needed to create a new user.  Within 5 seconds the system user will be created by root.

Realistically, people will need to cleanly reinstall the Remote, and migrate over servers by hand.  I may be able to introduce a migration script.