This repository has been archived on 2025-02-16 . You can view files and clone it, but cannot push or open issues or pull requests.
All checks were successful
Build and Push Docker Image / build (push) Successful in 14s
Spiffo
A multi-purpose Discord integration bot for Project Zomboid.
Features
- Interact with the remote console via slash commands in Discord.
- A live count of all online players as the bot's activity status.
- Views of complicated player data through direct access to the players.db file.
- Automated mod update management including: restart warnings, saving and exiting, restarting the server.
- Player connect and disconnect alerts in a specified Discord channel.
- Ability to read directly from the server console log for accurate up-to-date info.
- Super easy deployment via docker with environment variables for configuration.
Setup
Environment Variables
Despite being isolated to a docker container in deployment, the environment variables are prefixed with the application name (SPIFFO__
).
This should make the environment variables used be more clear and pronounced when you choose to use them or otherwise.
Variable | Description | Required | Default Value |
---|---|---|---|
SPIFFO__BOT_TOKEN |
Credential to allow the application to authenticate as the bot. | ✔ | |
SPIFFO__RCON_HOST |
Host of the server's remote console. | ✔ | |
SPIFFO__RCON_PORT |
Port of the server's remote console. | ✔ | |
SPIFFO__RCON_PASSWORD |
Password of the server's remote console. | ✔ | |
SPIFFO__DISCORD_CHANNEL_ID |
Snowflake ID of the channel where join alerts and other server related messages should appear. | ✔ | |
SPIFFO__STEAM_API_KEY |
Web API key granted by steam, allows for the user's steam profile info to be shown in the join alerts. | ||
SPIFFO__ZOMBOID_FOLDER_PATH |
Absolute path to the 'Zomboid' folder that contains the server-console.txt file. |
✔ | |
SPIFFO__SERVER_NAME |
Name of the server instance, don't change unless you know what you are doing! | servertest |
Why Did I Make This?
All existing bots are poorly coded, slow and/or lack certain features.
They usually fall into a couple of categories; single purpose and great or multi-purpose and bad.
I wanted to make a clean, beautiful and functional bot with ALL of the features!
Languages
Python
98.9%
Dockerfile
1.1%