Releases: CriticalFlaw/FlawBOT
Releases · CriticalFlaw/FlawBOT
Release list
4.0
This is the final release for this project as it will no longer be maintained.
- Upgraded to .NET 7.0
- Migrated to Slash Commands, example:
/bot info - Fixed multiple bugs with the the Lavalink implementation.
- Fixed the
/wikipediacommand not returning results. - Added the missing Pokemon token field to the configuration template.
- Updated the endpoint link to Urban Dictionary.
- Updated nuget packages to their latest versions.
- Updated outputs of multiple commands.
- Removed redundant developer comments.
- Commented out commands that could not migrate to slash.
- Improvements to the project documentation.
3.1
- Added a waiting indicator to commands that call an API.
- Migrated the documentation to a separate site: http://www.criticalflaw.ca/FlawBOT/
- Fixed .wikipedia throwing a wrong error if no results are found, added pagination.
- Fixed .weather not returning results if the precipitation value has decimal point.
- Fixed .tf2 news pagination posting multiple times per call.
- Fixed the test project not running properly.
- Fixed namespace inconsistencies, merged like-commands into same module.
- Updated README, LICENSE, Lavalink, gitignore. Added Code of Conduct, Contributions and Sponsorship pages.
- Updated the bot settings and how the bot loads them.
- Cleaned up the codebase, updated nuget packages, upgraded to DSharpPlus v4.0.
3.0
Changelog
- Added commands for playing music using LavaLink:
play [URL],stop,pause,resume,nowplaying - Added pagination to the following commands:
twitch,wikipedia,omdb,tf2 list - Correct warning message will now be returned if a command was invoked incorrectly.
- Fixed multiple issues where
steamandtf2commands were unable to find data. - Fixed the
twitchcommand failing to reliably retrieve data from the Helix API. - Fixed the
helpcommand failing to retrieve information for subcommands without overloads. - Improved error handling and logging, fixed multiple cases where null exception errors were not being caught.
- Merged the
randomcatandcatpiccommands into a singlecatcommand. - Merged the
talkandttscommands and moved them out of thebotgroup. - Added lavalink and accompanying configuration file to the project directory, click here for more info.
- Removed some commands that were seldom used.
- Updated the
ipcommand to use a new API now that the old one is deprecated. - Updated the
tf2 ipcommand to return a banner image from teamwork.tf with server info. - Updated the bot to utilize sharding, click here for more info.
- Updated the output of the following commands:
twitch,wikipedia,poll,imgur,tf2(all commands) and few others.
Backend Changes
- Moved a reused text strings into the resource file.
- Steam app list is now loaded on startup and is used instead of calling the API every time.
- Updated nuget packages to the latest version (11/17/2020).
- Updated the following commands to use API wrappers for retrieving data;
pokemon,twitch,wikipedia - Updated the test project to reflect above changes.
- Upgraded the project to NET 5.0 and DSharpPlus 4.0-RC1
- Merged the Framework and Core projects, updated the launch configuration.
- Miscellaneous tweaks and improvements to performance and command outputs.
2.6
Bug-Fixes/Improvements
- Added a command for retrieving TF2 community creators (
.tf2 creators criticalflaw) - Added a command for retrieving curated TF2 server lists (
.tf2 server-list) - Cleaned up the look of various commands.
- Fixed an exception handling for various command for when null data is returned.
- Updated
.tf2 mapsto include a description of the given game mode. - Updated
.speedruncommand to displays the speedrun categories, with embedded links. - Updated the format of news listing commands to embed the links into the title.
Miscellaneous
- Improvements to the test suite, including loading of the API tokens before running the tests.
- Integrated the new TeamworkTF.Sharp API wrapper.
- Removed the GoodReads command (replacing with Google Books) and remnants of the join command.
- Updated NuGet packages and upgraded to .NET Core 3.1
- Updated the backend Steam service to work with the latest version of the Steam API wrapper.
2.5
Bug-Fixes/Improvements
- Fixed the
.pokemoncommand not returning results if the Ability value is null. - Fixed the
.pokemoncommand not returning the correct Weakness values. - Fixed the
.simpsonscommand not returning results if a field is empty (applies to.morbotronand.rick). - Fixed the
.steam gamecommand not returning results if the game price is not set. - Fixed the
.steam usercommand not returning results when searching with an ID instead of vanity Url. - Fixed the
.tf2 mapcommand not returning results when searching with a partial map name. - Improved error handling on various commands, namely those calling the teamwork.tf API.
- Multiple commands have an improved visual output and more invoking aliases.
- Updated the
.speedruncommand to paginate the results. - Updated the
steamandtf2command modules to use the updated SteamWebAPI.
Miscellaneous
- Fixed several tests not validating the results properly, removed unused ones.
- Interactivity prompts (Please enter [input] in the next [number] of minutes...) is now handled by Bot Services.
- Updated variable and method names as well as output text for various commands.
ttscommand is now part of the bot module (.bot tts hello world)
2.4
New Features
- Added an
emojimodule, includes commandsadd,modify,delete,listandinfo. - Added an
ipcommand for retrieving the geographic location of an IP address, invoked with.ip.
Bug-Fixes/Improvements
- Backend improvements and cleanup.
- Certain commands will now remove user message that invoked the command.
- Fixed the
twitchcommand calling a deprecated API version. - Paginated results will now indicate when on the last set of results.
- Removed the
classifieds_all,classifieds_mycommands from the Team Fortress module. - Removed the
subredditcommand from the Reddit module. - Removed the entire Smash Bros. module.
- Reworked the Reddit, Twitch and Steam API integration.
- Updated JSON deserialization files, removed unused variables.
- Updated NuGet packages.
- Updated output of the
tf2 server,news,nasa,pokemon,speedrun,twitch,tf2 schema,tf2 server,bookcommands - Updated output text and error messages.
- Updated the
pollcommand to be preset to three minutes, new call is now.poll [question]
Other
- Migrated the project to NET Core 3.0
2.3
New Features
- Added a
.newscommand for retrieving news articles from NewsAPI.org. - Added a
.bookcommand for retrieving book information from GoodReads. - Added a
.ipcommand for retrieving geolocation information of a public IP address. - Added a
.redditcommand for retrieving new, top or hot posts from a subreddit (ex..reddit top tf2)
Bug-Fixes/Improvements
- Fixed the
.tf2 serverscommand inconsistently returning results. - Updated the
.tf2 newscommand to use pagination.
Other
- Common output messages are now stored in the resource file.
- Corrected various spelling mistakes. Updated nuget packages.
- Refactored various commands in the channel group.
- Removed unused reddit and backpack.tf commands and nuget packages.
- Removed unused JSON model variables.
2.2
New Features
- Added a
.nasacommand for retrieving the Astrology Picture of the Day from the NASA API. - Added a
.amiibocommand for retrieving given Nintendo amiibo figurine information. - Added a
.sudo setnamecommand for changing the name of the bot client (owner only).
Bug-Fixes/Improvements
- Fixed any user being able to respond to the
.bot leavecommand - Fixed the
speedrunandtf2 schemacommands not returning results consistently - Replaced the now deprecated API URL for the
smashcommand - Updated the output of the
speedrunandsmashcommands
Other
- Added exception handling for DSharpPlus' exception type ChecksFailed
- Added the null-coalescing operator (??) wherever applicable
- All API URLs are now stored in the resource file
- Miscellaneous bug-fixes, refactors and general improvements.
- Moved the
connectcommand to the Steam group (.steam connect) - Split the codebase into separate core and framework projects. Core holds all the command definitions for interacting with the Discord API while the Framework handles API calls.