Skip to content

Quickstart

This guide walks you through a fresh SourceBans++ install from scratch. By the end you’ll have a working panel, a connected database, and at least one game server reporting back to it.

If you haven’t yet, the Overview is the 2-minute background read.

Make sure your host meets the Requirements:

  • A MySQL (>= 5.6) or MariaDB (>= 10.0) database you can connect to.
  • PHP >= 8.5 with the listed extensions.
  • Your game servers run SourceMod >= 1.11 and Metamod: Source.

If you don’t have a database yet, the Database setup guide installs MariaDB on a fresh Ubuntu host in a handful of commands.

You’ll also want:

  • The SteamID of the account you want to make the first admin (it’s you, probably). In STEAM_0:0:12345678 form — see the SteamID tip below if you only know the numeric form.
  • A Steam Web API key from steamcommunity.com/dev/apikey (free, takes 30 seconds).

Grab the latest release zip from the Releases page. You want the sourcebans-pp-X.Y.Z.webpanel-only.zip (web side) and the sourcebans-pp-X.Y.Z.plugin-only.zip (game side) — or the combined zip if you prefer.

  1. Unzip the web archive. You should see a web/ folder.

  2. Upload the contents of web/ to either your web root (so the panel lives at example.com/) or a subfolder (e.g. example.com/sb/).

  3. Set write permissions on the paths the panel writes to.

The wizard will refuse to proceed unless the paths below are writable by the user the webserver runs as. Pick the tab that matches your host:

On most distros the webserver runs as www-data (Debian/Ubuntu) or apache (Fedora/RHEL). If you uploaded as root, also chown the files to that user.

Terminal window
# config.php — the wizard appends DB credentials and the secret
# key to this file.
sudo chmod 644 config.php
# demos/ — uploaded ban-evidence demos.
sudo chmod -R 644 demos
# themes_c/ — Smarty's template cache. The panel writes here on
# every page render.
sudo chmod -R 774 themes_c
# images/games/, images/maps/ — admin-uploaded thumbnails.
sudo chmod -R 644 images/games
sudo chmod -R 644 images/maps

Open https://<your-domain>/install/ in a browser (or https://<your-domain>/sb/install/ if you uploaded into a subfolder). The wizard has five steps; we’ll cover each.

Read it, tick I have read, and accept the licence, click OK.

Fill in the connection info for the database you set up earlier:

FieldWhat to enter
Server HostnameDB host. localhost if the DB is on the same machine, otherwise its IP or domain.
Server PortDB port. 3306 is the default.
UsernameDB user.
PasswordDB password.
DatabaseThe database name. Create it first if you haven’t.
Table PrefixThe prefix for the panel’s tables. Leave at default unless you’re sharing a database with another app.
Steam API KeyPaste the API key from steamcommunity.com/dev/apikey.
SourceBans EmailThe “from” address for password-reset and ban-submission emails. Leave empty if you don’t have one.

The wizard runs a final sanity check — PHP version, extensions, paths it needs to write to. Every row should be green. Fix any yellow / red rows before continuing.

One click. The wizard creates the schema, seeds the default settings, and shows a success notification.

This is the first admin account — that’s you.

Fill it in and click OK. Your panel is now live at https://<your-domain>/.

Step 4 — Register your first game server

Section titled “Step 4 — Register your first game server”

In the panel, navigate to Admin Panel → Server Settings → Add new server. Fill in the form (game, RCON password, IP, port), click Add Server, and note the ID column for the new row — that number is the ServerID the plugin needs in the next step.

Full walkthrough with screenshots: Adding a server.

Unzip the plugin archive on each game server. The plugin files (sbpp_main.smx, sbpp_comms.smx, …) go into addons/sourcemod/plugins/ and the config files into addons/sourcemod/configs/.

You then edit two config files:

Open addons/sourcemod/configs/databases.cfg and add a sourcebans section pointing at the same database the panel uses:

"sourcebans"
{
"driver" "default"
"host" "EDITME_DATABASE_HOST"
"database" "EDITME_DATABASE_NAME"
"user" "EDITME_DATABASE_USER"
"pass" "EDITME_DATABASE_PASSWORD"
"port" "3306"
}

Open addons/sourcemod/configs/sourcebans/sourcebans.cfg and update the ServerID field to match the ID you noted in Step 4.

Save the files, then reload the map or restart the server so SourceMod re-reads the config.

For more on companion plugins (sbpp_comms, sbpp_report, sbpp_checker, …) see Plugin setup.

Back in the panel:

  • The Servers page should show your new server as online with the current map and player list within ~30 seconds.
  • Try banning a test player from in-game via SourceMod’s admin menu — the ban should appear on the panel’s Bans page within seconds.
  • Try banning from the panel — the ban should kick the player from the game server.

If something isn’t working, the most useful starting points are:

Still stuck? Drop into our Discord and ask in #help-support.