---
title: "How to install SourceMod plugins for Team Fortress 2 (TF2)"
description: "Install MetaMod and SourceMod into tf/addons, verify your active build, grant admin access via SteamID, and install starter plugins."
url: "https://www.gameserverkings.com/knowledge-base/team-fortress-2/sourcemod-plugins/"
category: "Team Fortress 2"
category_url: "https://www.gameserverkings.com/knowledge-base/team-fortress-2/"
published: "2026-03-29T19:08:38.114Z"
updated: "2026-08-07T21:05:32.036Z"
source_format: "markdown"
site: "GameServerKings"
---

# How to install SourceMod plugins for Team Fortress 2 (TF2)

SourceMod is the de facto plugin platform for TF2. It powers admin menus, map votes, custom game modes, and thousands of community plugins. It runs on top of MetaMod:Source. This guide installs both and covers the essential plugins.

Complete [Getting started with your Team Fortress 2 server](/knowledge-base/team-fortress-2/getting-started-with-your-team-fortress-2-server/) first.

## SourceMod and MetaMod

SourceMod needs MetaMod:Source underneath it. MetaMod hooks into the Source engine; SourceMod builds the plugin system on top.

### Step 1: Enable in Startup

Set the **Server Type** (or `MOD` variable) in the Startup tab to `sourcemod`. Restart.

[your managed Team Fortress 2 server](/games/team-fortress-2/) downloads the latest MetaMod and SourceMod stable releases on boot and installs them into `tf/addons/`.

### Step 2: Verify

After boot, run from the console:

```text
meta version
sm version
```

Both should respond with their version strings. If you get `Unknown command: sm version`, SourceMod did not load. Check the console for an error during boot, and confirm the Server Type variable is set to `sourcemod`.

### Step 3: Add Admins

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

```ini title="tf/addons/sourcemod/configs/admins_simple.ini"
// "STEAM_0:0:11101"   "99:z"
"STEAM_0:0:11101" "99:z"
```

The format is `<SteamID> "<level>:<flags>"`. `99:z` is full admin with all flags. See the SourceMod admin documentation for finer permission tuning (separate flags for kick, ban, map change, etc.).

Reload admins without restarting:

```text
sm_reloadadmins
```

### Step 4: Common SourceMod Commands

Connect in-game and use chat triggers (`!` shows the menu, `/` runs silently):

```text
!admin                            Open the admin menu
!kick <player> <reason>           Kick
!ban <player> <minutes> <reason>  Ban
!slap <player> <damage>           Slap a player
!slay <player>                    Kill a player
!map <mapname>                    Change map
!nominate <mapname>               Nominate for next map vote
!rtv                              Rock the vote (player-initiated)
```

## Installing Plugins

1. Download the `.smx` (compiled) plugin from AlliedMods (`forums.alliedmods.net`).

2. Upload it to `tf/addons/sourcemod/plugins/`.

3. Reload from the console with `sm plugins refresh`, or restart.

> [!NOTE] Plugin configs only appear after the first load
> Many plugins generate config files in `tf/cfg/sourcemod/` on first load. Edit those after the first boot, then reload the plugin.

Some plugins ship as source (`.sp`) and must be compiled first, either with the AlliedMods web compiler or a local `spcomp`. Most popular plugins offer a precompiled `.smx` download.

## Popular Plugins

Find these at `forums.alliedmods.net`.

### MapChooser Extended

Adds map voting, nominations, and Rock the Vote (RTV). The standard map-rotation plugin for community servers.

- Config: `addons/sourcemod/configs/mapchooser_extended.cfg`
- Pairs with the map cycle covered in [Maps and Fast Downloads](/knowledge-base/team-fortress-2/maps-and-fastdl/)

### SteamWorks

A foundational extension that many other plugins depend on. Install it early, before plugins that require it.

### TF2Items

Allows admins to give and modify custom weapons and items. Required by many other plugins (custom loadouts, VSH, Freak Fortress).

### TF2Attributes

Applies custom weapon attributes for unique loadouts. Often paired with TF2Items.

### Stripper:Source

Modifies maps at runtime without editing the `.bsp`: change spawn points, add or remove entities, adjust item placement. Heavily used for trade servers and custom modes.

### Advertisements / FlashAnnouncer

Periodic server messages: rules, Discord link, donation appeals, rotating tips.

### Auto-Updater (Updater)

Keeps SourceMod plugins that support it updated automatically.

### Skinchooser

Lets players choose their player model. Popular on roleplay and freak servers.

### Other Community Favorites

- **CustomVotes**: Player-initiated votes for various actions
- **High Five**: Lets players high-five each other (surprisingly popular)
- **Quickplay/Heal Tracker**: Various quality-of-life stat trackers

## A Sensible Starter Plugin Set

For a community casual server:

1. SteamWorks (dependency)
2. MapChooser Extended (map votes and RTV)
3. Advertisements (server messages)
4. Basic admin is already covered by SourceMod core

> [!TIP] Leave the extension-heavy plugins out until you need them
> Add TF2Items, TF2Attributes, and Stripper:Source only if you plan to run custom loadouts or modes.

## Common Issues

- **Plugins not loading**: Look at `addons/sourcemod/logs/errors_*.log` for compile or runtime errors. The log names the plugin and the failure.
- **"sm version" unknown after enabling SourceMod**: The Server Type variable is not set to `sourcemod`, or MetaMod failed to load. Confirm both `meta version` and `sm version` respond.
- **Plugin requires an extension that is missing**: Install the dependency (often SteamWorks, TF2Items, or TF2Attributes) before the plugin that needs it.
- **Admin commands do nothing**: Your SteamID in `admins_simple.ini` is wrong or formatted incorrectly. Confirm the `STEAM_0:X:XXXXX` format and run `sm_reloadadmins`.

## What to Read Next

- [Maps and Fast Downloads](/knowledge-base/team-fortress-2/maps-and-fastdl/) since MapChooser pairs with your map cycle
- [Game Mode Servers](/knowledge-base/team-fortress-2/gamemodes/) for modes built on TF2Items and Stripper:Source
- [Getting started with your Team Fortress 2 server](/knowledge-base/team-fortress-2/getting-started-with-your-team-fortress-2-server/) to revisit core server config
- [Team Fortress 2 Admin Commands](/knowledge-base/team-fortress-2/admin-commands/) for every `sm_` command and its permission flag

---

Made with 💜 by GameServerKings
