Source code for RPCS3's Discord bot.
Go to file
2019-08-27 19:04:26 +05:00
Clients add support for online-only flag in compatibility api 2019-08-23 16:53:50 +05:00
CompatBot add one missed gow hd collection id 2019-08-27 19:04:26 +05:00
HomoglyphConverter some docs 2019-04-01 22:52:27 +05:00
Tests small test fixes 2019-08-22 13:00:00 +05:00
.gitattributes RPCS3 Compatibility Bot reimplemented in C# for .NET Core 2018-07-20 09:22:28 +02:00
.gitignore Google Drive handler 2019-03-01 05:47:06 +05:00
architecture.md some docs 2019-04-01 22:52:27 +05:00
azure-pipelines.yml Set up CI with Azure Pipelines 2018-11-15 13:16:45 +05:00
discord-bot-net.sln organize clients in filesystem similar to solution structure 2019-01-30 16:20:26 +05:00
LICENSE RPCS3 Compatibility Bot reimplemented in C# for .NET Core 2018-07-20 09:22:28 +02:00
nuget.config update deps 2019-07-14 13:53:46 +05:00
README.md update readme 2019-08-26 16:57:32 +05:00
SECURITY.md Create SECURITY.md 2019-06-05 23:48:49 +05:00

RPCS3 Compatibility Bot

Build Status RPCS3 discord server

This is a tech support / moderation / crowd entertainment bot for the RPCS3 discord server.

You can read the design and implementation notes by visiting the folders in the web interface, or from the architecture overview notes.

Development Requirements

Runtime Requirements

  • .NET Core 2.1 SDK or newer to run from sources
    • needs dotnet command available (i.e. alias for the Snap package)
  • .NET Core 2.1 Runtime or newer for compiled version
  • Optionally Google API credentials to access Google Drive:
    • Create new project in the Google Cloud Resource Manager
    • Select the project and enable Google Drive API
    • Open API & Services Credentials
    • Create new credentials:
      • Service account credentials
      • New service account
        • if you select an existing account, new credentials will be generated in addition to previous any ones
      • Role Project > Viewer
      • Key type JSON
      • Create will generate a configuration file
    • Save said configuration file as credentials.json in user secrets folder
      • e.g on Linux this will be ~/.microsoft/usersecrets/c2e6548b-b215-4a18-a010-958ef294b310/credentials.json

How to Build

  • Change configuration for test server in CompatBot/Properties/launchSettings.json
  • Note that token could be set in the settings or supplied as a launch argument (higher priority)
  • If you've changed the database model, add a migration
    • $ cd CompatBot
    • $ dotnet ef migrations add -c [BotDb|ThumbnailDb] MigrationName
    • $ cd ..
  • $ cd CompatBot
  • $ dotnet run [token]

How to Run in Production

  • Change configuration if needed (probably just token):
    • use $ dotnet user-secrets set Token <your_token_here>
    • for available configuration variables, see Config.cs
  • Put bot.db in CompatBot/ if you have one
  • $ cd CompatBot
  • $ dotnet run -c Release

External resources that need manual updates