- Updated mkdocs to have a reference to creds-guide and migration-guide
- Updated credentials.json references to say creds.yml and have proper yml formatting
- Strs renamed to strs
- Generic params will now default to object instead of string for convenient argument passing
- Many strings changed to use generated properties
- Implemented initial version of the response strings source generator
- Creates a class with property names equivalent to key names in responses.en-US.json
- Each Property has struct type (with generic type parameters matching the number of string format placeholders) for type safe GetText implementation
- Struct types are readonly refs as they should be ephermal, and only used to pass string keys to GetText
- Added credentials.json -> creds.yml migration
- Migrated credentials.json fields are:
- Token
- OwnerIds
- GoogleApiKey
- OsuApiKey
- CleverbotApiKey
- TotalShards (although you should set this from Coordinator's coord.yml TotalShards, so this setting will usually have no effect)
- PatreonAccessToken and PatreonCampaignId
- VotesUrl and VotesToken
- BotListToken
- RedisOptions
- LocationIqApiKey and TimezoneDbApiKey
- CoinmarketcapApiKey
- Added IMessageChannel extensions for sending smarttext
- Added implicit operator from string to smarttext (which just creates smartplaintext instance)
- Configs are no cloned using generated clone, not by serializing/deserializing
- Arrays/Lists (collections in geneeral) are still not cloned properly
- Removed GetRawData from config as it is no longer needed, new clone is very fast
- Added ICloneable<T> which all configs implement
- Cleaned up config classes/code
- Added ILogCommandsService which will have dummy implementation on public bot, this means Logging Commands will be present on public bot to pull up help etc
- When .ve is enabled, NoPublicBot commands will show a nicer error message with link to selfhosting guide (thx ene)
- Fixed xp gain and .xp command not working on new users
- General cleanup
- Priorities are now higher number -> higher priority
- Priorities are now actually respected
- Early behaviors now print custom messages when they perform an action (Filter trigger, blacklist, poll vote, etc)
- small cleanup