All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
+
Moved to Google Compute Engine “us-east1-b”, closer to Discord.
-
Removed SQLite from shards.
+
Published the development notes in order to share the intermediate progress, also to make some of the design and solution space visible.
+
Switched to MUSL to build the bot locally: the build didn't fit the server RAM otherwise.
+
Explosions are now printed adjacent to the exploded face.
!
Communication between shards, handlers and database replicas moved from custom UDP to HTTP as a workaround for a may
building issue.
+
The sum flag tells repeat
to sum the results.
+
The spaces are no longer squashed before the parsing, allowing us to implement space-using dice notations.
+
The "t" option can be used to count a face twice.
+
The :scrissors:
emoji (✂) tells Sidekick to delete it's message.
+
Multiple failure conditions: /r 1d10>6f1f2f3
.
+
Mention the inquirer in the /r deal
replies.
+
Patron registration implemented. Memorized roll limits lifted for the servers blessed by patrons.
!
Memorized rolls and statistics moved from a single PostgreSQL server to the replicated High Availability embedded SQLite pair.
+
Replicated (master-master, asynchronous, eventually consistent) SQLite implemented, providing a High Availability database layer.
+
The bot can now deal cards (#95): /r deal 3
, /r shuffle
.
!
High Availability shard failover reimplemented: handlers are used to synchronize usage statistics between the shards,
allowing failover shards to connect whenever primary shards stop getting events.
+
Rerolls, 3d6r1.
+
OVA rolls.
+
Shards separated from handlers. UDP messaging between the shards and the handlers.
+
It is now possible to create a channel-wide memorized roll by using a capital letters name.
+
Added a command to list the memorized rolls (/r $
).
+
Memorized rolls can now be removed.
+
AOL syntax (sponsored by Justin Dafonte).
+
Database integration with timeouts.
+
Ability to save rolls for later. /r $wp = 5. /r $wp.
+
High Availability failover implemented (announcement).
+
Bot instances are now more closely monotored by the watchdog.
+
We are now switched to a version of the driver (discord-rs) patched to use OpenSSL 0.9.
+
Basic LFG implemented. You can now look for like-minded players across the board.
+
Use a sharded connection to Discord.
+
Recurrent explosion (#7).
+
Fudge/Fate rolls (#13).
+
Patreon link.
+
WoD rolls (#4 and #5,
announcement).
+
Keeps and drops (#1).
+
Basic dice (3d6) and math.