Music. Coding. Gaming. Life.

Overload Teams League

Project Homepage:
Primary Language: JavaScript
Created: 6/5/2018 6:26:45 am (6/5/2018)
Updated: 7/7/2021 9:32:48 pm (7/7/2021)

The Discord bot and website used for the Overload Teams League.



* `!report` now shows the secondary notice immediately instead of after updating the pinned message.
* `!shenanigans` has been removed to avoid confusion.


* Records page now filters by team.
* Fix bug with standings page.
* Fix bug with adding stats with a timestamp to ignore events after.
* Improve handling of timezones when a year isn't specified in a date.


New Features:

* New date time zone conversion library is being used. Please report any new bugs with `!suggesttime` or `!convert`.
* Date parsing now allows just a time in most places. It will use the first date in the future when that time will be. Good for scheduling matches for later in the day.
* New `!convert` command for challenge rooms, which lets you arbitrarily convert dates and times to the timezone of everyone in the channel.
* Net damage is now displayed as a statistic on the matches and match pages.
* Self-damage is now calculated as part of the total damage taken on the match page.
* `!addstats` now includes a timestamp parameter that will allow an administrator to remove all events that happened in a game after a certain point in time.

Bug Fixes:

* `!suggestrandommap` works again.
* Various issues with the cast pages have been resolved.
* Fixed unhandled exception when an invalid date without a year is given (ie: February 29).
* Hardened querystring handling on the standings page.
* `!pickmap` error message now correctly states there are five home maps.
* Fix `4v4+` as a valid home map type.
* Fixed confirmed team size not showing in the pinned post for challenges.
* Fixed a pretty bad memory leak with the website.
* Removed team rating from the team page when viewing all seasons.
* Removed a number of redundant messages when dealing with maps or captains.


Support for Season 5 of the OTL.


* Fax various bugs introduced with home maps in v4.0.4.
* Fix divide by zero errors for damage per death.


* Channel topics for challenges and new teams have been removed, and replaced with a pinned message.
* Challenge channel pinned messages are now simplified, and will contain a checklist of things that are needed to do prior to the match. Use to see the full list of commands available.
* Twitch names and streaming designations will now automatically pick up from your Discord presence. As long as your Twitch streams are detected by Discord, you should not need to use the `!twitch` and `!streaming` commands. For those that prefer to not use Discord presence for their Twitch streams, but still wish to mark themselves as streaming the match, the commands can still be used. Note that this is aggressive - there is a 30 minute check, if you're streaming Overload within 30 minutes of your match you will be set as streaming your match.
* New `!mynext` command that only shows the next matches for your team.
* Player page damage breakdown section now respects the Postseason selector.
* Fixed bug with rematch not showing available home maps to pick from.
* Fixed bug with challenge channel permissions.
* Fixed bug when adding stats from the wrong game.


* Home maps have been overhauled. Team anarchy is now split into 3 categories, 2v2, 3v3, and 4v4+, and the set of commands to manage home maps has changed. See for the new list of commands.
* Website will now show the home maps for each cateogry.
* New neutral maps feature. Similar to home maps, but does not get divided into categories for Team Anarchy. See for the new list of commands.
* When challenging a team, if both teams have matching maps in their neutral map lists, those maps are displayed when the challenge is created.
* Teams are no longer required to have a stock map in their home map list.
* New ELO algorithm for CTF games. Internally, when games finish with the winner under 10 points, the algorithm will add 1 point to each team until one team is at 10 points, and then calculate CTF ELO like before.
* Update game settings for olmod.
* Fix a number of bugs with malformed website requests.


* Captains will no longer be left in a team's captains channel after they've left the team.
* Due to league growth and Discord category channel limits, the Challenges channel category will now cap at 40 challenges. If any challenges go in that would put it above the cap, it will rename the Challenges channel to "Old Challenges" and create a brand new "Challenges" channel.
* `!pickmap` is now case insensitive.


* Maps are now categorized into game types. You cannot fly a map in game modes other than Team Anarchy if they were not intended for that game mode. However, any map can be flown in team anarchy.
* `!report` now accepts a tracker URL instead of the score. You can `!report` multiple games this way to combine stats from multiple games in the event of disconnections.
* `!report` using the score, the old way of reporting games, still works but will now wipe out any stats accumulated up to that point. Use this as a workaround if you're having trouble using `!report` with the tracker URL parameter. `!report 0 0` will reset both the score and the stats for the game, so use that if you need to start over using `!report` with the tracker URL parameter.
* Teams may now `!challenge` another team even if they have pending postseason challenges open.
* `!creatematch` now has a parameter to create a number of games, alternating the home team of each game but keeping the colors throughout the series.
* Add `!testing` and `!stoptesting` commands for users to join the publicly mentionalbe @Testers role.
* `!suggesttime` no longer defaults to GMT when using dashes in the date. Technical note: The workaround is to replace the dashes with slashes, so if you were using dashes in your date previously keep this in mind.


* Fix various website bugs with stats for players that switch teams.
* Commands that set topics no longer wait for the topic to be set, and will throw errors if they timeout.
* Fix bug with error logging.
* Fix HTML encoding in JavaScript.
* Various code cleanup.


Support for Season 4 of the OTL.

### Bot

* Fixed bug with logging.
* Disallow challenging your own team.

### Website

* Restrict season numbers on the records and players pages to prevent abuse.


* Added the `!suggestrandommap` command, see for more details.
* Match page now orders players by number of captures instead of by KDA for the CTF game type.
* Added damage totals taken per player to the match page.
* Fixed the players page, the option to show active or all players should work again.
* Players page should no longer show players listed twice.
* All references to screenshots have been removed, in favor of providing tracker links.
* Closed games will now invalidate caches so that the home page and the standings page will refresh with current ratings.
* Fixed bug with an incomplete `!addstats` command inadvertantly changing the challenge's match time.
* ???


* New `!capexempt` command allows the server owner to add players to teams beyond the roster cap.
* `!uncast` now works as expected.
* Various bugs with stats on the website are fixed.
* Colors for rematches will no longer change between matches.
* Captains cap has been removed.
* Added game settings for olmod to read.
* Fixed bug introduced in newer versions of Chrome having to do with countdowns.
* Fixed security bug in the og:url meta tag.
* Fixed a new instance of an unnormalized name on the website.
* Added support for adding stats from a game on a Russian server.


* `!addstats` now will move the match time back if it was played earlier than the game was agreed upon.
* The font in the damage breakdown section of the players page is now more consistent on Windows.
* Records page now only counts season 3 and later for all time damage records.
* Links page now points to instead of
* Security fix with minification.


### Bot:

* `!close` now displays stats for both teams, rather than for one team twice.
* Channel topics for challenges and teams are formatted correctly.
* CTF formats have been standardized across the bot and the website. Example: `4 C/8 P (12 CK, 8 R), 1.250 KDA (40 K, 10 A, 40 D), 5000 Dmg`
* Join in progress games where players not part of the match accidentally joined are now ignored.
* `!suggesttype` and `!confirmtype` are now disabled for locked matches.
* `!addstats` will now notify on score change if it changed the score to a tie.
* `!creatematch` now allows being called without a game type, defaulting to Team Anarchy.
* `!creatematch` no longer checks validity of home map count for game types other than the type of match it is creating.

### Website:

* Players page no longer counts friendly fire damage towards damage stats.
* Removed option to display all or active pilots for postseason on players page. This will now always display all players who competed in the postseason.
* Players page now only counts the game type selected when considering if a player was active.
* Cast page no longer lists players twice in a postseason game.
* Cast page now displays whether the last game the teams played was an overtime game.
* Matches page now shows dates if there is only one page of matches available.
* Records and player pages will now show the last season if the new season has no data yet.
* Various formatting fixes across the website related to damage and CTF stats.
* Improved mobile support. If something doesn't look good on mobile devices, please file an issue.
* Replaced express-minify with custom combination and minification handlers using terser and csso with caching to Redis.

### Back end:

* Now using .d.ts files for complex types across JavaScript. These can be found in the /types directory, and all existing .d.ts files have been moved to that directory.
* Various dependency upgrades.


Support for Season 3 of the OTL.

### Bot:

* New and updated commands for CTF support. See
* Allow bot to read from the tracker for all supported languages except Russian.
* Fixed `!removemap` command, it actually works now.
* Fixed `!addstats` command to correctly do reverse pilot lookups when the match was split across multiple games.

### Website:

* New CTF stats across the entire website.
* New damage stats across the website. Players listing and records will only list damage stats for season 3 and later.
* There are some known formatting and mobile layout issues that will be addressed in a future version.
* Caching can now be disabled from the settings file.


### Bot:

* Increased maximum team roster size to 10.
* New `!swapcolors` admin command for cases where teams played the wrong color for a match.
* `!stats` now works for players with URL entities in their name.
* Fixed `!addstats` to not crash when there's no attacker on a damage stat.
* When a team is founded, the team founder is removed from other teams' invites and requests.

### Website:

* Top KDA on the home page now requires players have played in 10% of their teams' games.
* Players page now defaults to active players, which means players who have played in 10% of their teams' games.
* This 10% value will be monitored and adjusted as necessary.
* Rating changes on team page now show the correct operator for all games.
* Season selectors across the site have been fixed.
* Match page no longer shows an empty area instead of a score when the score is 0.
* Match page loads better on mobile.


### Bot:

* Home team no longer takes postseason games into account when determining the home team.
* New `!addstats` command to add stats from the tracker.
* New `!homes ()` command to list your team's homes or a specific team's homes.
* `!addstat` will now allow players not on the server.
* `!addstat` will no longer add a player twice to a game.
* New `!clearstats` command
* Games reported to #match-results will now link to the match page on the website.
* All references to home server have been removed.
* A player leaving the server who was scheduled to stream a match no longer crashes the challenge's topic.

### Website:

* Damage stats are now displayed on the match page for Season 2.
* Rating changes are now displayed on various pages throughout the site.
* Cast page no longer 404s.
* Cast page only shows a player's season stats.
* Cast page correctly shows the previous match, regardless if it had stats or not.
* Team page now includes games without player stats.
* Players page now shows the most recent team they were on in the season selected.
* Teams who did not play in a season do not show up in the standings for that season.
* A player in the top 5 KDA but not on a team will not crash the home page.
* URLs on the player page now respect name normalization.

### General:

* Redis is now more stable and won't error out the page if it's down.
* Improved logging.
* Improved caching.


### Bot:

* 5 home maps are now required for challenges.
* Games with no stats are allowed to be closed.
* `!timezone` by itself will clear your timezone. If you are on a team, your timezone will default to the team's timezone, otherwise it will default to America/Los_Angeles. This also has the side effect of removing you from the listing of free agents.
* `!disband` no longer causes errors.
* You can now `!cast` an old match. Use this for adding VODs to old matches.
* `!cleartime` now behaves as expected.
* Improved error handling.
* Many minor performance updates.

### Website:

* Rating no longer shown on postseason page, since ratings don't apply to postseason.
* Games with no stats will no longer awkwardly show the header for stats.


### Bot:

* Switched logging from Discord to a website.
* Better cache invalidation when players join, leave, create, disband, or reinstate teams.

### Website:

* Records for matches now show the record for the season the match was/will be played in.
* Fix stats on team page showing all time stats regardless of the season selected.


### Bot:

* New command `!maplist` to point to the webpage that lists all maps in play.
* Piots who leave a team while being a team captain now leave that team's captains channel as well.
* Display a better message when team creators mix up `!name` and `!tag`.
* `!lockteam` and `!unlockteam` now lock and unlock the specified team, not the person's team who issued the command.
* When the match time is forced in a challenge that's already been confirmed, notifications that the match is about to begin are no longer sent.
* Fix several instances of caching not taking advantage of promises.
* Many typos fixed across the bot, thanks @SiriusTR.
* `!version` points to the overload-development-community repository.
* Improved error handling.

### Website:

* Season selectors are fixed across the site.
* New map list page under About.
* Show the most recent season when going to the Matches, Players, and Records page.
* Pending matches no longer showes the season number, which doesn't make sense.
* Footer points to the overload-development-community repository.
* Remove /405 route.


* Support matches up to 8 players per team.
* Improved error handling.


### Bot:

* Improvements to the performance of the match notification system.
* Added `!vod` command for casters to record a video on demand. Lists the video in the new #vods channel.
* Unvoiding a match with no match time set no longer causes an error.
* Bot no longer listens to server member changes on servers other than the OTL.
* Start Discord before the website.
* Improved error handling.

### Website:

* Much of the website data is now cached, with cache invalidations happening automatically upon certain events.
* Match page now properly normalizes names.
* Streamers are now noted on the match page.
* Casters and VoDs are now displayed on the match page.
* Dates now display on the matches page when paging.
* Dates on matches page now link to their match page.
* Display fixes on the standings page.


### Bot:

* Refactored database code to be less monolithic.
* For commands where you enter a date and time, if you don't enter a year, it will no longer fail to recognize Daylight Savings Time properly in some cases.
* The `!home` command will now enforce the one stock map per team rule.
* Added `!overtime` command to implement overtime periods for games that use overtime.
* Improved error reporting.
* The `!addstat` command now shows KDA.
* Added `!lockteam` and `!unlockteam` commands to lock and unlock team rosters.
* Added `!addmap` and `!removemap` commands to add and remove maps from the allowed map pool.
* Fix to `!creatematch` not swapping team colors properly.
* Added `!next time` to show the next events and matches in the user's local time zone.
* Increase admin's `!forcetime` range to 180 days.
* Fix a bug where the bot will throw an error if a player leaves a server after playing a match but before it's closed.
* Fix a bug with issuing `!voidgame` and `!closegame` too rapidly in succession.

### Website:

* Refactored to a proper MVC pattern.
* Uses a more generic router.
* Now using morgan for logging.
* Improved display name sanitizing.
* Fix a bug with team size records being incorrect on the standings page.
* Overtime games are now noted on the website on the home, matches, and match page.
* Added a prominent link to Challonge.
* Added images for Burning Indika, Junebug, Keg Party, Mesa, Sub Rosa, and Turnstile.
* Added new links page.
* Website now uses SSL.
* Matches page now dynamically loads 10 matches at a time.
* Website now has a favicon.
* Added custom 404 and 500 pages.
* Team rosters now link to the player's page.
* New match page, linked to from everywhere on the site that shows a match. The match's time serves as the link.


### Bot:

* Events are now shown in the `!next` command.
* Maps can now be changed after they are set.
* Teams now get an announcements channel that everyone can read but only founders and captains can post in.
* Commands that take dates will no longer accept dates too far into the future (or past where applicable).
* Reordered the team colors in the challenge topic to match the order that they appear in game.
* Fix a bug with the KDA only showing for one team in the #match-results channel.

### Website:

* Many pages now have new or improved filtering based on the season and whether to show regular season or postseason stats.
* Added the best game for each map and opponent on the player page.
* Fixed link color in some less common browsers.
* Fixed website crash when viewing a player who is not on a team.


### Bot:

* The Fourth Sovereign can now be invited to other servers. Use to invite the bot to your server. Valid commands on servers outside the OTL are `!next` and `!stats`.
* Match reminders will now also remind teams of any unset parameters, and will remind players to set their `!streaming` flag.
* KDA now appears in the #match-results channel.
* Challenge IDs now won't spike into the 1000's when the server gets unexpectedly rebooted.
* `!stream` is now an alias for `!streaming`.
* `!retag` command errors have been fixed.

### Website:

* New Overdigit font for numbers.
* Matches that have been given a `!title` now have the title shown on the matches page.
* Player pages will now show a player's performance against each team and on each map played.
* KDA is now always to 3 decimal places.
* Fixed some places where the player name wasn't normalized.


* Continued work on having better responsive design overall on the website.
* The game log on the team page is more readable.
* The sorting of the `!next` command now sorts from earliest match to the latest.
* The website will now direct traffic to the cast page if no one is setup to cast the match.
* `!adjudicate extend` can be used to simply clear the match time from a match that was missed, but now will display the correct message if the challenge was not clocked, and will update the channel's topic appropriately.


* New `!stats` command to view your own stats and get a URL to your stats page.
* Fixed bug with `!rematch` command that was resetting the match times and team sizes of all challenges.
* Fixed crash on player stats page for players not on a team.
* Cast page no longer includes stats from games that aren't yet official.
* Records page no longer fails when there aren't categories available.


### Bot:

* Added `!rematch` command from inside a challenge room to allow for immediate rematches. This will create a new challenge between the same teams with the home server team swapped (or neutral if the prior challenge was neutral), the same team size, and a match time of now. This is intended to allow for teams to play a series of matches in a row and requires a representative of BOTH teams to issue the command. Teams should still use the `!challenge` command for other challenging purposes.
* Added `!next` command to list all pending matches.
* Updated the `!cast` command to allow `!cast next` to inform players what the next match available to cast is. Note, you still need to use `!cast` with a challenge ID, this is just an informative command.
* Removed the requirement to confirm a `!challenge`.
* New teams' founders will now get permissions for at-everyone and at-here and to delete and pin messages in their team channels, and captains will now get permissions for at-everyone and at-here. I will make a pass to allow this for existing teams shortly after release.
* Dates no longer require a year, and will assume the first occurrence of that date in the future.
* Dates can be replaced with the keyword "now", allowing for immediate scheduling.
* The 30 minute warning now mentions the correct amount of time remaining until a match when a match is scheduled inside 30 minutes.
* URLs no longer will have exclamation points at the end of them, so the exclamation point won't be part of the URL.

### Website:

* Fixed various website CSS bugs, including making them a bit more mobile friendly. This probably still has a long way to go, so if you see any issues on mobile, please post in #dev or file an issue on GitHub with details.
* New records and player pages.
* Matches page now has countdowns for pending matches.
* Matches page redesigned and paginated.
* Players page now shows league averages, along with a line visually indicating where that average lies.
* Fixed the Best Game stats for teams.
* Normalized names for best performer on the Cast page.
* Technical update to allow hot-swapping web pages.


* Bug fixes, especially concerning mobile devices.
* New page for casters to easily cast matches between teams.
* New #scheduled-matches page that lists matches as they are scheduled.
* Updates to `!cast`, `!matchtime`, and `!countdown` commands to make it easier to follow matches.


* Bug fixes.
* Significantly more stats on the website.


* Initial release.

Recent Commits

1f02afa Version 6.0.1.
7812e99 Add !regen command to regenerate the pinned post.
3cad860 Remove unused parameter.
649e1d8 Package updates.

Fixes #273, #275, #276, and #277.
361cbd8 Merge pull request #274 from overload-development-community/dependabot/npm_and_yarn/types/node-schedule-1.3.2

Bump @types/node-schedule from 1.3.1 to 1.3.2
7c43413 Bump @types/node-schedule from 1.3.1 to 1.3.2

Bumps [@types/node-schedule]( from 1.3.1 to 1.3.2.
- [Release notes](
- [Commits](

- dependency-name: "@types/node-schedule"
dependency-type: direct:development
update-type: version-update:semver-patch

Signed-off-by: dependabot[bot]
6b00e50 Adjust team names to match olmod 0.4.2.
e98d773 Add teamCount to preset.
9a011ba Update presets to turn assist scoring on (except for Rangers)
1773544 Version 6.0.0.
1577d8b Make sure the notice after reporting a score displays immediately.

Fixes #265
675a900 Merge pull request #271 from overload-development-community/dependabot/npm_and_yarn/timezonecomplete-5.12.4

Bump timezonecomplete from 5.12.2 to 5.12.4
d8daf61 Bump timezonecomplete from 5.12.2 to 5.12.4

Bumps [timezonecomplete]( from 5.12.2 to 5.12.4.
- [Release notes](
- [Changelog](
- [Commits](

- dependency-name: timezonecomplete
dependency-type: direct:production
update-type: version-update:semver-patch

Signed-off-by: dependabot[bot]
5c1ca6d Merge pull request #270 from overload-development-community/dependabot/npm_and_yarn/types/express-4.17.12

Bump @types/express from 4.17.11 to 4.17.12
92b6bd3 Merge pull request #269 from overload-development-community/dependabot/npm_and_yarn/terser-5.7.1

Bump terser from 5.6.1 to 5.7.1
71a95a1 Bump @types/express from 4.17.11 to 4.17.12

Bumps [@types/express]( from 4.17.11 to 4.17.12.
- [Release notes](
- [Commits](

- dependency-name: "@types/express"
dependency-type: direct:development
update-type: version-update:semver-patch

Signed-off-by: dependabot[bot]
644863e Bump terser from 5.6.1 to 5.7.1

Bumps [terser]( from 5.6.1 to 5.7.1.
- [Release notes](
- [Changelog](
- [Commits](

- dependency-name: terser
dependency-type: direct:production
update-type: version-update:semver-minor

Signed-off-by: dependabot[bot]
850d05a Merge pull request #268 from overload-development-community/dependabot/npm_and_yarn/babel/eslint-parser-7.14.7

Bump @babel/eslint-parser from 7.13.14 to 7.14.7
01de755 Merge pull request #267 from overload-development-community/dependabot/npm_and_yarn/discord-markdown-2.5.0

Bump discord-markdown from 2.4.2 to 2.5.0
f6ffedb Bump discord-markdown from 2.4.2 to 2.5.0

Bumps [discord-markdown]( from 2.4.2 to 2.5.0.
- [Release notes](
- [Changelog](
- [Commits](

- dependency-name: discord-markdown
dependency-type: direct:production
update-type: version-update:semver-minor

Signed-off-by: dependabot[bot]
c8e1db6 Bump @babel/eslint-parser from 7.13.14 to 7.14.7

Bumps [@babel/eslint-parser]( from 7.13.14 to 7.14.7.
- [Release notes](
- [Changelog](
- [Commits](

- dependency-name: "@babel/eslint-parser"
dependency-type: direct:development
update-type: version-update:semver-minor

Signed-off-by: dependabot[bot]
307a389 Merge pull request #266 from overload-development-community/dependabot/npm_and_yarn/types/node-15.12.5

Bump @types/node from 14.14.37 to 15.12.5
e144dd0 Bump @types/node from 14.14.37 to 15.12.5

Bumps [@types/node]( from 14.14.37 to 15.12.5.
- [Release notes](
- [Commits](

- dependency-name: "@types/node"
dependency-type: direct:development
update-type: version-update:semver-major

Signed-off-by: dependabot[bot]
dc5eaba Merge pull request #263 from overload-development-community/dependabot/npm_and_yarn/babel/core-7.14.6

Bump @babel/core from 7.13.14 to 7.14.6
d874e00 Merge pull request #262 from overload-development-community/dependabot/npm_and_yarn/ioredis-4.27.6

Bump ioredis from 4.24.6 to 4.27.6
2f68b21 Merge pull request #249 from overload-development-community/dependabot/npm_and_yarn/types/ioredis-4.26.4

Bump @types/ioredis from 4.22.2 to 4.26.4
bc98647 Merge pull request #227 from overload-development-community/dependabot/npm_and_yarn/discord.js-12.5.3

Bump discord.js from 12.5.2 to 12.5.3
fc92974 Disable assist scoring for Descent Rangers preset.
16803b7 Bump @babel/core from 7.13.14 to 7.14.6

Bumps [@babel/core]( from 7.13.14 to 7.14.6.
- [Release notes](
- [Changelog](
- [Commits](

- dependency-name: "@babel/core"
dependency-type: direct:development
update-type: version-update:semver-minor

Signed-off-by: dependabot[bot]
503abbc Bump ioredis from 4.24.6 to 4.27.6

Bumps [ioredis]( from 4.24.6 to 4.27.6.
- [Release notes](
- [Changelog](
- [Commits](

- dependency-name: ioredis
dependency-type: direct:production
update-type: version-update:semver-minor

Signed-off-by: dependabot[bot]
f6c9c5e Remove !shenanigans to avoid confusion as to who you're challenging
47c093d Bump @types/ioredis from 4.22.2 to 4.26.4

Bumps [@types/ioredis]( from 4.22.2 to 4.26.4.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
6a994ef http -> https
274d7cf Correct class/variable names.
204403e Really fix bug with encoding.
1455165 Fix bug with encoding.
33feae1 Bump discord.js from 12.5.2 to 12.5.3

Bumps [discord.js]( from 12.5.2 to 12.5.3.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
b82a35d Fix bug with adding stats.
e0db8d6 Fix bug with rare case when certain statements fit into exactly one call.
445877d Chilly will NOT like this.
ab332a7 Version 5.0.2.
96bfad0 Filter records by team.
5f91119 Improve handling of time zones when year is not given for dates.
c57fb09 Merge pull request #225 from overload-development-community/dependabot/npm_and_yarn/ioredis-4.24.6

Bump ioredis from 4.24.5 to 4.24.6
f10ce9c Merge pull request #224 from overload-development-community/dependabot/npm_and_yarn/babel/eslint-parser-7.13.14

Bump @babel/eslint-parser from 7.13.10 to 7.13.14
ea9114d Bump @babel/eslint-parser from 7.13.10 to 7.13.14

Bumps [@babel/eslint-parser]( from 7.13.10 to 7.13.14.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
17c304e Bump ioredis from 4.24.5 to 4.24.6

Bumps [ioredis]( from 4.24.5 to 4.24.6.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
9aa51ba Merge pull request #223 from overload-development-community/dependabot/npm_and_yarn/discord.js-12.5.2

Bump discord.js from 12.5.1 to 12.5.2
78170b9 Merge pull request #222 from overload-development-community/dependabot/npm_and_yarn/types/ioredis-4.22.2

Bump @types/ioredis from 4.22.0 to 4.22.2
136f46a Bump @types/ioredis from 4.22.0 to 4.22.2

Bumps [@types/ioredis]( from 4.22.0 to 4.22.2.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
f8d583b Bump discord.js from 12.5.1 to 12.5.2

Bumps [discord.js]( from 12.5.1 to 12.5.2.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
ed2750c Merge pull request #221 from overload-development-community/dependabot/npm_and_yarn/babel/core-7.13.14

Bump @babel/core from 7.13.10 to 7.13.14
11cf61e Merge pull request #219 from overload-development-community/dependabot/npm_and_yarn/types/node-14.14.37

Bump @types/node from 14.14.35 to 14.14.37
5c4a38c Merge pull request #218 from overload-development-community/dependabot/npm_and_yarn/ioredis-4.24.5

Bump ioredis from 4.24.2 to 4.24.5
2675fff Merge pull request #212 from overload-development-community/dependabot/npm_and_yarn/timezonecomplete-5.12.2

Bump timezonecomplete from 5.12.1 to 5.12.2
14152db Bump @babel/core from 7.13.10 to 7.13.14

Bumps [@babel/core]( from 7.13.10 to 7.13.14.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
636d016 Improve performance of adding stats to a game.
bd62e67 Bump @types/node from 14.14.35 to 14.14.37

Bumps [@types/node]( from 14.14.35 to 14.14.37.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
c5121db Bump ioredis from 4.24.2 to 4.24.5

Bumps [ioredis]( from 4.24.2 to 4.24.5.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
d56aea6 Fix bug with getting games that have JSON but not settings.
ed0ac1b Bump timezonecomplete from 5.12.1 to 5.12.2

Bumps [timezonecomplete]( from 5.12.1 to 5.12.2.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
a3aa840 Fix bug with standings page.
dbf4bbe Regex fix.
d6a638b Typo fix.
579612d Version 5.0.1.
bcd147a Remove OTL S4C, add ORL time trial presets.
4230e58 Fix !suggestranddommap

Fixes #211
b3c34fb Remove a number of redundent messages when handling maps or captains.

Fixes #199
a154739 !convert command, !suggesttime now allows just times.

Fixes #198
6c81133 Replace timezone-js with timezonecomplete.

Fixes #197
79cea11 Cast page no longer duplicates players that hopped teams during a season.

Fixes #196
671b34a Don't show team rating if displaying all seasons.

Fixes #195
fea84e6 Typo fix.

Fixes #193
ad5801f !addstats timestamp parameter

Fixes #192
a6491b2 Add net damage to match stats, make total damage taken include self damage.

Fixes #191.
257dc1b Fix memory leak.
4167f64 Package updates.
ced7d8f Merge pull request #210 from overload-development-community/dependabot/npm_and_yarn/tzdata-1.0.25

Bump tzdata from 1.0.24 to 1.0.25
e6754ed Merge pull request #209 from overload-development-community/dependabot/npm_and_yarn/babel/eslint-parser-7.13.10

Bump @babel/eslint-parser from 7.12.1 to 7.13.10
1e06b53 Bump tzdata from 1.0.24 to 1.0.25

Bumps [tzdata]( from 1.0.24 to 1.0.25.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
7f0b9e9 Bump @babel/eslint-parser from 7.12.1 to 7.13.10

Bumps [@babel/eslint-parser]( from 7.12.1 to 7.13.10.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
5382947 Merge pull request #208 from overload-development-community/dependabot/npm_and_yarn/node-schedule-2.0.0

Bump node-schedule from 1.3.2 to 2.0.0
e049088 Bump node-schedule from 1.3.2 to 2.0.0

Bumps [node-schedule]( from 1.3.2 to 2.0.0.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
c7d585f Merge pull request #207 from overload-development-community/dependabot/npm_and_yarn/babel/core-7.13.10

Bump @babel/core from 7.12.10 to 7.13.10
59e3055 Merge pull request #206 from overload-development-community/dependabot/npm_and_yarn/terser-5.6.1

Bump terser from 5.5.1 to 5.6.1
76af95a Bump @babel/core from 7.12.10 to 7.13.10

Bumps [@babel/core]( from 7.12.10 to 7.13.10.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
c8360fb Bump terser from 5.5.1 to 5.6.1

Bumps [terser]( from 5.5.1 to 5.6.1.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
4f5651d Merge pull request #205 from overload-development-community/dependabot/npm_and_yarn/types/express-4.17.11

Bump @types/express from 4.17.9 to 4.17.11
a618bd7 Merge pull request #204 from overload-development-community/dependabot/npm_and_yarn/ioredis-4.24.2

Bump ioredis from 4.19.4 to 4.24.2
58d46a1 Merge pull request #203 from overload-development-community/dependabot/npm_and_yarn/types/node-14.14.35

Bump @types/node from 14.14.17 to 14.14.35
1bc7bf1 Merge pull request #202 from overload-development-community/dependabot/npm_and_yarn/node-database-v1.2.4

Bump node-database from v1.2.3 to v1.2.4
a6e284a Merge pull request #201 from overload-development-community/dependabot/npm_and_yarn/discord-markdown-2.4.2

Bump discord-markdown from 2.4.1 to 2.4.2
b353e75 Bump @types/express from 4.17.9 to 4.17.11

Bumps [@types/express]( from 4.17.9 to 4.17.11.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
89967e0 Bump ioredis from 4.19.4 to 4.24.2

Bumps [ioredis]( from 4.19.4 to 4.24.2.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
0317671 Bump @types/node from 14.14.17 to 14.14.35

Bumps [@types/node]( from 14.14.17 to 14.14.35.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
0d5fbfa Bump node-database from v1.2.3 to v1.2.4

Bumps [node-database]( from v1.2.3 to v1.2.4.
- [Release notes](
- [Commits](

Signed-off-by: dependabot[bot]
07a5ca2 Bump discord-markdown from 2.4.1 to 2.4.2

Bumps [discord-markdown]( from 2.4.1 to 2.4.2.
- [Release notes](
- [Changelog](
- [Commits](

Signed-off-by: dependabot[bot]
81f0b3c Remove dead code.
a71b11b Add dependabot.
44d7a78 Regex fix. Media Player