Release v23.3.0

Version v23.3.0 has been released, introducing three new servers: Craftopia, HYPERCHARGE: Unboxed, and Operation: Harsh Doorstop.

Noteworthy updates in this release include the addition of support for Debian 12, optimizations in gamedig queries, significant refactoring of the details gathering process, and renaming the functions directory to modules. Additionally, various bug fixes have been implemented for pz and hw.

The improvements in this release primarily focus on enhancing the support for an expanding list of game servers, aiming to make the code more scalable. Scalability plays a vital role in ensuring the continued success of this project, as the project’s growth leads to longer development times for improvements. To address this, I am refactoring the code to streamline and expedite the development of LinuxGSM, and I am also increasing the utilization of CI/Pipelines to gather information and conduct thorough testing, thereby improving the quality of LinuxGSM. Furthermore, the ongoing improvements involve exploring methods to gather and store additional information about game servers, such as ports and resource requirements.

In addition, some of you may have noticed my work on a new docker project. This project leverages GitHub Actions automation to generate images and docker-compose files automatically. As you can see, gathering information about game servers is a crucial aspect of this project. It is very time-consuming to manually create new docker images each time a new server is released, so the idea is to have them automatically generated.

Full change log here Release v23.3.0 · GameServerManagers/LinuxGSM (


Hello, this release has been a big one with many bugs fixed and a long term feature request added, with this release focusing on improving the quality of existing servers rather than adding several new ones. Firstly the newest server added for this release is Jedi Knight II. Improvements include adding Rust wipe custom map support, support, new info about console interactions.

The biggest new feature is removing the requirement for servers with multiple IP addresses to manually enter an IP address the game server will bind too into config or parameter. This change will further improve automation, simplify installation and configuration.

A whole bunch of bug fixes have been completed thanks to contributions from volunteers, specifically from Christian who has been sifting through the issues list and clearing off many annoyances that I haven’t had the time to address. Highlights include fixing Soldat install infinite loop, improvements to handling, reworking Eco after a major update, updating Squad system directory, fixing Wurm server startup failure, updating several mod links so they work again and a whole bunch of other behind the scene fixes and code refactors.

There is still some documentation and the website to update but I hope you all enjoy the new release.

I have also been actively working on the LinuxGSM docker container to both improve my knowledge and create a stable working container. Some of the improvements in LinuxGSM will go towards the goal of finally getting a decent official docker image. There is still plenty of work ahead with the container but it is moving in the right direction.

v20.5.0 (2020-09-20)

? New Features

  • details: change master server to state listed or not listed (17a07e2) by Daniel Gibbs
  • console: allow console to state if verbose and/or interactive (#3000) (67333ff) by Daniel Gibbs
  • newserver: Jedi Knight II: Jedi Outcast (#3002) (eb9e5a9) by Daniel Gibbs
  • remove requirement to input IP (#3015) (33eb01b) by Daniel Gibbs
  • rustserver: add rust custom map support (#3017) (c267953) by P4R4NORM4L
  • various improvements to related messages and issues (#3040) (358e34d) by Daniel Gibbs
  • alerts: add and alerts refactor (#3051) (ee515b7) by Daniel Gibbs
  • fix: move fix to a seperate function (a6d564c) by Christian

? Bug Fixes

  • solserver: resolve install infinite loop (#2990) (424af4f) by Daniel Gibbs
  • awk to properly grab the server pid when spaces are present in the session name (#2997) (db4d3cc) by Ryan Walters
  • ahlserver: correct game name to use capitals (f3b6d56) by Daniel Gibbs
  • resolve steamcmd outputting the same messages to logs (#3011) (af783e2) by Daniel Gibbs
  • csserver: fix missing (#3030) (fa5a668) by Christian
  • fctrserver: fix and improve fetching info from config file (#3031) (37fda0f) by Christian
  • pzserver: fix missing (#3029) (cb03c16) by Christian
  • config: add pushoveruserkey to all configs (#3028) (6102c28) by Christian
  • ecoserver: updates for Eco 0.9.0 (#3024) (2c4e414) by Christian
  • arkserver: add admin and connect password to details (#3033) (54b20d5) by Christian
  • eco: display correct values in display and fixup (#3034) (4d587e3) by Christian
  • squad: move systemdir to new location (#3036) (9e7ce43) by Christian
  • mods: change url to new domain for oxide + redo last version fetch (#3037) (a99cc53) by Christian
  • sdtdserver: config parsing for the port (#3007) (1bd8194) by Christian
  • untserver: fix issue (#3038) (c205e26) by Christian
  • untserver: remove mono-complete requirement and fix query port (#3039) (d9690f8) by Daniel Gibbs
  • sdtdserver: fixes to sdtd (#3041) (d961b05) by Daniel Gibbs
  • mods: fix csgo get5 fetching for the latest version (e4db2a6) by H3o66
  • fctrserver: add bind parameter for Factorio server (#3045) (4f42e70) by Christian
  • wurm: fix server startup for wurm and dependency (#3046) (7fe9929) by Christian
  • mcb: update fails, as the site does a redirect and does not follow (#3047) (8e4d7ae) by Christian
  • mod: csgo pug fix var not set (#3053) (47a02e8) by Christian
    mods: add csgo pug to the modlist (#3044) (647beb5) by Christian


This release sees two new servers added the classic Battlefield: Vietnam and space survival Memories of Mars. Ark as seen support for the Epic store added and the optional ability to create your own save directory. Rust has seen its wipe command updated so no input is required anymore making it easier to use with a cron. The Rust console also will now have an output and Rust + support added. The way LinuxGSM uses SteamCMD has improved and will now catch errors and advise on the error, plus the beta password option has been added for custom branches. A whole bunch of other improvements and fixes can be seen below.

Last months drive to get more sponsors was a massive success and all Sponsors got their gift card in time for the summer sale and picked up a few bargains. Thank you to everyone who continues to support the project.

v20.4.0 (2020-07-18)

New Features

  • new server: Battlefield: Vietnam (#2909) (f2f8063) by ttocszed00
  • newserver: Memories of Mars (#2911) (5550303) by ttocszed00
  • arkserver: add support for epic store players. (#2947) (276419f) by Daniel Gibbs
  • arkserver: add altsavedirectoryname to allow custom save location (#2948) (af4e07e) by Daniel Gibbs
  • ut2k4server: update release to 3369.3 (#2952) (f6a9070) by Daniel Gibbs
  • steamcmd: refactor how SteamCMD server downloads are handled (#2959) (be0c448) by Daniel Gibbs
  • update: add betapassword option for custom steamcmd branches (#2962) (e5ee945) by Daniel Gibbs
  • stop: add end option to graceful stop (#2963) (a3da62f) by Daniel Gibbs
  • details: add appid and branch password to details (#2964) (f020669) by Daniel Gibbs
  • rustserver: add support for Rust + app (#2965) (a941499) by Nathan
  • rustserver: console now has an output (#2966) (4861d13) by Daniel Gibbs

? Bug Fixes

  • update-lgsm: will force to download (d908637) by Daniel Gibbs
  • details: fix if typo in starbound details (#2929) (56b87ef) by ttocszed00
  • avserver: fix post install for Avorion #2925 (#2928) (8ebeac9) by Christian
  • query: tuning for correct player count (#2913) (dc70753) by Jimmy Maple
  • bf1942server: alter query type to protocol-gamespy1 (#2932) (a40bdf3) by Daniel Gibbs
  • tf2server: remove libtcmalloc-minimal4:i386 and gperftools-libs.i686 (#2950) (7208626) by Daniel Gibbs
  • debian 11: change name of lib32gcc1 to lib32gcc-s1 for debian 11 (#2951) (1d57607) by Daniel Gibbs
  • info: gather external ip from instead of (#2953) (8462086) by Daniel Gibbs
  • hard lock reference (#2956) (a41f388) by Daniel Gibbs
  • rustserver: refactor wipe so no input is required (#2958) (8316d87) by Daniel Gibbs
  • update: allow steamcmd to check for updates on beta branches (#2960) (edacc33) by Daniel Gibbs
  • details: suppress jq error (6508caa) by Daniel Gibbs
  • log: allow logs to correctly display primary command (#2969) (d327e93) by Daniel Gibbs



This release sees Chivalry: Medieval Warfare added to the lineup of servers (currently on sale at humble bundle). As well as a new server, major changes have been made to how LinuxGSM updates itself that should make the updating more robust and stable (see below for details). Unreal Tournament 3 has been given a review to add port query and other improvements.

All non-steam servers will now download .tar.xz files on install which not only has significantly better compression, speeding up downloads but is also faster at de-compressing (see results of my benchmark below).

Stats have been given a big update that will now report instances, installs and server hardware numbers. This will give a much more accurate picture of how LinuxGSM servers are used as many users host their game servers in many different configurations. Stats will no longer show any version before v20.3.0; this in conjunction with the update-lgsm refactor will hide old broken versions of stats and prevent weird stats being displayed. If you haven’t seen stats yet it’s worth checking out every few weeks.

Avorion has had a breaking change that will see ./avserver name becoming the galaxy name. This breaking change was done now before too many people started using avserver to simplify the way galaxies are handled. Please copy your configs to the new galaxy (probablyavserver) directory.

I was planning on doing some major work to Rust for this release. However, I decided to release v20.3.0 sooner and push Rust changes until the next release as the update-lgsm refactor was a big enough change for a new release.

Various other fixes have been applied that are listed below

Update LinuxGSM changes

Firstly multi-instance servers will correctly update themselves by comparing ./gameserver file against the modules. If the versions do not match LinuxGSM update will automatically run. A backup repo is now available so if GitHub is down LinuxGSM will use BitBucket to download updates. Functionality to prevent version mismatches when a newer version of LinuxGSM is released has been implemented so when a command is run for the first time it will always download the same version. This will prevent modules being different versions causing potential unforeseen errors.

Compression Benchmark results

ut2004-server-3369-2-ultimate-linux.tar.xz | size: 1.56GB | decompress: 60MB/s

ut2004-server-3369-2-ultimate-linux.tar.gzip | size: 2.03GB | decompress: 60MB/s

ut2004-server-3369-2-ultimate-linux.tar.bz2 | size: 1.9GB | decompress: 25MB/s

v20.3.0 (2020-05-20)

? New Features

  • install: convert non-steamcmd game srvers to use tar.xz (#2851) (c884889) by Daniel Gibbs
  • ut3server: add monitor query and add minor ut3 improvements (#2853) (0af223d) by Daniel Gibbs
  • log: refactor log handling (#2859) (66bf5e0) by Daniel Gibbs
  • pstbsserver: update Post Scriptum _default.cfg (#2848) (d96507a) by Kenneth Lorthioir
  • stats: provide more accurate server numbers (#2864) (30bb11b) by Daniel Gibbs
  • update-lgsm: LinuxGSM update refactor (#2884) (a76cd3f) by Daniel Gibbs
  • newserver: Chivalry: Medieval Warfare (#2880) (6fcd8d7) by Christian
  • avorion: remove avgalaxy variable and replace with selfname (f05eab2) by Daniel Gibbs

? Bug Fixes

  • ts3server: improve ts3 ip parsing (#2843) (560c4d2) by nero82
  • debug: correct command not exiting correctly (bd408a1) by Daniel Gibbs
  • arkserver: remove all appworkshop_346110.acf if multiple exist (#2852) (216c29d) by Daniel Gibbs
  • monitor: fix monitor timings and lockfile bug (#2882) (b769f2c) by Daniel Gibbs
  • update: Minecraft Bedrock issue causing update to not grab the version from logs (1c6c611) by n8rade
  • mods: sdtd oxide url parsing from github with jq (#2883) (7a6b9f3) by Christian
  • update: ensure that tmpdir is cleared when update is found (#2890) (f40ad7d) by Daniel Gibbs
  • details: correct if for bf1942 details (#2891) (2b9df61) by Daniel Gibbs



This new release added two new servers Assetto Corsa and Avorion and a bunch of new features, fixes and improvements.

For people who have multi-instance servers, all server instances will now reboot after an update. This works by monitor noticing that the server instance has not been rebooted since the previous update and automatically rebooting the instance.

For Soldat players, you may have noticed that it is now hosted on Steam, including the game server. With the assistance of one of the Soldat developers, I migrated the server to SteamCMD and added query functionality.

Further improvements to how SteamCMD functions have been completed. I had to do some research and get help from a Debian maintainer. The improvement standardized the install locations of SteamCMD to place it in the directories that are recommended by Valve. Now no matter the install method for SteamCMD it will always be in the same location.

I would also like to thank GameserverApp for becoming a LinuxGSM partner. GameserverApp uses LinuxGSM to deploy there Linux servers. Their products compliment LinuxGSM well by adding web-based RCON capability to supported game servers and various community tools to manage game servers. I will be working with Max (owner of GameserverApp) over the coming months to see how his products can best help LinuxGSM users. If you want to test out GameserverApp you can connect 5 of your LinuxGSM servers for free.

v20.2.0 (2020-04-24)

? New Features

  • update: multi instance servers will reboot automatically on update (#2800) (ed536ea) by Daniel Gibbs
  • steamcmd: move steamcmd dir to standard location (#2822) (8f14f97) by Daniel Gibbs
  • solserver: migrate to steamcmd and improve monitor (#2829) (f355275) by Daniel Gibbs
  • newserver: Assetto Corsa (#2830) (f0729fc) by Daniel Gibbs
  • newserver: Avorion (#2476) (2f9800e) by Christian

? Bug Fixes

  • correct error with fn_print_error_eol_nl (17efcab) by Daniel Gibbs
  • ts3server: improve ts3 ip parsing (#2789) (fed59c9) by GrillGuth
  • messages: improvements to messaging (#2792) (a3e1b53) by Daniel Gibbs
  • correct and standardise name of goldsrc engine (#2803) (25cfd3b) by Daniel Gibbs
  • alert: resolve bug with telegram curlcustomstring error (147057e) by RuioWolf
  • validate: resolve validate not functioning for non branch (#2802) (390fc23) by Daniel Gibbs
  • roserver: fix bug in _default.cfg (#2813) (3674dd5) by Christian
  • correct and standardise name of goldsrc engine (#2814) (773812a) by Daniel Gibbs
  • install: will not use apt steamcmd package if ubuntu 14.04 (#2820) (b30b36f) by Daniel Gibbs
  • logs: resolve modulename not showing in logs (#2818) (f76cd6b) by Daniel Gibbs
  • bug: gamedig not using the correct JSON object (#2821) (7a38c17) by Jimmy Maple
  • travis: add various fixes to travis tests (#2827) (b88f8d2) by Daniel Gibbs
  • ss3server: resolve ss3 dependency issues (#2823) (b194aeb) by Daniel Gibbs