Finally, 0.7.0 is now available to everyone. This is again the biggest release cPGS has ever seen, it was almost entirely rewritten to allow for the flexibility needed for the more advanced features planned. Many things have been greatly simplified, such as themes now have about 10 html files all together, whereas previous versions had over 200. All games are now modular, so if you want to add support for a game and share it, you can simply copy an existing game that is similar or use the example game module in /var/cpanel/cpgs/games/example/ to start your own. Simply copying that directory to the same place on another server and restarting cpgsd will enable support for it, and will survive through updates of cPGS. The changelog doesn't accurately reflect the amount of code changed, but here it is:

# Added missing L4D language key (however no longer needed due to theme simplification)
# Added creation of default config file if missing after installation for L4D
# Made "Simple Config" variables for each game optional and editable by admin
# Modularized Game Support, moved all game specific code outside of cPGS to allow for easier maintenance
and allow for the community to add game support if they can't wait for official releases
# Made all games use same theme files so no html/theme files are needed for new game support
# Split Steam games into individual setups rather than one large package. This means for example that cstrike and czero and tfc are unique packages no longer under the umbrella of hl.cpgs
# Changed server status reporting method due to change in proc filesys on Linux, now includes full support for FreeBSD as well, parsing `ps` output
# Installer updated to use Ajax polling rather than HTTP streaming, prevents quirks with SIGPIPE from browser closing/timeouts from affecting the installation of the server. Also allows one to reopen install page to see current status
# Fixed players not showing up in HL/HL2 based games in stats info dropdown
# Updated qstat to 2.12 for better etqw support and more
# Separated HLTV into it's own server
# Updated BF2142 server to 1.50 / 1.10.48.0
# Added initial Source TV Relay support
# Changed steam autoupdate to run directly before starting server, emulating normal init behavior
# Added simple config editor in WHM to allow admin to set exactly which options show up for each game installation, either remove default options or add custom ones not already included
# Added automatic PunkBuster configuration and updating for games that use it
# Too many small bugfixes to list



The biggest change that will impact most is the change from monolithic Halflife and Halflife 2 packages into standalone versions of those games. For instance, where we previously had a single Halflife 2 package, hl2.cpgs , we now have cstrikesrc.cpgs, dodsrc.cpgs, hl2mpsrc.cpgs . Where we had hl.cpgs for the first series, we have cstrike.cpgs , dod.cpgs, czero.cpgs now. For anyone previously selling the ability to run any of those games, simply create the extra servers for them to choose, however from what I've seen the servers clients want to run are very specific. Existing HL/HL2 installs will be automatically converted over to the new structure, but will not enjoy the space beneifits since we have to copy the game directories over rather than uninstall/reinstall new. If anyone has troubles with this, please put in a ticket so I can fix any problems stemming from this. This should be the last major change of this nature where already install games are affected.
Another new feature is the ability to customize the server variables show to the users in the simple config interface, that list of options / values they can change easily when looking at the main game page. You can now add new options or remove existing options, with the ability to also show the entry but not allow modification of it. This is called the "Simple Config Editor" in the "Manage Game" section of WHM for each user/game/instal instance.

For the most part everything should look similar on the frontend. Once any remaining bugs and growing pains from this release are fixed in 0.7.1, work will begin on all those features I've been promising to implement.

As always, let me know of any bugs or problems you have, feel free to put in a ticket if you have any problems with this new version.