- MSSQL server - SQL Server Downloads
- .NET 5.0 (with ASP.NET Core 5.0.0) - Download .NET 5.0 (Linux, macOS, and Windows)
- Microsoft Visual Studio 2019 (or another IDE supports .NET) - Install Visual Studio
- dotnet-ef (For code first migrations) - EF Core tools reference (.NET CLI) - EF Core
Most packages are distributed using the NuGet packaging system and will be installed at build.
Only Discord.NET package is distributed as pre-release from MyGet feed.
- Discord.NET
- NuGet
- MyGet-PreRelease <= Add as NuGet source (Used in project)
- Command to add MyGet source from dotnet CLI:
dotnet nuget add source -n "MyGet_DiscordNET_Prerelease" https://www.myget.org/F/discord-net/api/v3/index.json
- Command to add MyGet source from dotnet CLI:
- Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation
- Microsoft.EntityFrameworkCore.SqlServer
- Microsoft.VisualStudio.CodeGeneration.Design
- UnicodeEmoji.NET
- BCrypt.Net-Next
- Microsoft.EntityFrameworkCore.Tools
- GitInfo
- Swashbuckle.AspNetCore
- System.Drawing.Common
- System.Drawing.Primitives
- DiffPlex
- Newtonsoft.JSON
- MathParser.org-mXParser
GrillBot project using Code first database migrations.
To create database:
dotnet tool restore
dotnet ef database update -- DB_CONN="{YOUR_CONNECTION_STRING}"
appsettings.json
configuration was deprecated in version1.8
and removed in2.0
. Newly is used database config in table GlobalConfig and environment or command line parameters.
Choice between command line parameters or environment variables is your. GrillBot supports both.
APP_TOKEN
: REQUIRED to run bot. This token you can create in discord developer portal.DB_CONN
: REQUIRED to run bot. Connection string to your existing database.
Key | Description | Example value |
---|---|---|
CommandPrefix | Message content, that must starts to invoke command. | $ |
EmoteChain_CheckCount | Count of same emotes before bot send emote. | 5 |
ActivityMessage | Now playing info. Includes git latest commit, current branch and lastest tag. If you do not want display any test, enter None . |
Some message |
AdminChannel | ID of channel for administration purposes. Such as booster notifications. | 531058805233156096 |
ServerBoosterRoleId | ID of role with Nitro Server Booster role. | 585529323960664074 |
ErrorLogChannel | ID of channel for logging errors. | 531058805233156096 |
$globalConfig keys
- Prints list of available configuration values.$globalConfig get {key}
- Prints content of current configuration.$globalConfig set {key} {value}
- Sets configuration and saves it.
dotnet run GrillBot.dll -- APP_TOKEN="{YOUR_TOKEN}" DB_CONN="{YOUR_CONNECTION_STRING}"
or
- Linux:
./GrillBot APP_TOKEN="{YOUR_TOKEN}" DB_CONN="{YOUR_CONNECTION_STRING}"
- Windows:
GrillBot.exe APP_TOKEN="{YOUR_TOKEN}" DB_CONN="{YOUR_CONNECTION_STRING}"
Latest tag is published on DockerHub. SQL script with latest DB schema is included in release.
- Copy file
runtime.example.env
with nameruntime.env
and fill it with your values. - Run
docker-compose up
in repository root directory.