Files
DayZ-rcon-python/README.md
2024-06-10 23:15:44 +02:00

108 lines
3.2 KiB
Markdown

# DayZ RCON Client CLI
This Python script provides a Command Line Interface (CLI) for DayZ server owners to manage their servers using RCON (Remote Console) commands. The script reads server credentials from a `credentials.json` file and offers various features such as listing players, sending messages, locking/unlocking the server, kicking, and banning players.
## Features and Usage
### Initial Setup
1. **Credentials File**:
- The script checks if `credentials.json` exists. If not, it creates an example file that needs to be filled in with the server's actual details.
- Example credentials in `credentials.json`:
```json
{
"SERVER_ADDRESS": "YOUR-SERVER-ADDRESS",
"SERVER_PORT": 2303,
"RCON_PASSWORD": "RCON_PASSWORD"
}
```
### Main Menu Options
1. List players
2. Messaging
3. Locking
4. Kicking
5. Banning
6. Exit
### Detailed Features
1. **List Players**:
- Lists all the players currently connected to the server.
- Usage: Select option `1` from the main menu.
2. **Messaging**:
- Sub-menu for messaging options:
```
1. Send Global Message
2. Send Direct Message
3. Back
```
- **Send Global Message**:
- Sends a message to all players.
- Usage: Select option `2` -> `1`, then enter the message.
- **Send Direct Message**:
- Sends a message to a specific player.
- Usage: Select option `2` -> `2`, list players, enter the player number and the message.
3. **Locking**:
- Sub-menu for locking options:
```
1. Lock Server
2. Unlock Server
3. Back
```
- **Lock Server**:
- Locks the server, preventing new players from joining.
- Usage: Select option `3` -> `1`.
- **Unlock Server**:
- Unlocks the server, allowing new players to join.
- Usage: Select option `3` -> `2`.
4. **Kicking**:
- Sub-menu for kicking options:
```
1. Kick Single Player
2. Kick All Players
3. Back
```
- **Kick Single Player**:
- Kicks a specific player from the server.
- Usage: Select option `4` -> `1`, list players, enter the player number and reason.
- **Kick All Players** (currently unoperational):
- Attempts to kick all players from the server.
- Usage: Select option `4` -> `2`.
5. **Banning**:
- Sub-menu for banning options:
```
1. Show Banlist
2. Ban Player
3. Ban Player by SteamID
4. Unban Player
5. Back
```
- **Show Banlist**:
- Displays the list of banned players.
- Usage: Select option `5` -> `1`.
- **Ban Player**:
- Bans a specific player from the server.
- Usage: Select option `5` -> `2`, list players, enter the player number, ban time, and reason.
- **Ban Player by SteamID**:
- Bans a player by their SteamID.
- Usage: Select option `5` -> `3`, enter the SteamID, ban time, and reason.
- **Unban Player**:
- Removes a ban for a specific player.
- Usage: Select option `5` -> `4`, show banlist, enter the ban ID.
6. **Exit**:
- Exits the CLI.
- Usage: Select option `6`.
### Roadmap
Future improvements planned for this CLI include:
- Saving player connection data into a database.
- Monitoring server activity and logging data for analytics.