Skip to content
Back to Blog
Guides

TF2 Server Hosting: Complete Team Fortress 2 Setup Guide

Everything you need to know about hosting a Team Fortress 2 dedicated server - from setup to custom maps, plugins, and optimization.

By HostedGG Team
TF2 Server Hosting: Complete Team Fortress 2 Setup Guide
Table of Contents

Why Host Your Own TF2 Server?

Team Fortress 2 remains one of the most iconic multiplayer shooters ever made. With Valve's official servers becoming increasingly sparse, community servers are where the real TF2 experience lives. Here's why you should host your own:

  • Complete control — set your own rules, maps, and plugins
  • No random crits — or keep them, it's your server
  • Custom maps — run favorites like trade servers, jump maps, or MvM
  • Community building — create a home for your friends and regulars
  • 24/7 uptime — your server stays online even when you're not playing

Choosing the Right Server Plan

TF2 is well-optimized but needs adequate resources for larger player counts:

PlayersRAMCPURecommended
1-122 GB2 coresStarter plan
12-244 GB3 coresStandard plan
24-326 GB4 coresPerformance plan
32+8 GB4+ coresPremium plan

Important: Servers with many plugins (SourceMod, custom maps) need more RAM. When in doubt, go one tier higher.

Step 1: Deploy Your TF2 Server

Getting started is quick and easy:

  1. Select a plan based on your expected player count
  2. Complete checkout
  3. Your server deploys in under 60 seconds

You'll receive access to your control panel immediately after deployment.

Step 2: Initial Configuration

Access Your Control Panel

  1. Log into the HostedGG dashboard
  2. Click Manage on your TF2 server
  3. Navigate to the Startup tab

Essential Settings

Configure these core settings first:

SettingDescriptionExample
Server NameShows in server browser[HostedGG] 24/7 Payload
RCON PasswordAdmin remote access passwordStrong, unique password
SV PasswordJoin password (optional)Leave blank for public
Max PlayersPlayer slot limit24
Default MapMap loaded on startuppl_upward

Game Mode Configuration

TF2 supports various game modes. Set these in your server.cfg:

// Payload
tf_gamemode_payload 1

// Control Points
tf_gamemode_cp 1

// Capture the Flag
tf_gamemode_ctf 1

// King of the Hill
tf_gamemode_koth 1

// Mann vs Machine
tf_gamemode_mvm 1

Step 3: Server Configuration File

Navigate to File Managertf/cfg/server.cfg to customize your server:

Recommended server.cfg

// Server Identity
hostname "Your Server Name Here"
sv_password ""
rcon_password "your_secure_rcon_password"

// Network Settings
sv_maxrate 0
sv_minrate 100000
sv_maxupdaterate 66
sv_minupdaterate 66

// Gameplay Settings
tf_weapon_criticals 0           // Disable random crits
tf_damage_disablespread 1       // Consistent damage
tf_use_fixed_weaponspreads 1    // Fixed weapon spread
mp_autoteambalance 1            // Auto-balance teams
mp_teams_unbalance_limit 1      // Max team size difference

// Anti-Cheat
sv_cheats 0
sv_pure 2
sv_pure_kick_clients 1

// Performance
sv_parallel_send 1
sv_parallel_packentities 1
net_splitpacket_maxrate 50000

// Map Settings
mp_timelimit 30
mp_maxrounds 0
mp_winlimit 0

Step 4: Installing SourceMod (Plugins)

SourceMod is essential for advanced server management:

Installation Steps

  1. Download SourceMod (stable build)
  2. Download MetaMod:Source (required)
  3. Upload via File Manager:
    • Extract MetaMod to /tf/ folder
    • Extract SourceMod to /tf/ folder
  4. Restart your server
  5. Verify in console: sm version

Essential SourceMod Plugins

PluginPurposeDownload
Admin MenuIn-game admin controlsIncluded
Map ChooserVote for next mapIncluded
Anti-CheatCatch cheaterssm-anti-cheat
Reserved SlotsVIP slot reservationIncluded
Spray TracerTrack offensive spraysAlliedMods

Admin Setup

Edit tf/addons/sourcemod/configs/admins_simple.ini:

"STEAM_0:1:12345678" "99:z" // Full admin
"STEAM_0:0:87654321" "50:b" // Mod (kick/ban only)

Step 5: Map Management

Adding Custom Maps

  1. Download maps from TF2Maps.net or GameBanana
  2. Upload .bsp files to /tf/maps/
  3. Add to mapcycle.txt:
pl_upward
pl_badwater
cp_dustbowl
koth_harvest_final
ctf_2fort
your_custom_map

Fast Downloads

For custom content, set up fast downloads:

sv_downloadurl "https://yourcdn.com/tf2/"
sv_allowdownload 1
sv_allowupload 0

Upload your maps and materials to a web server/CDN for faster client downloads.

Step 6: Popular Server Types

Payload 24/7

mapcycle.txt:
pl_upward
pl_badwater
pl_goldrush
pl_thundermountain

server.cfg additions:
tf_gamemode_payload 1
mp_timelimit 30

Trade/Idle Server

map: trade_plaza_2
sv_cheats 0
tf_weapon_criticals 0
mp_disable_respawn_times 1
mp_respawnwavetime 0

Jump Server

map: jump_beef
sm_cvar sv_airaccelerate 150
mp_disable_respawn_times 1
// Install TF2 Jump plugin

MvM (Mann vs Machine)

tf_gamemode_mvm 1
tf_mm_servermode 1  // Matchmaking enabled
tf_mvm_min_players_to_start 1

Step 7: Connect to Your Server

Method 1: Server Browser

  1. Launch Team Fortress 2
  2. Click Find a GameCommunity Servers
  3. Search for your server name
  4. Click Connect

Method 2: Console Connect

  1. Enable developer console (Options → Keyboard → Advanced)
  2. Press ~ to open console
  3. Type: connect your.server.ip:27015

Method 3: Steam Server Browser

  1. In Steam: ViewGame Servers
  2. FavoritesAdd a Server
  3. Enter IP:Port
  4. Right-click → Connect

RCON Commands

Control your server remotely via RCON:

rcon_password "your_password"      // Authenticate
rcon changelevel pl_upward         // Change map
rcon sm_kick "player" "reason"     // Kick player
rcon sm_ban "player" 0 "reason"    // Permanent ban
rcon mp_timelimit 45               // Set time limit
rcon status                        // Show players

Essential Admin Commands

CommandDescription
rcon sm_adminOpen admin menu
rcon sm_map mapnameChange map
rcon sm_kick playerKick player
rcon sm_ban player timeBan (0 = permanent)
rcon sm_slap playerSlap player
rcon sm_slay playerKill player
rcon say messageServer announcement

Troubleshooting

Server Not Appearing in Browser

  • Wait 5-10 minutes after starting
  • Check sv_lan is set to 0
  • Verify ports are correct (27015 UDP)
  • Try connecting via IP directly

Players Getting "Server using different class tables"

  • Server and client version mismatch
  • Update server to latest version
  • Restart server after updates

High Ping / Lag

  • Check sv_maxrate settings
  • Reduce plugin count
  • Upgrade to higher plan
  • Check server location vs player location

SourceMod Not Loading

  • Verify MetaMod is installed correctly
  • Check tf/addons/metamod.vdf exists
  • Review console for error messages
  • Confirm compatible versions

Custom Maps Not Downloading

  • Set up sv_downloadurl properly
  • Check file permissions on web server
  • Ensure .bz2 compressed versions exist
  • Verify URL is accessible

Performance Optimization

Network Optimization

// server.cfg additions for 66 tick
sv_maxrate 0
sv_minrate 100000
sv_maxupdaterate 66
sv_minupdaterate 66
sv_maxcmdrate 66
sv_mincmdrate 66

// Multicore optimizations
sv_parallel_send 1
sv_parallel_packentities 1

Reducing CPU Usage

  • Limit max players to actual needs
  • Disable unused plugins
  • Use simple map rotations
  • Regular server restarts (daily)

Best Practices

  1. Regular backups — Download server configs periodically
  2. Keep plugins updated — Security and compatibility
  3. Monitor player count — Upgrade if consistently full
  4. Set clear rules — MOTD and !rules command
  5. Active moderation — Build a trusted mod team
  6. Community Discord — Connect with regulars offsite

Quick Reference: Common cvars

CvarDescriptionValues
sv_cheatsEnable cheats0/1
tf_weapon_criticalsRandom crits0/1
mp_timelimitMap time (minutes)0-60
mp_maxroundsMax rounds0-99
sv_pureFile validation0/1/2
mp_autoteambalanceAuto-balance0/1
mp_respawnwavetimeRespawn wave0-20

Ready to build your TF2 community? Deploy your Team Fortress 2 server now and start playing in under 60 seconds.

Questions? Join our Discord for help from our team and community.

Published by

HostedGG Team

Published

January 1, 2025

Help verify this page

Know this topic? Submit a fix, missing detail, or patch check.