Warn System Update

March 29th, 2024

Author: Kate Ward

How fancy is this! A new Xenia update, with a Quality of Life update and preparing for a codebase refactor???

Finally built up the energy to work on Xenia again after starting my new job, and I was a little bit annoyed with the current method for keeping track of warns in the /r/LapfoxTrax Discord Server. So I offered to implement a strike-based system into the existing Warn system, and my offer was accepted!

You can view more about the Warn System in the updated guide page.


Along with the QoL changes, this release also starts preparing for a big-ish change with how the _id property in the Database is stored for all documents. Silly me decided to use an ObjectId as the type (which I hate working with), instead of something that is easier to keep track of (like a Guid or a randomly-generated string). To know when the code should replace all values for _id with a freshly created Guid, a new collection has been added to keep track of the previous version that was launched. To see how it actually works, you can take a peek at the code here.


  • Added the ability to configure the settings for the new Warn Strike system.


  • Show when a Warn has become Inactive when viewing all Warns in a Guild.



  • When warning a user, display in Embed when the target user has reached the Warn Threshold


  • Added the ability to view Active Warns on a user.
  • When viewing the warns on a user, it will display a message when they have reached the Warn Threshold.


  • You can configure the Warn Strike system with the following commands
    • /warn strike-enable - Enable warn strikes
    • /warn strike-disable - Disable warn strikes
    • /warn strike-window - Set strike window
    • /warn strike-limit - Set strike limit
    • /warn strike - Get config

<< go back