# Nuclear Option Server Commands (/docs/nuclear-option/server-commands)



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

Nuclear Option uses a TCP-based remote command system for server administration. This is separate from the game port and must be enabled via startup parameters.

Enabling Remote Commands [#enabling-remote-commands]

Add the following startup argument to enable the command system:

```
-ServerRemoteCommands 7779
```

This opens a TCP listener on port **7779** (or any port you specify). On XGamingServer, check **Startup** to see if this is already configured.

> 📝 **Note:** The command port uses TCP, not UDP. Make sure the port is open if you're managing the server remotely.

***

Command Format [#command-format]

Commands are sent as JSON over TCP with a 4-byte Little-Endian length prefix:

```json
{"name": "command-name", "arguments": ["arg1", "arg2"]}
```

You can use community tools or scripts to send commands. The official [Nuclear Option Server Tools](https://github.com/Shockfront-Studios/Nuclear-Option-Server-Tools) repository has examples.

***

Player Management [#player-management]

| Command                | Arguments   | Description                                                    |
| ---------------------- | ----------- | -------------------------------------------------------------- |
| `get-player-list`      | *(none)*    | Returns all connected players (SteamID, display name, faction) |
| `kick-player`          | `[SteamID]` | Kick a player — they cannot rejoin until the server restarts   |
| `unkick-player`        | `[SteamID]` | Restore a kicked player's access                               |
| `clear-kicked-players` | *(none)*    | Reset all session kicks                                        |

***

Ban Management [#ban-management]

| Command          | Arguments                          | Description                                        |
| ---------------- | ---------------------------------- | -------------------------------------------------- |
| `banlist-add`    | `[SteamID]`, `[reason]` (optional) | Ban a player permanently                           |
| `banlist-remove` | `[SteamID]`                        | Unban a player                                     |
| `banlist-reload` | *(none)*                           | Reload ban lists from disk                         |
| `banlist-clear`  | *(none)*                           | Clear in-memory bans (files on disk are unchanged) |

Bans are stored in `ban_list.txt` — one SteamID per line. You can also edit this file manually via **Files** in the panel.

***

Chat [#chat]

| Command             | Arguments   | Description                                |
| ------------------- | ----------- | ------------------------------------------ |
| `send-chat-message` | `[message]` | Broadcast a message to all players in-game |

> 💡 **Tip:** Messages support Rich Text formatting for colors and styling.

***

Mission Control [#mission-control]

| Command              | Arguments                        | Description                                 |
| -------------------- | -------------------------------- | ------------------------------------------- |
| `get-mission`        | *(none)*                         | Get current and next mission details        |
| `get-mission-time`   | *(none)*                         | Get current and max mission time in seconds |
| `set-time-remaining` | `[seconds]`                      | Change remaining mission time               |
| `set-next-mission`   | `[group]`, `[name]`, `[maxTime]` | Schedule a specific mission next            |

Examples [#examples]

Force the next mission to be Escalation with a 1-hour limit:

```json
{"name": "set-next-mission", "arguments": ["BuiltIn", "Escalation", "3600"]}
```

End the current mission in 60 seconds:

```json
{"name": "set-time-remaining", "arguments": ["60"]}
```

***

Server Management [#server-management]

| Command         | Arguments                | Description                                                                 |
| --------------- | ------------------------ | --------------------------------------------------------------------------- |
| `reload-config` | `[file path]` (optional) | Reload server config from disk — optionally specify a different config file |
| `update-ready`  | *(none)*                 | Signal component readiness                                                  |

***

Response Codes [#response-codes]

| Code      | Meaning                                        |
| --------- | ---------------------------------------------- |
| 2000      | Success                                        |
| 4000–4005 | Client error (bad command, missing args, etc.) |
| 5000–5002 | Server error                                   |

***

> 💡 **Tip:** Need help? Join our [Discord](https://discord.xgamingserver.com) for support.

Related Guides [#related-guides]

* [Configure Your Server](/docs/nuclear-option/configure-your-server)
* [Game Modes & Missions](/docs/nuclear-option/game-modes)
* [Troubleshooting](/docs/nuclear-option/troubleshooting)
