Mr. Clockwork is a Discord bot built to host Dominions 5 games on demand through Discord chat commands
or now with a this web interface.
Changes from the last v3 include a completely refactored, rewritten code from scratch for
ease of maintenace and robustness, a web interface for some of the previous command menus
(host game, change settings, set player preferences), game-specific player
preferences, bot-enforced game timers, improved game status feedback
(game channels now have a pinned post which gets updated by the bot with the last known
timer, turn, status, undone turns, etc. every few seconds), and more.
This release is intended to be the final version of the bot, and will be properly maintained
and kept up to date, to make it easier for others to look into
the code and collaborate if they so desire. New features and commands will be added over
time as necessary. This means that repositories for the previous Mr. Clockwork
versions will now become obsolete.
This is only one of two parts of the codebase. This part specifically handles the Discord
integration and acts as the master in the hierarchy, keeping track of
all required data (games hosted, player preferences, guilds, etc) and updating the status
of the games. The so-called Hosting Slave runs
on every dedicated server that is intended to host the games, and takes care of interacting
directly with Dominions, launch the processes with the correct flags, dealing with the
game's savefiles and backups, installing mods and maps that users upload, etc.