A bot and server plugin to allow server logs to be sent to Discord channels, and for server commands to be run via the Discord bot.
Node.js 14.16.0+
EXILED 2.1.30+
- Extract
DiscordIntegration.dll
and its dependencies fromPlugin.tar.gz
, then extractDiscordIntegration.Bot.tar.gz
in any folder you want. - Place
DiscordIntegration.dll
inside the EXILEDPlugins
folder like any other plugin and its dependencies in thePlugins/dependencies
folder.
- Download Node.js from https://nodejs.org/en/.
- Open the executable file you just downloaded and install it.
- Check your Node.js and npm versions with PowerShell or command prompt with
node -v
andnpm -v
commands to check if you installed both of them correctly.
- Open this link.
- Select your linux distro.
- Follow instructions.
- Open PowerShell or command prompt.
- Run
cd path\to\bot
replacingpath\to\bot
with the path of where the extracted bot is located, make surediscordIntegration.js
andpackage.json
are in the same folder. - Run
npm install
.
- Run
cd path/to/bot
replacingpath/to/bot
with the path of where the extracted bot is located, make surediscordIntegration.js
andpackage.json
are in the same folder. - Run
npm install
.
Open the bot once to let it automatically generate config.yml and synced-roles.yml files. Remember to always wrap configs with quotation marks, even if it's not necessary for strings.
- Open PowerShell or command prompt.
- Run
cd path\to\bot
replacingpath\to\bot
with the path of where the extracted bot is located. - Run
node discordIntegration.js
.
- Run
cd path/to/bot
replacingpath/to/bot
with the path of where the extracted bot is located. - Run
node discordIntegration.js
.
- Run
npm install -g n
. - Run
n latest
to install the latest version orn stable
to install the stable version.
- Open your bot
config.yml
file. - Add to the
command
config, channel IDs in which commands are allowed to be executed.
channels:
command:
- "channel-id-1"
- "channel-id-2"
- "channel-id-3"
- Add role IDs and list every command they can exeute. You can use
.*
to permit to that role ID to use all game commands without restrictions.
commands:
"role-1":
- "di"
- "discordintegration"
"role-2":
- ".*"
- Never duplicate commands. Higher roles on your Discord server will be able to use lower roles commands as well, based on the position of the roles.
Command | Description | Arguments | Permission | Example |
---|---|---|---|---|
di add role | Adds a role-group pair to the SyncedRole list. | [RoleID] [Group name] | di.add.role | di add role 656673336402640902 helper |
di add user | Adds an userID-discordID pair to the SyncedRole list. | [UserID] [DiscordID] | di.add.user | di add user 76561198023272004@steam 219862538844635136 |
di remove role | Removes a role-group pair from the SyncedRole list. | [RoleID] | di.remove.role | di remove role 656673336402640902 |
di remove user | Removes an userID-discordID pair from the SyncedRole list. | [UserID] | di.remove.user | di remove user 76561198023272004@steam |
di reload | Reloads bot syncedroles and configs if connected, reloads plugin language. | di.reload | di reload | |
di reload configs | Reloads bot configs if connected. | di.reload.configs | di reload configs | |
di reload language | Reloads plugin language. | di.reload.language | di reload language | |
di reload syncedroles | Reloads bot syncedroles if connected. | di.reload.syncedroles | di reload syncedroles | |
di playerlist | Gets the list of players in the server. | di.playerlist | di playerlist | |
di stafflist | Gets the list of staffers in the server. | di.stafflist | di stafflist |