# How to Configure Your Quake Live Server (server.cfg) (/docs/quake-live/server-config)



import { Step, Steps } from 'fumadocs-ui/components/steps';

Quake Live uses `server.cfg` inside the `baseq3/` directory. Settings use the `set` command (Quake Live's version, not `seta` like Quake 3).

How to Edit server.cfg [#how-to-edit-servercfg]

<Steps>
  <Step>
    Stop the server [#stop-the-server]

    In the [XGamingServer Panel](https://panel.xgamingserver.com), go to **Console** and stop your server.
  </Step>

  <Step>
    Open server.cfg [#open-servercfg]

    Click **Files** in the sidebar and open `baseq3/server.cfg`.
  </Step>

  <Step>
    Edit and save [#edit-and-save]

    Make your changes, click **Save Content**, then start from **Console**.
  </Step>
</Steps>

Key Settings [#key-settings]

```
set sv_hostname "My QL Server"
set sv_maxClients 16
set g_password ""
set zmq_rcon_enable 1
set zmq_rcon_password "YourSecureRconPassword"
set sv_mapPoolFile "mappool.txt"
```

| Setting             | Description                                       |
| ------------------- | ------------------------------------------------- |
| `sv_hostname`       | Server name in the browser                        |
| `sv_maxClients`     | Max simultaneous players                          |
| `g_password`        | Join password (empty = public)                    |
| `zmq_rcon_enable`   | `1` to enable ZMQ RCON (Quake Live's RCON system) |
| `zmq_rcon_password` | RCON password — set this for admin access         |
| `sv_mapPoolFile`    | File listing maps in rotation                     |

Game Factories [#game-factories]

Quake Live uses **Game Factories** (`.factories` files in `baseq3/scripts/`) to define game modes. Each factory is a JSON file specifying gametype, ruleset, and overrides.

Common gametypes:

* **FFA** (Free For All)
* **Duel**
* **Team Deathmatch**
* **Clan Arena**
* **Capture The Flag**
* **Domination**
* **Freeze Tag**
* **Harvester**
* **Race**

Set the active factory with:

```
set g_factory "ffa"
```

Workshop Maps [#workshop-maps]

Add Steam Workshop maps via `workshop.txt` in `baseq3/` — one Workshop ID per line:

```
2384567890
1234567890
```

Then point to a workshop-aware map pool:

```
set sv_mapPoolFile "mappool_workshop.txt"
```

The server downloads Workshop maps automatically on next start.

Bots [#bots]

Add bots from the in-game console or RCON:

```
addbot <name> <skill> <team>
```

Skill: `1` (easy) to `5` (expert). Example:

```
addbot sarge 5 red
```

minqlx (Python Plugin Framework) [#minqlx-python-plugin-framework]

For admin tools, voting, team balance, and stats, use **minqlx** — Quake Live's Python plugin framework.

<Steps>
  <Step>
    Install minqlx [#install-minqlx]

    Install to `minqlx-plugins/` in the server root. See [minqlx GitHub](https://github.com/MinoMino/minqlx) for setup.
  </Step>

  <Step>
    Add plugins [#add-plugins]

    Drop Python plugin files into `minqlx-plugins/`.
  </Step>

  <Step>
    Restart [#restart]

    Restart the server. Plugins load on startup.
  </Step>
</Steps>

Required Ports [#required-ports]

| Port      | Protocol | Purpose      |
| --------- | -------- | ------------ |
| **27960** | UDP      | Game traffic |

Related Guides [#related-guides]

* [Connect to Your Server](/docs/quake-live/join-server)
* [Change Max Players](/docs/quake-live/player-slots)
