ErdbeerbaerLP / DiscordIntegration-Forge

Forge version of the Discord Integration mod
https://modrinth.com/plugin/dcintegration
MIT License
99 stars 56 forks source link

[Bug]: Crash when updating to 1.12.2 - 2.3.5 on Mohist (Forge + Spigot hybrid server) #355

Closed vico93 closed 2 years ago

vico93 commented 2 years ago

What happened?

After updating DCIntegration 2.3.5 on my Mohist installation (updated to latest build - #235) i ran into this crash

Game Version

1.12

What platform are you using?

Forge, Spigot

Platform version

263

Config File

# Configuration file

general {

    ##########################################################################################################
    # general config
    #--------------------------------------------------------------------------------------------------------#
    # General bot Configuration
    ##########################################################################################################

    "general config" {
        # The Name of the Game
        # 
        # PLACEHOLDERS:
        # %online% - Online Players
        # %max% - Maximum Player Amount
        S:BOT_GAME_NAME=Minecraft: Java Edition

        # Valid values:
        # WATCHING
        # PLAYING
        # LISTENING
        # DISABLED
        S:BOT_GAME_TYPE=PLAYING

        # Insert your Bot Token here!
        # DO NOT SHARE IT WITH ANYONE!
        S:BOT_TOKEN=ABCD

        # The channel ID where the bot will be working in
        S:CHANNEL_ID=1234

        # When description updates are enabled, how long should it wait before updating? (in milliseconds)
        # Setting this too low can cause RateLimits from discord
        I:DESCRIPTION_UPDATE_DELAY=500

        # Wether or not the Bot should modify the channel description
        B:MODIFY_CHANNEL_DESCRIPTRION=false

        # If you think the update check is annoying disable this
        B:UPDATE_CHECK=true
    }

    ##########################################################################################################
    # advanced
    #--------------------------------------------------------------------------------------------------------#
    # Configure Advanced features like moving specific message types to different channels
    ##########################################################################################################

    advanced {
        # Custom channel for description
        # Leave empty to use default channel
        S:CHANNEL_DESCRIPTION_ID=

        # Custom channel where messages get sent to minecraft
        # Leave empty to use default channel
        S:CHAT_INPUT_ID=

        # Custom channel for ingame messages
        # Leave empty to use default channel
        S:CHAT_OUTPUT_ID=

        # Custom channel ID for death messages
        # Leave empty to use default channel
        S:DEATH_CHANNEL_ID=

        # Custom channel ID for FTB Utilities messages
        # Leave empty to use default channel
        S:FTB_UTILITIES_CHANNEL_ID=

        # Custom channel ID for server specific messages (like Join/leave)
        # Leave empty to use default channel
        S:SERVER_CHANNEL_ID=

        # Custom channel ID for Votifier messages
        # Leave empty to use default channel
        S:VOTIFIER_CHANNEL_ID=
    }

    ##########################################################################################################
    # webhook
    #--------------------------------------------------------------------------------------------------------#
    # Webhook configuration
    ##########################################################################################################

    webhook {
        # Wether or not the bot should use a webhook (it will create one)
        B:BOT_WEBHOOK=false

        # The avatar to be used for server messages
        S:SERVER_AVATAR=https://raw.githubusercontent.com/ErdbeerbaerLP/Discord-Chat-Integration/master/images/srv.png

        # The username of the server
        S:SERVER_NAME=Server
    }

    ##########################################################################################################
    # messages
    #--------------------------------------------------------------------------------------------------------#
    # Customize messages of this mod
    ##########################################################################################################

    messages {
        # Channel description while the server is online
        # PLACEHOLDERS:
        # %online% - Online player amount
        # %max% - Maximum player count
        # %tps% - Server TPS
        # %motd% - The server MOTD (from server.properties!)
        # %uptime% - The uptime of the server
        # %days% - The amount of days the server has been online
        # %hours% - The amount of hours the server has been online
        # %minutes% - The amount of minutes the server has been online
        # %seconds% - The amount of seconds the server has been online
        S:CHANNEL_DESCRIPTION=IP: 127.0.0.1 | Versão: 1.12.2 | Online: %online% | %tps% TPS | Uptime: %uptime%

        # Channel description while the server is offline
        S:CHANNEL_DESCRIPTION_OFFLINE=O VicoCraft está desligado...

        # Channel description while the server is starting
        S:CHANNEL_DESCRIPTION_STARTING=Iniciando...

        # Set this to true if you don't want to have Join / Leave messages being sent
        B:DISABLE_JOIN_LEAVE_MESSAGES=false

        # Disable removal of color codes from chat to discord?
        B:DISCORD_COLOR_CODES=false

        # Should /me output be sent to discord?
        B:ENABLE_ME_OUTPUT=true

        # Should /say output be sent to discord?
        B:ENABLE_SAY_OUTPUT=true

        # This is what will be displayed ingame when someone types into the bot´s channel
        # PLACEHOLDERS:
        # %user% - The username
        # %id% - The user ID
        # %msg% - The Message
        S:INGAME_DISCORD_MSG=§6[§5DISCORD§6]§r <%user%> %msg%

        # Supports MulitLined messages using \n
        # PLACEHOLDERS:
        # %player% - The player´s name
        # %name% - The advancement name
        # %desc% - The advancement description
        S:PLAYER_ADVANCEMENT_MSG=%player% conseguiu o progresso **%name%**\n_%desc%_

        # Chat message when webhook is disabled
        # PLACEHOLDERS:
        # %player% - The player´s name
        # %msg% - The chat message
        S:PLAYER_CHAT_MSG=%player%: %msg%

        # PLACEHOLDERS:
        # %player% - The player´s name
        # %msg% - The death message
        S:PLAYER_DEATH_MSG=%player% %msg%

        # PLACEHOLDERS:
        # %player% - The player´s name
        S:PLAYER_JOINED_MSG=%player% entrou

        # PLACEHOLDERS:
        # %player% - The player´s name
        S:PLAYER_LEFT_MSG=%player% saiu

        # PLACEHOLDERS:
        # %player% - The player´s name
        S:PLAYER_TIMEOUT_MSG=%player% caiu do VicoCraft!

        # Enable removal of color codes from discord to chat?
        B:PREVENT_MC_COLOR_CODES=false

        # The message to print to discord when it was possible to detect a server crash
        # Will also be used in the channel description
        S:SERVER_CRASHED_MSG=O VicoCraft *crashou*! :thinking:

        # This message will edited in / sent when the server finished starting
        S:SERVER_STARTED_MSG=@here VicoCraft iniciado! | **Versão**: *1.12.2* | **IP**: __127.0.0.1__

        # Message to show while the server is starting
        # This will be edited to SERVER_STARTED_MSG when webhook is false
        S:SERVER_STARTING_MSG=Vicocraft iniciando...

        # This message will be sent when the server was stopped
        S:SERVER_STOPPED_MSG=VicoCraft fechado!

        # Should tamed entity death be visible in discord?
        B:TAMED_DEATH_ENABLED=true

        # The format of the uptime command and %uptime% placeholder
        # For more help with the formatting visit https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/time/DurationFormatUtils.html
        S:UPTIME_FORMAT=dd 'dias' HH 'horas' mm 'minutos' ss 'segundos'
    }

    ##########################################################################################################
    # commands
    #--------------------------------------------------------------------------------------------------------#
    # Configuration for built-in discord commands
    ##########################################################################################################

    commands {
        # The Role ID of your Admin Role
        S:ADMIN_ROLE_ID=1234

        # The prefix of the commands like list
        S:CMD_PREFIX=/

        # Enable the /help command in discord
        # Disabling also removes response when you entered an invalid command
        # Requires server restart
        B:ENABLE_HELP_COMMAND=true

        # Enable the /list command in discord
        # Requires server restart
        B:ENABLE_LIST_COMMAND=true

        # Set to false to completely disable the "Unknown Command" message
        B:ENABLE_UNKNOWN_COMMAND_MESSAGE=true

        # Set to true to enable the "Unknown Command" message in all channels
        B:ENABLE_UNKNOWN_COMMAND_MESSAGE_EVERYWHERE=false

        # Enable the /uptime command in discord
        # Requires server restart
        B:ENABLE_UPTIME_COMMAND=true

        # Custom Channel ID for the help command. Set to 00 to allow usage from everywhere and to 0 to allow usage from the bots default channel
        S:HELP_CMD_CHANNEL_ID=00

        # Header of the help command
        S:HELP_HEADER=Comandos disponíveis neste canal:

        # A list of blacklisted modids
        # Adding one will prevent the mod to send messages to discord using forges IMC system
        S:IMC_MOD_ID_BLACKLIST <
            examplemodid
         >

        # Add your Custom commands to this JSON
        # You can copy-paste it to https://jsoneditoronline.org  Make sure when pasting here, that the json is NOT mulitlined.
        # You can click on "Compact JSON Data" on the website
        # NOTE: You MUST op the uuid set at SENDER_UUID in the ops.txt !!!
        # 
        # mcCommand   -   The command to execute on the server
        # adminOnly   -   True: Only allows users with the Admin role to use this command. False: @everyone can use the command
        # description -   Description shown in /help
        # aliases     -   Aliases for the command in a string array
        # useArgs     -   Shows argument text after the command
        # argText     -   Defines custom arg text. Default is <args>
        # channelIDs    -    Allows you to set specific text channels outside of the server channel to use this command (make it an string array), Set to ["00"] to allow from all channels
        S:JSON_COMMANDS={"kick":{"adminOnly":true,"mcCommand":"kick","description":"Kicka um jogador do VicoCraft","useArgs":true,"argText":"<player> [motivo]"},"stop":{"adminOnly":true,"mcCommand":"stop","description":"Parar o VicoCraft","aliases":["shutdown"],"useArgs":false},"kill":{"adminOnly":true,"mcCommand":"kill","description":"Matar um jogador","useArgs":true,"argText":"<player>"},"tps":{"adminOnly":false,"mcCommand":"forge tps","description":"Mostra o TPS","useArgs":false}}

        # Custom Channel ID for the list command. Set to 00 to allow usage from everywhere and to 0 to allow usage from the bots default channel
        S:LIST_CMD_CHANNEL_ID=0

        # The message for 'list' when no player is online
        S:MSG_LIST_EMPTY=Não tem ninguém online...

        # The header for 'list'
        # PLACEHOLDERS:
        # %amount% - The amount of players online
        S:MSG_LIST_HEADER=Tem %amount% players online:

        # The message for 'list' when one is online
        S:MSG_LIST_ONE=Só tem um player online:

        # Message sent when user does not have permission to run a command
        S:MSG_NO_PERMISSION=Você não tem permissão para executar esse comando!

        # Message if a player provides too many arguments
        # PLACEHOLDERS:
        # %player% - The player´s name
        S:MSG_PLAYER_NOT_FOUND=Não encontrei "%player%"

        # Message sent when an invalid command was typed
        # PLACEHOLDERS:
        # %prefix% - Command prefix
        S:MSG_UNKNOWN_COMMAND=Comando desconhecido, tente `%prefix%help` para uma lista de comandos disponíveis

        # You MUST op this UUID in the ops.txt or many commands won´t work!!
        S:SENDER_UUID=8d8982a5-8cf9-4604-8feb-3dd5ee1f83a3

        # Custom Channel ID for the uptime command. Set to 00 to allow usage from everywhere and to 0 to allow usage from the bots default channel
        S:UPTIME_CMD_CHANNEL_ID=0
    }

    ##########################################################################################################
    # discord_command
    #--------------------------------------------------------------------------------------------------------#
    # Configurate the /discord command useable ingame
    ##########################################################################################################

    discord_command {
        # The message shown when hovering the /discord command message
        S:HOVER=Clique para abrir o link de convite

        # Message sent when ignoring discord messages
        S:IGNORECMD_IGNORE=Você está ignorando as mensagens do Discord!

        # Message sent when unignoring discord messages
        S:IGNORECMD_UNIGNORE=Você não está mais ignorando mensagens do Discord!

        # The message displayed when typing /discord in the server chat
        S:MESSAGE=Join our discord! https://discord.gg/xxx

        # The url to open when clicking the /discord command text
        S:URL=https://discord.gg/xxx
    }

    ##########################################################################################################
    # ftb utilities
    #--------------------------------------------------------------------------------------------------------#
    # Theese config values will only be used when FTB Utilities is installed!
    ##########################################################################################################

    "ftb utilities" {
        # Format name like in chat?
        B:CHAT_FORMATTING=true

        # Format of the AFK message
        # PLACEHOLDERS:
        # %player% - The player´s name
        S:DISCORD_AFK_MSG=%player% está ausente!

        # Print afk messages in discord
        B:DISCORD_AFK_MSG_ENABLED=true

        # Format of the no longer AFK message
        # PLACEHOLDERS:
        # %player% - The player´s name
        S:DISCORD_AFK_MSG_END=%player% voltou!

        # URL of the FTB Avatar icon
        S:FTB_AVATAR_ICON=https://raw.githubusercontent.com/ErdbeerbaerLP/Discord-Chat-Integration/master/images/ftb.png

        # Format of the shutdown message printed when the server will shutdown/restart in 10 seconds
        S:SHUTDOWN_MSG_10SECONDS=VicoCraft vai fechar em 10 segundos!

        # Format of the shutdown message printed when the server will shutdown/restart in 2 minutes
        S:SHUTDOWN_MSG_2MINUTES=VicoCraft vai fechar em 2 minutos!
    }

    ##########################################################################################################
    # votifier
    #--------------------------------------------------------------------------------------------------------#
    # Configure votifier integration here
    ##########################################################################################################

    votifier {
        # URL of the webhook avatar image
        S:AVATAR_URL=https://media.forgecdn.net/avatars/158/149/636650534005921456.png

        # Should votifier messages be sent to discord?
        B:ENABLED=true

        # The message format of the votifier message
        # 
        # PLACEHOLDERS:
        # %player% - The player´s name
        # %site% - The name of the vote site
        # %addr% - (IP) Address of the site
        S:MESSAGE=%player% voted on %site%

        # Name of the webhook author
        S:NAME=Votifier
    }

}

Crash report / Error log (if applicable)

https://www.toptal.com/developers/hastebin/imuqibaqig.rb

Additional Information

I have Discord-Integration.cfg and Discord-Integration.toml on my config, and provided the .cfg one above. Is the correct one?

ErdbeerbaerLP commented 2 years ago

Toml is the new one

You need to manually transfer values to the new config and then it should work

(closing)