News

Release v24.3.0

In this release, Soulmask and Xonotic have been added and the usual fixes and improvements. UT3 updates its archive to add the OpenSpy fix so your server will show on the OpenSpy master server. UT2k4, Killing Floor and Red Orchestra have had query refactors based on research I have been doing into game queries. SAMP server has had its download URL updated to the new website Also Ubuntu 24.04 has been added.

Satisfactory has also now gone to v1.0 with a previous hotfix for LinuxGSM released resolving the changes that were made. Worth trying if you haven’t played yet.

In the background I have been working on a mini project called Is My Game Server Online? A common question/problem that gets asked is whether a game server is showing up on the master server and if it’s joinable. This project will help server admins confirm their server is online and responds to queries from the internet which should help with testing. I will be integrating the project into LinuxGSM more in the future.

Secondly, I have also been providing loads of feedback to gamedig an upstream project which LinuxGSM uses in the monitor command. This has been from things like correcting game types and adding new games to highlighting bugs.

I have also been researching master servers (mainly gamespy and quake) to get a better understanding of which ones are out on the internet and how they relate to some of the game servers LinuxGSM support. I recently updated some of the game configs with more master servers as well as had a couple of chats with the guys at 333networks who have been tirelessly running a gamespy master server for around 20 years.

Finally, I have also been working on various upgrades for my home lab that have been partly funded by my amazing sponsors. After spending a lot of time getting my cellar cleaned up and painted. I finally managed to get a server rack setup so I have a proper place for the equipment. Not only is it helping me practice working with all sorts of technologies its a fun hobby as well. So thank you to everyone supporting me in contributing to open-source.

Release v24.2.0

In the latest release, several enhancements and fixes have been introduced. Notable features include parallel backup creation using pigz for faster backups. Significant work on compatibility with gamedig 5, including auto install of gamedig if nodejs is installed as well as LinuxGSM will peg to a specific version of gamedig to prevent breaking changes. Additionally, alerts now support Telegram group topics and silent notifications. The release also introduces the Humanitz server, updates paths for Warfork, and ensures dependency consistency. Palworld developers changed the binary name so that has also been updated.

What’s Changed

  • feat(backup): add parallel backup creation using pigz by @MicLieg in #4509
  • feat(monitor): prepare for gamedig 5 by @dgibbs64 in #4510
  • fix(pwserver): fix updated start parameters by @MicLieg in #4516
  • fix(info_game): add ip query timeout and backup api service by @MicLieg in #4524
  • feat(alerts): add support for telegram group topics & silent notifications by @MicLieg in #4526
  • feat(dev): add new developer command for parsing distro details by @MicLieg in #4523
  • feat(new server): humanitz by @ocristopfer in #4518
  • Update Warfork path by @Gelmo in #4541
  • fix: add humanitz icon by @ocristopfer in #4536
  • build(deps): bump actions/add-to-project from 0.5.0 to 0.6.1 by @dependabot in #4538
  • fix(parse-details): change heading of output & add hint for creating new variables by @MicLieg in #4531
  • fix(vh): update bepinexvh url to new url #4547 by @siljelb in #4548
  • build(deps): bump actions/add-to-project from 0.5.0 to 1.0.0 by @dependabot in #4546
  • fix(vh): update binary name to PalServer-Linux-Shipping by @dgibbs64 in #4551
  • Release v24.2.0 by @dgibbs64 in #4552

New Contributors

Full Changelogv24.1.5…v24.2.0

Release v23.7.0

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.

Release v23.6.0

This release adds 2 new game servers Counter-Strike 2 and The Front as well as a rework of alerts.

Counter-Strike 2

The with release of Counter-Strike 2 Valve has made available a Linux dedicated server. However, there are a few caveats currently.

Firstly, Valve has not officially announced CS2 community game servers and are still listed as “coming soon”, which is why CS2 server currently seems incomplete (but working). So, treat CS2 server as a “work in progress”.

Secondly, the dedicated server is currently only available via the game client. This means that the whole CS2 game client is downloaded (33GB) with the game server as well as a requirement to log in to a Steam account and add CS2 to the account to download the server. I recommend creating a new Steam account just for your game server, check out the docs for info about Steam accounts. When Valve changes to using the anonymous server appid I will update the server. Update: anonymous login is now available

CS2 replaces CS:GO so the LinuxGSM CS:GO server will be will be deprecated in a future release.

I have also noticed there are not many community Counter-Strike 2 servers currently available on the server list with it mostly being filled with fake servers. Hopefully, Valve tidy things up soon, and community servers fully return.

Alert changes

I have refactored alerts to improve the consistency, look (new colours), and wording of alerts. New alerts can also be enabled (statusalert) to trigger when a server is started, stopped, and restarted as well as new alerts for backups and wipes (Rust). Game icons have also been added to supported services. The More Info button is now hidden if unused and Game Tracker links have been removed.

Legacy Code and Deprecation

In this release, most code used for legacy purposes has been removed. This is mostly allowing old settings from _default.cfg to continue to work. Most of the legacy code is around 2-3 years old and users should have now migrated to new setting names by now.

I have also decided to deprecate Last Oasis. This is due to the game being abandoned, the game server no longer functioning properly, as well as abysmal user reviews. From time to time game servers that are broken and unused will be removed as each game server takes time to maintain with problematic game servers often taking up a disproportionate amount of time.

Mailgun has also been removed as an alert type as it is now a paid service as well as stats showing for a long time it was completely unused.

UI Updates

I spend a lot of time thinking about the user experience of LinuxGSM and am slowly working on improving the consistency, look, and feel of LinuxGSM as well as streamlining code development. It is a surprisingly difficult task and requires careful consideration. Over the next few releases, you might notice small UX changes to various areas of LinuxGSM. In this release, I have reworked sleep timers to allow me more control of the timing of what is displayed on the CLI. LinuxGSM should feel faster in places or provide more time to read messages when required.

Docker

Development servers running containers

The LinuxGSM Docker image continues to improve the more it is being used. The docker containers have massively helped me with development as I am now able to quickly deploy and run all 130+ servers, allowing me to identify servers that have broken (I hate the discord alert sound now) as well as test code across all game servers at the same time.

If you want to try it out you can check out LinuxGSM docker at Docker Hub.

LinuxGSM Discord Bot

Did you know that LinuxGSM has its own discord bot? You can use it to query your game server as well as the Steam master server. This allows you to check your game server can be seen from the internet. Join the LinuxGSM Discord server to try it out.

Sponsorship

Thank you to everyone who sponsors the project. I have had a recent uptick in new sponsors that have decided to support my development work. If you would like to sponsor me please visit my GitHub Sponsors page. It is also now possible to use sponsors via Patreon from GitHub Sponsors.

And finally as always, thank you to everyone who takes the time to help and support the project.

Release v23.5.0

Hello Everyone. In this release, I focused on under-the-hood features and bug fixes.

This update will force a restart of your game server to deal with a change in how LinuxGSM uses tmux. The monitor command will pick up this and restart as required. If there are any issues with your game server a full reboot of your server will clear it.

Highlights include

Migrate stats to GA-4: Google sunset Universal analytics which I used to gather the stats that you can see on the stats page. GA-4 does improve how stats are gathered behind the scenes. As servers are upgraded stats will start to re-populate on the page. Please opt into stats as they are always interesting to see. A new stat that is gathered is if the serve is running on docker, KVM or bare metal.

Vintage Story has had a refactor and is now using .net rather than mono.

Tmux handling has been refactored to improve “uniqueness” It’s quite a technical change but in summary helps prevent linuxgsm from picking up the wrong tmux session in certain scenarios. For more technical info see the PR.

Lock files have been refactored to allow monitor to better understand the state of the game server. Ensuring monitor will not run if other commands such as backup, debug and update are already running.

A long-standing issue with SteamCMD and Gold source games such as CS 1.6, not download reliability now has a fix in place to handle such a problem. So hopefully no more trying many times to get downloads to work.

Post Scriptum has been renamed from pstbsserver to just psserver. Any one using this game should re-download Linuxgsm with its new name.

There have also been a whole bunch of quality-of-life fixes and refactoring to keep up with any changes in how the game servers work.

A reminder that docker containers are now officially supported so give them a try.

Full release details and commits can be found on github

Release v23.4.0

This release mainly focuses on fixing and refactoring a number of servers that have broken due to major changes in their configuration. For example Rising World migrated to the Unity engine or Arma Reforgers config changes. As well as updating The Isle to use evrima branch by default. I have also integrated what I hope to be a permanent fix for the goldsrc engine steamcmd downloads bug that has plagued us for years. A special thanks to a community member of The Isle for their guidance on the rework of the server.

Since the docker containers have been released I have managed to spin up all game servers across my servers (Sponsored by OVHCloud and Linode) which has allowed me to identify and fix various (sometimes breaking) bugs mainly on lesser-used game servers. I will now have all the servers permanently running to speed up development and identify breaking changes when inevitable changes cause issues.

As always thank you to everyone that supports the project by contributing code, supporting others, or sponsoring me.

  • feat: add header to serverlist.csv by @dgibbs64 in #4231
  • feat(rw): migrate rising world to unity engine by @dgibbs64 in #4261
  • feat: game server config migration by @dgibbs64 in #4262
  • fix(ti): Update config using evrima branch by @dgibbs64 in #4263
  • feat: download appmanifest files for goldsrc games by @dgibbs64 in #4260
  • fix(armar): adapts game info to the new specification of server config by @Marcin648 in #4240
  • build(deps): bump github/issue-labeler from 3.1 to 3.2 by @dependabot in #4258
  • fix(armar): fix parsing new a2s config by @Marcin648 in #4268
  • fix: rework wurm server by @dgibbs64 in #4266
  • Fix(tmux): better tmux session handling for multiple instance on same server / user session by @cclecle in #3767

LinuxGSM Introduces Docker Containers (Finally!)

🐧🐳I am happy to announce LinuxGSM Docker Containers is ready for you to try out as a BETA test.

All the docker containers available are built using the specific dependency requirements for each game server.

For more info about how to deploy a LinuxGSM Docker container Docker Hub.

There are still a few things to finish off and proper documentation needs to be written. However the base containers are now working. Enjoy!

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 (github.com)

Release v22.1.0

This new release sees Arma Reforger and Project Cars 2 added as supported servers. As usual a whole bunch of fixes and improvements mainly from the awesome LinuxGSM community. Please see the list below to see all the changes.

As you can all tell this is another release that has taken time to come out. This is still due to ongoing personal commitments. I think its worth repeating I would like to thank everyone who is helping the project while I continue to get sorted out.

You all might like to know that LinuxGSM is now 10 years old after being started as a quick script at a LAN party to spin up a couple of server in 2012!!

  • fix(deps): add missing dep for distro-info by @h3o66 in #3732
  • fix(vh): log a message when the password is not set or to short by @h3o66 in #3738
  • fix(unt): resolve start parameter issues #2681 by @sharaga44 in #3733
  • refactor(core): move curl check to main file by @h3o66 in #3740
  • fix(av): fix port for config info by @h3o66 in #3826
  • fix(squad): fix variable for queryport by @h3o66 in #3824
  • fix(deps): change openjdk to version 17 for debian 11 by @h3o66 in #3825
  • fix(ns2): remove login by @h3o66 in #3759
  • fix(sdtdserver): monitor command fails by @parasyte in #3764
  • fix(ns2): change mods commandline by @h3o66 in #3760
  • feat(mods): CSGO Mods – Scrape latest version for GOKZ and MovementAPI by @mounten in #3841
  • fix (arma3server): prevent multiple loading mods failing due to accidental line termination by @deveyus in #3845
  • feat(new server): Project Cars 2 by @dgibbs64 in #3842
  • refactor: move steammaster check to info_game by @h3o66 in #3821
  • fix(tfcserver): Fix ip flag in _default.cfg by @jonahwh in #3859
  • chore: Set permissions for GitHub actions by @nathannaveen in #3849
  • fix(mcb): fix renaming whitelist to allowlist by @h3o66 in #3883
  • feat(mcb): allow to set hard a version for the server by @h3o66 in #3881
  • fix(ark): rework parsing of config by @h3o66 in #3878
  • feat(newserver): Arma Reforger by @h3o66 in #3871
  • fix(arma3): rework parsing of config by @Marcin648 in #3886

New Contributors