This guide covers how to set up your SourceCoop (Black Mesa Co-op) server on Legion Hosting, configure server settings, and connect players. SourceCoop is a cooperative server-side mod for Black Mesa that lets players play through the single-player campaign together. For admin commands, SourceMod plugins, and map management, see SourceCoop Admin and Commands Guide.
1. First Start
- Log in to GPanel and select your SourceCoop server.
- Go to the Startup tab and configure the variables (see the table in Section 2).
- Set SERVER_NAME to your desired server name.
- Set STARTING_MAP to the map you want to start on (default:
bm_c0a0a, the beginning of Black Mesa). - Return to the Console tab and click Start.
- Wait for the console to display the
gameserver Steam IDline indicating the server is ready.
bms/cfg/server.cfg file is generated during installation with sensible defaults for cooperative play. Start the server once to verify it works, then customize as needed.
2. GPanel Startup Variables
The following variables are available in the GPanel Startup tab.
| Variable | Default | Description |
|---|---|---|
SERVER_NAME |
Black Mesa: Coop |
Server name shown in the server browser (max 128 characters). |
MAX_PLAYERS |
10 |
Maximum number of players (1-128). |
SERVER_PASSWORD |
0 |
Password to join the server. Set to 0 for no password. |
STARTING_MAP |
bm_c0a0a |
The map loaded on server start. See Section 4 for the full map list. |
FRIENDLY_FIRE |
0 |
Enable friendly fire. 1 = on, 0 = off. |
MOD_FORCETOUCHDATA |
1 |
Enable pre-caching of map data. Disable (0) if the bm_c4a4a map (Nihilanth) causes crashes. |
AUTO_UPDATE |
0 |
Auto-update Black Mesa server on startup. 1 = on, 0 = off. Note: Server updates may require reinstalling SourceCoop. |
3. Server Configuration (server.cfg)
The main server configuration file is:
bms/cfg/server.cfg
Open this file using the Files tab in GPanel or connect via SFTP.
Key Settings
| Setting | Default | Description |
|---|---|---|
hostname |
"Black Mesa: Coop" |
Server name (also set via startup variable). |
sv_password |
0 |
Server password (also set via startup variable). |
mp_teamplay |
1 |
Must be 1 for SourceCoop to function correctly. |
mp_friendlyfire |
0 |
Friendly fire toggle (also set via startup variable). |
sv_always_run |
0 |
Set to 1 to disable sprinting (players always run). |
mp_timelimit |
0 |
Map time limit in minutes. 0 disables the limit. |
sourcecoop_homemap |
"bm_c0a0a" |
The map to loop back to after finishing the campaign. Comment out to use the mapcycle instead. |
mod_forcetouchdata |
1 |
Pre-cache map data. Disable if Nihilanth map causes crashes. |
mp_teamplay. This must remain set to 1 for SourceCoop to work properly. Changing it will break the cooperative gameplay.
4. Black Mesa Map Names
The STARTING_MAP variable accepts any official Black Mesa map. Maps follow the naming convention bm_cXaYZ where X is the chapter and Y/Z are the sections. The campaign starts at bm_c0a0a.
Key chapter starting maps:
| Map | Chapter |
|---|---|
bm_c0a0a | Inbound (Tram Ride) |
bm_c1a0a | Anomalous Materials |
bm_c1a1a | Unforeseen Consequences |
bm_c1a3a | Office Complex |
bm_c2a1a | "We've Got Hostiles" |
bm_c2a4a | Blast Pit |
bm_c2a5a | Power Up |
bm_c3a1a | On A Rail |
bm_c3a2a | Apprehension |
bm_c4a1a | Lambda Core |
bm_c4a2a | Xen |
bm_c4a3a | Interloper |
bm_c4a4a | Nihilanth (may require disabling mod_forcetouchdata) |
5. How Players Connect
- Launch Black Mesa on Steam.
- Open the console (press ~) and type:
connect IP:PORT(using values from GPanel's Network tab). - Alternatively, find the server in the Steam server browser.
- Enter the password if one is set.
Related Articles
- SourceCoop Admin and Commands Guide
- How to Find Your Server IP and Port
- How to Upload Files via SFTP
Need Help?
If you run into issues with your SourceCoop server, open a support ticket and include your server IP, a description of the problem, and any relevant error messages from the GPanel console.