This release sees Quake 4 added, a bunch of fixes, refactoring and a UE4 server tidy-up, including finding a few servers that have been upgraded to UE5. While this is not the most exciting release the quality-of-life improvements will help existing servers. Full changelog can be found here.
Currently, I am slowly going through each of the game servers I am hosting, opening the ports and ensuring I can connect to them. It is proving to be a great exercise in highlighting any issues with existing game servers and you will see fixes being added as I find them. A prime example is issue #4389 which highlighted that the steamclient.so was so old that unless you manually updated it a Killing Floor server would not show in the steam server browser. This is the sort of issue I would not have noticed unless I re-tested KF.
On a side note, I rediscovered Natural Selection 2 and have been playing it for the past week or so because I was just testing the game server. It has a small dedicated community and it has been great to pickup a game I haven’t played in years.
Work continues to add new features and fixes and I am looking forward to another year of development of a project that has run for over 10 years.
As always thank you to everyone who contributes to LinuxGSM and if you enjoy my work consider sponsoring me.
I hope everyone enjoys the holidays.
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 (github.com)
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, Rocket.chat 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 steamclient.so 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.
? 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 steamclient.so related messages and issues (#3040) (358e34d) by Daniel Gibbs
- alerts: add rocket.chat and alerts refactor (#3051) (ee515b7) by Daniel Gibbs
- fix: move steamclient.so 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 steamclient.so (#3030) (fa5a668) by Christian
- fctrserver: fix and improve fetching info from config file (#3031) (37fda0f) by Christian
- pzserver: fix missing steamclient.so (#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 steamclient.so 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.
- 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 check_version.sh 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: query_gamedig.sh 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 ipify.org instead of ifconfig.co (#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 (probably
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
? 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