feat(tf2classified): add Team Fortress 2 Classified server#4898
Merged
feat(tf2classified): add Team Fortress 2 Classified server#4898
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds LinuxGSM support for the Team Fortress 2 Classified dedicated server (appid 3557020) and introduces a two-stage SteamCMD install concept (download a required “base app” first, then the actual server app) to support servers that depend on another game’s files.
Changes:
- Add
tf2classifiedto the supported server list and install config handling. - Introduce
baseappidhandling in SteamCMD download flow to install base files intosupportdirfirst. - Add a new default config for
tf2classifiedserver(including start parameters and alert defaults).
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| lgsm/modules/install_config.sh | Adds tf2classified handling for default config setup. |
| lgsm/modules/core_dl.sh | Adds SteamCMD download logic for optional baseappid installs. |
| lgsm/data/serverlist.csv | Registers the new tf2classified server entry. |
| lgsm/config-default/config-lgsm/tf2classifiedserver/_default.cfg | Introduces default config for the new server, including baseappid/supportdir and start parameters. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Add support for Team Fortress 2 Classified dedicated server (Steam appid 3557020). TF2 Classified requires the live TF2 server files (appid 232250) to be installed to a separate directory which is then passed to the server via the -tf_path parameter. Introduces a new baseappid config variable: when set, SteamCMD downloads the base app to supportdir first, then the main appid to serverfiles. Reference: https://wiki.tf2classic.com/wiki/Dedicated_Linux_server Co-authored-by: Daniel Gibbs <me@danielgibbs.co.uk>
…server Shorter, conventional name consistent with other Source mod servers (tfc, tf2, etc). The game directory is now tf2c, config dir tf2cserver, shortname tf2c. Also update startparameters game flag: -game tf2c
cp_badlands is a stock TF2 map. 4koth_frigid ships with the TF2C dedicated server files and does not require TF2 base content on the client.
The game's installed directory is tf2classified (not tf2c). Using -game tf2c created a secondary directory with hardcoded absolute paths in gameinfo.txt. Using tf2classified uses the proper install with |appid_440| tokens in gameinfo.txt.
- Move baseappid block before branch/betapassword checks so base app is always installed first when baseappid is set, regardless of whether branch/betapassword are also configured - Capture PIPESTATUS[0] after base app download and continue the retry loop on failure, preventing a failed base app install from being masked by a successful main app install - Add guard: fail with a clear message when baseappid is set but supportdir is empty/unset
31799b1 to
b346e68
Compare
This was referenced Apr 19, 2026
Merged
dgibbs64
added a commit
that referenced
this pull request
Apr 19, 2026
dgibbs64
added a commit
that referenced
this pull request
Apr 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Add support for Team Fortress 2 Classified dedicated server (Steam appid 3557020). TF2 Classified requires the live TF2 server files (appid 232250) to be installed to a separate directory which is then passed to the server via the
-tf_pathparameter.Introduces a new
baseappidconfig variable: when set, SteamCMD downloads the base app tosupportdirfirst, then the mainappidtoserverfiles. This avoids pollutingserverfileswith the base game's files.Finishes the work started in #4876 with the following fixes/additions:
_default.cfgcore_dl.shto use the current array-based command format (the original PR used the deprecated string-based format)tf2caftertf2inserverlist.csvandinstall_config.shfor consistencyReference: https://wiki.tf2classic.com/wiki/Dedicated_Linux_server
Fixes #4876
Type of change
Checklist
PR will not be merged until all steps are complete.
developbranch as its base.Documentation
If documentation does need updating either update it by creating a PR (preferred) or request a documentation update.