This is a discord bot to manage the Project Zomboid Dedicated Server, allowing server update using SSH Protocol, server commands run with RCON protocol and server info retrieval with discord commands.
The main ideia of this bot came from the necessity of constantly needing to manually close and update the dedicated server whenever either the game or any of the workshop mods had an update. Sometimes I didn't have access to my computer thus leaving my friends unable to play the game.
In order to automate the aforementioned problems and allow a centralized manager. The ZombiZoid bot implementation was designed.
The bot supports the following Linux Architetures:
- aarm64
- amd64
The machine running the bot is a VM.Standard.E2.1.Micro with the following specs:
- OCPU = 1
- Network Bandwith = 0.48 Gbps
- Memory (RAM): 1 GB
The bot was tested on the Oracle Cloud and the dedicated server runs on a Linux x64 machine. The Bot connects with the dedicated server both through RCON (in-game commands calling) and SSH (dedicated server machine management) protocols.
The Bot currently performs the following tasks:
- Start Server By Slash Command
- Update Server By Slash Command
- Checks if The Server is running on the Dedicated Server
- Run in-game commands (RCON) with prefix commands -
zz command
In order to use the ZombiZoid Bot, first a configuration file must be provided with the user data. A baseline for the config enviroment is provided. Once the configuration file is provided the bot can be initialized with the bot.py main script.
python bot.py -c CONFIG_FILE_PATH
In order to run in debug mode, add the -D
argument to the execution line.
A requirements file is provided containing the dependencies required to run the application. In order to install in the current python environtment run the following on the root foler:
pip install -r requirements.txt
It is also necessary to have a chrome webdriver installed in order to perform mods information web scrapping with selenium, allowing adding mods with Steam Workshop URLs