Magibridge is crashing on server start. Here's the crash log:
[12:36:27] [pool-3-thread-2/INFO] [magibridge]: Hooking into Nucleus
[12:36:27] [Thread-27/INFO] [THAUMCRAFT]: Starting aura thread for dim 0
[12:36:27] [pool-3-thread-2/ERROR] [magibridge]: Error loading MagiBridge:
java.lang.IllegalArgumentException: ID may not be empty
at net.dv8tion.jda.internal.utils.Checks.notEmpty(Checks.java:63) ~[Checks.class:?]
at net.dv8tion.jda.api.utils.MiscUtil.parseSnowflake(MiscUtil.java:114) ~[MiscUtil.class:?]
at net.dv8tion.jda.api.utils.cache.SnowflakeCacheView.getElementById(SnowflakeCacheView.java:58) ~[SnowflakeCacheView.class:?]
at net.dv8tion.jda.api.JDA.getTextChannelById(JDA.java:959) ~[JDA.class:?]
at com.magitechserver.magibridge.discord.DiscordMessageBuilder.get(DiscordMessageBuilder.java:88) ~[DiscordMessageBuilder.class:?]
at com.magitechserver.magibridge.discord.DiscordMessageBuilder.send(DiscordMessageBuilder.java:155) ~[DiscordMessageBuilder.class:?]
at com.magitechserver.magibridge.MagiBridge.lambda$onStartingServer$2(MagiBridge.java:91) ~[MagiBridge.class:?]
at java.util.concurrent.CompletableFuture.uniRun(CompletableFuture.java:719) ~[?:1.8.0_252]
at java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:701) ~[?:1.8.0_252]
at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) ~[?:1.8.0_252]
at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1646) ~[?:1.8.0_252]
at org.spongepowered.api.scheduler.Task$Builder.lambda$execute$0(Task.java:139) ~[Task$Builder.class:1.12.2-2838-7.2.3]
at org.spongepowered.common.scheduler.SchedulerBase.lambda$startTask$0(SchedulerBase.java:197) ~[SchedulerBase.class:1.12.2-2838-7.2.3]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_252]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_252]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_252]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_252]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
It appears that an ID is invalid. Here's my MagiBridge.conf config file. I'm running Nucleus on the server as well.
# MagiBridge, by Eufranio
#
# You can use the following placeholders on the DISCORD -> MC formats:
# %user% -> user who sent the message in the Discord channel
# %message% -> message that was sent to the channel
# %toprole% -> name of the highest role/rank of the user in the Discord server
# %toprolecolor% -> color of the user's role, according to the replacer at the bottom of this config
#
# You can use the following placeholder on the MC -> DISCORD formats:
# %player% -> player who sent the message in the chat channel
# %prefix% -> prefix of the player that sent the message. Usually set via permission plugins
# %topgroup% -> name of the highest group of the player who sent the message
# %nick% -> nickname of the player. If no nick is assigned to the player, his name will be used instead
# %message% -> message that the player sent
channel {
# Role that users need to have to be able to send colored chat to minecraft
# Set to "everyone" to allow everyone use colors in the messages
color-allowed-role=admin
# If a command is defined here, it will ONLY run if the user has the defined role.
# In this example, ONLY who have the admin role can stop the server
# Set the role to "everyone" to allow everyone use the command
commands-role-override {
ban=admin
stop=admin
}
# Discord command that executes server console commands
console-command="!cmd"
# Role that a user needs to have in order to run the console command
console-command-required-role=admin
# ID of the console Discord Channel, where console messages will be sent to
console-discord-channel=console
# Should MagiBridge delete the player list message?
delete-list-message=true
# ID of the main Discord Channel, where start/stop messages will be sent to
main-discord-channel=server-chat
# IGNORE IF USING ULTIMATECHAT!
nucleus {
# Discord Channel ID which global messages are sent to
global-discord-channel=server-chat
# Channel that HelpOp messages will be sent to (if enabled)
helpop-channel=console
# Discord Channel ID which messages from the staff chat are sent to
staff-discord-channel=console
}
# Discord command that shows the current online player list
player-list-command="!online"
# IGNORE IF USING NUCLEUS!
ultimatechat {
# Channels defined here override the global format, so you can have per-channel formats
channel-overrides {
global="&7[&a&lG&7] &f%user%&7: %message%"
}
# Format: ChannelID = IngameChannelName, Example:
# 12345678912345 = global
# Replace the default value with your own channels
channels {
"12345678912345"=global
}
}
# Should MagiBridge use Nucleus? If this and use-ultimatechat are both false, MagiBridge will use the vanilla chat system
use-nucleus=true
# Should MagiBridge use UltimateChat instead? If this and use-nucleus are both false, MagiBridge will use the vanilla chat system
use-ultimatechat=false
# Should MagiBridge send messages trough Webhooks instead a bot?
use-webhooks=false
}
colors-converter {
# Conversor from RGB to in-game colors (for %toprolecolor%)
# Format: "RGB" = "IN-GAME COLOR"
discord-to-mc-replacer {
"206694"="&1"
"11806A"="&2"
"1ABC9C"="&a"
"1F8B4C"="&2"
"2ECC71"="&a"
"3498DB"="&3"
"546E7A"="&8"
"607D8B"="&8"
"71368A"="&5"
"95A5A6"="&7"
"979C9F"="&7"
"992D22"="&4"
"99AAB5"="&f"
"9B59B6"="&5"
A84300="&6"
AD1457="&d"
C27C0E="&6"
E67E22="&6"
E74C3C="&c"
E91E63="&d"
F1C40F="&e"
}
}
core {
# Should MagiBridge send advancement messages to Discord?
advancement-messages-enabled=true
# Bot Token of the Bot User that you want to be used when sending messages to Discord
bot-token="(my bot token is in these quotes but I removed it for this issue)"
# Set to false if MagiBridge should NOT cut messages coming from Discord with more than
# 120 characters. This can turn the chat ugly if someone sends a big message
cut-messages=false
# Should MagiBridge send death messages to Discord?
death-messages-enabled=true
# Should MagiBridge send console messages to Discord? You must set the console-discord-channel for this to work!
enable-console-logging=false
# Should MagiBridge enable the Topic Updater, updating the topic of the main Discord channel?
enable-topic-updater=true
# Don't send messages of a player to Discord if he is vanished
hide-vanished-chat=false
# Should MagiBridge send Nucleus' HelpOp messages to Discord? The channel that the messages will be sent
# SHOULD be defined in the Channels section if this is enabled!
send-helpop=false
# Topic Updater interval in minutes, minimum is 5. If you're having rate limit errors, set this to 10 or higher!
topic-updater-interval=10
# Should MagiBridge enable Boop support? Will only work if Boop is installed and updated
use-boop=false
}
discord-to-mc-replacer {
# Text that will be replaced in messages sent TO the game
# Format: "word-to-replace" = "word-replaced"
discord-to-mc-replacer {
":dizzy_face:"=xO
":frowning:"=":("
":heart:"="<3"
":joy:"=";D"
":kissing:"=":*"
":laughing:"=xD
":neutral_face:"=":|"
":open_mouth:"=":O"
":smile:"=":D"
":smiley:"=":)"
":sob:"=";("
":stuck_out_tongue:"=":P"
":stuck_out_tongue_closed_eyes:"=xP
":stuck_out_tongue_winking_eye:"=";P"
":sunglasses:"="B)"
":tired_face:"="x("
":wink:"=";)"
}
}
messages {
# Message that will be sent to the main discord channel when a player receives an advancement
# Supports %advancement%
advancement-message="**%player% got a new advancement: %advancement%**"
# Messages sent to Discord when a player goes/retuns AFK, if enabled
afk {
enabled=true
# Message sent when a player goes AFK
going="%player% is now AFK"
# Message sent when a player is not AFK anymore
returning="%player% is not AFK anymore"
}
# Name of the attachment tag shown in-game when someone sends an attachment to the Discord channel
attachment-name="[Attachment]"
# Game that will be displayed in the bot's game status
# Supports %tps%, %players%, %maxplayers%, %daysonline%, %hoursonline% and %minutesonline%
bot-playing-status="Playing on a nice server!"
# Message that will be set in the main discord channel topic every X seconds
# Supports %tps%, %players%, %maxplayers%, %daysonline%, %hoursonline% and %minutesonline%
channel-topic-message="%players%/%maxplayers% players online | TPS: %tps% | Server online for %daysonline% days, %hoursonline% hours and %minutesonline% minutes!"
# Message that will be set in the main discord channel topic when the server goes offline
channel-topic-offline="The server is currently offline!"
# No permission message (for console command)
console-command-no-permisson="**You don't have permission to use this command!**"
# Message that will be sent to the main discord channel when a player dies
death-message="**Bad day for %player%: %deathmessage%**"
# Format of the messsage sent from Discord to the server
discord-to-server-format="&f%user%&7: &7%message%"
# Format of the messages sent from the Discord Staff channel to the server
# Node: This format is used ONLY when using the Nucleus hook!
discord-to-server-staff-format="&f%user%&7: &7%message%"
# Format used when sending HelpOp messages to Discord
helpop-message="HelpOp > %player%: %message%"
# Message that will be sent to the main discord channel when a new player joins the server
new-players-message="**Enjoy playing on our server, %player%!**"
# Message shown when there are no players in the server
# and the list command is executed
no-players-message="**There are no players online!**"
# Text that will be used in %toprole% when the user don't have any roles (besides @everyone)
# Use only if you need. If you don't, leave this option as ""
no-role-placeholder=""
# Message that will be sent to the discord-main-channel when a player joins the server
player-join-message="**%player%** joined the server"
# Format of the player name displayed in the channel list command (!online)
player-list-name="%player%"
# Message that will be sent to the discord-main-channel when a player leaves the server
player-quit-message="**Bye, %player%!**"
# Prefix that will be sent before the actual message, with a hover and clickable link
prefix {
enabled=false
hover="&bClick do join our Discord!"
link="https://github.com/Eufranio/MagiBridge"
text="&6[Discord]"
}
# Message that will be sent to the discord-main-channel when the server starts
server-starting-message="**The server is starting!**"
# Message that will be sent to the discord-main-channel when the server stops
server-stopping-message="**The server is stopping!**"
# Format of console messages sent FROM the server TO discord
server-to-discord-console-format="[%threadname%/%loglevel%] [%loggername%] %message%"
# Format of messages sent FROM the server TO discord
server-to-discord-format="**%player%**: %message%"
# Format of messages sent FROM the server staff channel TO the discord staff channel
# Used only when Nucleus is running and enabled
server-to-discord-staff-format="**%player%**: %message%"
# Format of the name of the webhooks that will send messages to Discord, if enabled
webhook-name="[%prefix%] %player%"
# URL that webhooks should get the skin picture from
# Note: the link SHOULD return a valid .png picture from the request!
# Supports %player%
webhook-picture-url="https://minotar.net/helm/%uuid%/100"
}
Magibridge is crashing on server start. Here's the crash log:
It appears that an ID is invalid. Here's my
MagiBridge.conf
config file. I'm running Nucleus on the server as well.