* Add Monitoring plugin
* Prepare pipeline
* Fix Rider stupidity
* Fix Windows build
* Remove translation files
* Apply feedback
* Add steam id as additional tag to metrics
* Apply feedback
* Add runtime metrics
* Fix my brain not braining
* Use extension methods to add instrumentation and Add monitoring for outbound HTTP traffic
* Upgrade OpenTelemetry.Extensions.Hosting to prerelease due to runtime exception
* Remove config and add file that was supposed to be committed yesterday to fix the runtime exception
* Revert changes to publish.yml
* Remove localization
* Apply feedback
* Apply feedback
* Fix version number
* Revert use of property in Kestrel (even tho it's an outside caller to the source class)
* Initial commit for 2FA plugin
* Shut up netf
* Actually import this authenticator right into ASF, and add safeguards
* Further fixes
* Render device_id in the resulting maFile
* Start work on extracting remote communication
* ok
* Dockerfile fixes
* More fixes
* Prepare /Api/Announce and /Api/HeartBeat
* Decrease publish race conditions
* OK
* Misc
* Misc
* Misc
* Move Steam group part back to ASF core
* Finally implement match actively v2 core
* Update RemoteCommunication.cs
* Use single round exclusively, report inventories more often
* Use randomization when asking others for assetIDs
* Add support for license and crowdin
* Kill dead code
* Fix return type of inventories
* Fix responses for good
* Unify old backend with new
* Report whole inventory, always
Helps with optimization on the backend side in terms of inventory fetching
* Update RemoteCommunication.cs
* Determine index of each asset and tell server about it
* Update AnnouncementRequest.cs
* Fix ASF screwing up with the order
* Fix warnings
* Misc rename
* Final logging touches
* Implement basic plugin system
* The dawn of new era
* Add plugins warning
* Move more members to PublicAPI
* Open commands for the plugins
* Add IBotHackNewChat
* Run plugin events in parallel
* Use properties in IPlugin
* Hook our custom plugin into CI to ensure it compiles
* Fix dotnet brain damage
* Add IBotsComparer
* Add code documentation
* Add IBotTradeOffer
* Add IBotTradeOffer example
* Add IBotTradeOfferResults
* Final bulletproofing
* Final renaming
After evaluation, it seems that more accounts have card drops restricted rather than not, and having it as true when in reality it's false results in less performance degradation than the other way