You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+58-34Lines changed: 58 additions & 34 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,12 @@ Bridges chat between Discord and Minecraft (Bukkit/Spigot).
9
9
10
10
## Installation
11
11
12
-
<<Coming soon!>>
12
+
13
+
1. Download the latest release from GitHub
14
+
2. Add it to your plugins folder
15
+
3. Either run Bukkit/Spigot once to generate DiscordBridge/config.yml or create it using the guide below.
16
+
4. All done!
17
+
13
18
14
19
## Configuration
15
20
@@ -32,8 +37,13 @@ username: 'DiscordBridge'
32
37
# Use '&' in place of the formatting symbol.
33
38
username-color: ''
34
39
40
+
# (Optional) Define an alternate prefix for all of the bot's commands. These will work in addition to @mentions.
41
+
# Will also work in Minecraft if the sender has the required permission for the command they try.
42
+
# Leave blank to only allow @mentions to prefix commands
43
+
command-prefix: ''
44
+
35
45
# (Optional) Set this value with a valid Cleverbot API key to enable chatting with Cleverbot
36
-
# Look at https://www.cleverbot.com/JDA/ for more info
46
+
# Look at https://www.cleverbot.com/api/ for more info
37
47
cleverbot-key: ''
38
48
39
49
# If true, prints verbose log messages to the server console for every action
@@ -59,22 +69,23 @@ if-vanished:
59
69
player-leave: false
60
70
player-death: false
61
71
62
-
# Set the templates for relayed messages
63
-
# %u - The sender's username
64
-
# %m - The sender's message
65
-
# %w - The name of the world the sender is in (Multiverse alias compatible)
66
-
# %r - The death message (Death event only)
67
-
# Use '&' in place of the formatting symbol to apply formatting codes.
72
+
# Set the templates for various message types
73
+
# %u - The username of the one who sent the message or invoked a command, if applicable
74
+
# %m - The raw message that would normally display, if applicable
75
+
# %w - The name of the world the sender is in
76
+
# - Applicable to messages from Minecraft only
77
+
# - Multiverse alias compatible
78
+
# Use '&' in place of the formatting symbol to apply formatting codes to messages sent to Minecraft
68
79
templates:
69
80
discord:
70
81
chat-message: '<**%u**> %m'
71
82
player-join: '**%u** joined the server'
72
83
player-leave: '**%u** left the server'
73
-
player-death: '%r'
84
+
player-death: '%m'
74
85
server-start: 'Server started!'
75
86
server-stop: 'Shutting down...'
76
87
minecraft:
77
-
chat-message: '[&b&lDiscord&r]<%u> %m'
88
+
chat-message: '[&b&l%w&r]<%u> %m'
78
89
```
79
90
80
91
* `token` is the access token for the Discord bot. Without this, the bot will not function at all.
@@ -91,51 +102,64 @@ templates:
91
102
92
103
**Templates**
93
104
94
-
- `%u` will be replaced with the username
95
-
- `%d` will be replaced with the user's display name
105
+
- `%u` will be replaced with the player/user's username
96
106
- `%m` will be replaced with the message
97
107
- `%w` will be replaced with the world name
98
-
- `%r` will be replaced with Minecraft's standard death message
99
108
- Color codes, prefixed with `&`, will be translated on the Minecraft end
100
109
101
110
## Features
102
111
103
112
* Anything said in Minecraft chat will be sent to your chosen Discord channel
104
-
* Anything said in your chosen Discord channel will be sent to your Minecraft chat (with a `(discord)` suffix added to usernames)
113
+
* If Multiverse-Core is installed and the `%w` tag is specified in your relay message syntax, the alias assigned to your Multiverse worlds will be displayed
114
+
* Anything said in your chosen Discord channel will be sent to your Minecraft chat (if the `%w` tag is used in your relay message syntax, Discord messages will display `Discord`)
115
+
* If Dynmap is installed, anything said over Dynmap chat will be relayed to your chosen Discord channel (if the `%w` tag is used in your relay messag syntax, Dynmap messages will display `Dynmap`)
105
116
* You can link Minecraft accounts to Discord accounts and the bot will translate display names to match where the message appears
106
117
* Join / leave messages can be sent to Discord
107
118
* Death messages can be sent to Discord
108
119
* Server start and stop messages can be sent to Discord
109
120
* All of the above messages can be toggled if you don't want them to appear
110
-
* Message templates are customized
111
-
* Prefixing usernames with `@` in the Minecraft chat will be converted to mentions in the Discord chat if the user exists (you can use their Discord display name with spaces removed, or their Minecraft username if the accounts are linked)
112
-
* Image attachments sent in the Discord channel will relay their URLs to Minecraft
113
-
* Add scripted responses for the bot to say when it detects a trigger phrase
121
+
* Message templates are customizeable
122
+
* Prefixing usernames with `@` in the Minecraft chat will be converted to tag mentions in the Discord chat if the user exists (you can use their Discord display name with spaces removed, or their Minecraft username if the accounts are linked)
123
+
* Add customizeable scripted responses for the bot to say when it detects a trigger phrase
114
124
* A handful of fun and shitposting commands for the full Discord Bot experience both in and out of game
115
-
* Cleverbot integration - chat with the bot using `@<name>`. Works in Discord AND Minecraft!
125
+
* Cleverbot integration - chat with the bot using `@<bot name>` or `/talk`. Works in Discord AND Minecraft! (requires Cleverbot API key)
116
126
* The bot can use any of its commands in any channel it can read (including DMs!) allowing it to function as a general-purpose Discord bot on the side
127
+
* Command permissions affect both Minecraft slash command and Minecraft in-chat commands
117
128
118
129
## Permissions
119
130
120
-
- `discordbridge.cleverbot` - ability to talk to Cleverbot
121
-
- `discordbridge.f` - ability to pay respects with /f
122
-
- `discordbridge.reload` - ability to reload data and reconnect the Discord connection
123
-
- `discordbridge.eightball` - ability to consult the Magic 8-Ball with /8ball
124
-
- `discordbridge.rate` - ability to ask for an out-of-10 rating with /rate
125
-
- `discordbridge.insult` - ability to make the bot insult something with /insult
131
+
- `discordbridge.discord` - ability to use any command in of the /discord subcommand tree
132
+
- `discordbridge.discord.reload` - ability to reload configs and JDA
133
+
- `discordbridge.discord.listmembers` - abiliyt to receive a list of members in the Discord channel
134
+
- `discordbridge.discord.linkalias` - abiliy to send a request to a Discord member to set up alias translation
135
+
- `discordbridge.talk` - ability to talk to Cleverbot
136
+
- `discordbridge.f` - ability to use the f command
137
+
- `discordbridge.rate` - ability to use the rate command
138
+
- `discordbridge.eightball` - ability to use the 8ball command
139
+
- `discordbridge.insult` - ability to use the insult command
140
+
- `discordbridge.choose` - ability to use the choose command
141
+
- `discordbridge.roll` - ability to use the roll command
126
142
127
143
## Commands
128
144
129
-
- `/discord reload` - reloads data and reconnects to Discord
130
-
- `/discord get online` - provides a list of all Discord users in the relay channel who are Online, Do Not Disturb, and Idle
131
-
- `/discord get ids` - provides a list of the Discord IDs of all users in the relay channel, which is useful for...
132
-
- `/discord register <discord-id>` - this command will send a DM to the corresponding user asking if that user wishes to link their Discord account with the Minecraft user who issued the command
133
-
- `/f` - press F to pay respects
134
-
- `/8ball <query>` - consults the Magic 8-Ball to answer your yes/no questions (messages configurable in `botmemory.yml`)
135
-
- `/rate <thing to rate>` - asks the bot to rate something on a 0-10 scale
136
-
- `/insult <thing to insult>` - makes the bot insult something (messages configurable in `insults.yml`) (*WARNING: The supplied insults are quite offensive! Remove permissions for this command or replace the insults if you intend to use this bot on cleaner servers!*)
145
+
- `8ball <question>` - consult the Magic 8-Ball to answer your yes/no questions (messages configurable in `botmemory.yml`)
146
+
- `discord reload` - refreshes the JDA connection and reloads configs
147
+
- `discord linkalias` - sends a request to a specified Discord user to link aliases for username translation
148
+
- `discord listmembers all` - lists all the members in the Discord relay channel
149
+
- `discord listmembers online` - lists all the members in the Discord relay channel who are online along with their statuses
150
+
- `discord unlinkalias ` - silently breaks an alias link with a Discord user, if one exists
151
+
- `f` - press F to pay respects (messages configurable in `f.yml`)
152
+
- `rate <thing to be rated>` - have the bot rate something for you (rating scale and messages configurable in `rate.yml`)
153
+
- `insult <thing to insult>` - makes the bot insult something (messages configurable in `insults.yml`) (*WARNING: The supplied insults are quite offensive! Remove permissions for this command or replace the insults if you intend to use this bot on cleaner servers!*)
154
+
- `choose <choiceA or choiceB || choiceC, choice D...>` - have the bot make a choice for you
155
+
- `roll <sides>` - roll a die with a specified number of sides (up to 100)
0 commit comments