Hey @nwest01! I found your mod and got super excited to try and make it work for me and my friends, but haven’t been successful yet. I have a dedicated server on a docker container on my Unraid server. I manually installed the mod and moved the 4 .dll files into the plugins folder on my servers bepinex folder but the config files never get generated. Can you help? What info do you need from me to help you, help me. Thanks in advance.
Where's the guide to actually manually install this outside of setting up the bot? Why do we always have to search for this info outside of the actual mod post.
If you can install a mod you can install this. The config describe the rest. If you can't install a mod just pick a mod on random and see the description there. I guess the installing of mods isn't gone through in the same way as manuals for cars don't tell you how to steer. :P
Thank you so much for this! This mod has been amazing and so useful even when coming to troubleshoot server issues! Request: Would it be at all possible to add the crossplay join code as a webhook event, similiar to the "%PUBLICIP%"?
I did try to use the "Valheim Discord Connector" Mod as well as the "Join Code Sender" by froggy (Join Code Sender Thunderstore link) both separately and independently- either I am not using that one correctly or its not working atm.
JoinCodeSender is not updated for the most recent BepInExPack and, unfortunately, the creator was rather vague about whether he planned to update or not when I asked
First off, thanks for this mod! I do have a question for anyone that can help. It seems as though anytime anyone logs out, the mod thinks they died and is posting the wrong message to discord. Is it something that I messed up in the config?
[Main Settings] ## Discord channel webhook URL. For instructions, reference the 'MAKING A WEBHOOK' section of ## Discord's documentation: https://support.Discord.com/hc/en-us/articles/228383668-Intro-to-Webhook # Setting type: String # Default value: Webhook URL = (hidden) ## Specify a subset of possible events to send to the primary webhook. Previously all events would go to the primary webhook. ## Format should be the keyword 'ALL' or a semi-colon separated list, e.g. 'serverLifecycle;playerAll;playerFirstAll;leaderboardsAll;' ## Full list of valid options here: https://discordconnector.valheim.nwest.games/config/main.html#webhook-events # Setting type: String # Default value: ALL Webhook Events = serverLifecycle;eventLifecycle;playerJoin;playerLeave;playerShout;playerFirstJoin; ## Discord channel webhook URL. For instructions, reference the 'MAKING A WEBHOOK' section of ## Discord's documentation: https://support.Discord.com/hc/en-us/articles/228383668-Intro-to-Webhook # Setting type: String # Default value: Secondary Webhook URL = (hidden) ## Specify a subset of possible events to send to the primary webhook. Previously all events would go to the primary webhook. ## Format should be the keyword 'ALL' or a semi-colon separated list, e.g. 'serverLaunch;serverStart;serverSave;' ## Full list of valid options here: https://discordconnector.valheim.nwest.games/config/main.html#webhook-events # Setting type: String # Default value: ALL Secondary Webhook Events = playerFirstDeath;playerDeath; ## Enable this setting to listen to debug messages from the mod. This will help with troubleshooting issues. # Setting type: Boolean # Default value: false Log Debug Messages = false ## Enable this setting to use embeds in the messages sent to Discord. Currently this will affect the position details for the messages. # Setting type: Boolean # Default value: false Use fancier discord messages = false ## It may be that you have some players that you never want to send Discord messages for. Adding a player name to this list will ignore them. ## Format should be a semicolon-separated list: Stuart;John McJohnny;Weird-name1 # Setting type: String # Default value: Ignored Players = ## It may be that you have some players that you never want to send Discord messages for. This option lets you provide a regular expression to filter out players if their name matches. ## Format should be a valid string for a .NET Regex (reference: https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference) # Setting type: String # Default value: Ignored Players (Regex) = ## Disable this setting to disable any positions/coordinates being sent with messages (e.g. players deaths or players joining/leaving). (Overwrites any individual setting.) # Setting type: Boolean # Default value: true Send Positions with Messages = true ## Disable this setting to disable all stat collection. (Overwrites any individual setting.) # Setting type: Boolean # Default value: true Collect Player Stats = true ## Disable this setting to disable all extra announcements the first time each player does something. (Overwrites any individual setting.) # Setting type: Boolean # Default value: true Announce Player Firsts = true ## Choose a method for how players will be separated from the results of a record query (used for statistic leader boards). ## Name: Treat each CharacterName as a separate player ## PlayerId: Treat each PlayerId as a separate player ## NameAndPlayerId: Treat each [PlayerId:CharacterName] combo as a separate player # Setting type: RetrievalDiscernmentMethods # Default value: PlayerId # Acceptable values: PlayerId, Name, NameAndPlayerId How to discern players in Record Retrieval = NameAndPlayerId ## Enable this setting to have shouts which are performed by other mods/the server/non-players to be sent to Discord as well. ## Note: These are still subject to censure by the muted player regex and list. # Setting type: Boolean # Default value: false Send Non-Player Shouts to Discord = false
Love this, It works great! But I cant seem to find the commands for triggering the leaderboard stats? Or am I just totally missing it? lol
Also is it possible to do like a timed message before a server is shutdown? My server shutdown messages dont work. With the server provider I use, my server auto restarts at 10:30am PST. So I was wodering if something like "10 minutes before server reboot" ?
Hello! I am having an issue getting the "Time Online" variable to work in my leaderboard. Any help is greatly appreciated! Below are several config settings I believe may be related to the time online variable.
discord connector version: 2.1.12 (i haven't had a chance to update to .13 yet) bepinex 5.4.2105 valheim dedicated server version 0.215.2
master Use fancier discord messages = true Collect Player Stats = true How to discern players in Record Retrieval = PlayerID (I just changed this to Name a moment ago)
leaderboards Leaderboard1 enabled Leader Board Time Range = AllTime all statistics set to true (including Time Online Statistics = true)
toggles Player Join Notifications = true Player Leave Notifications = true Collect and Send Player Join Stats = true Collect and Send Player Leave Stats = true
messages Player Join Message = %PLAYER_NAME% has joined. Player Leave Message = %PLAYER_NAME% has left.
latest leaderboard update (names removed for privacy) Valheim HookBOT — Today at 1:41 PMLeaderboard
server installed modlist bepinex better networking config watcher cron job discord connector hook gen patcher jotunn let me sleep max player count no afk events official bepinex configuration manager plan build server devcommands simple health check smooth save ward event blocker
Thank you for taking the time to read this, any assistance is greatly appreciated!
116 comments
Request: Would it be at all possible to add the crossplay join code as a webhook event, similiar to the "%PUBLICIP%"?
I did try to use the "Valheim Discord Connector" Mod as well as the "Join Code Sender" by froggy (Join Code Sender Thunderstore link) both separately and independently- either I am not using that one correctly or its not working atm.
To nwest01, seconding this request!
[Main Settings]
## Discord channel webhook URL. For instructions, reference the 'MAKING A WEBHOOK' section of
## Discord's documentation: https://support.Discord.com/hc/en-us/articles/228383668-Intro-to-Webhook
# Setting type: String
# Default value:
Webhook URL =
(hidden)## Specify a subset of possible events to send to the primary webhook. Previously all events would go to the primary webhook.
## Format should be the keyword 'ALL' or a semi-colon separated list, e.g. 'serverLifecycle;playerAll;playerFirstAll;leaderboardsAll;'
## Full list of valid options here: https://discordconnector.valheim.nwest.games/config/main.html#webhook-events
# Setting type: String
# Default value: ALL
Webhook Events = serverLifecycle;eventLifecycle;playerJoin;playerLeave;playerShout;playerFirstJoin;
## Discord channel webhook URL. For instructions, reference the 'MAKING A WEBHOOK' section of
## Discord's documentation: https://support.Discord.com/hc/en-us/articles/228383668-Intro-to-Webhook
# Setting type: String
# Default value:
Secondary Webhook URL =
(hidden)## Specify a subset of possible events to send to the primary webhook. Previously all events would go to the primary webhook.
## Format should be the keyword 'ALL' or a semi-colon separated list, e.g. 'serverLaunch;serverStart;serverSave;'
## Full list of valid options here: https://discordconnector.valheim.nwest.games/config/main.html#webhook-events
# Setting type: String
# Default value: ALL
Secondary Webhook Events = playerFirstDeath;playerDeath;
## Enable this setting to listen to debug messages from the mod. This will help with troubleshooting issues.
# Setting type: Boolean
# Default value: false
Log Debug Messages = false
## Enable this setting to use embeds in the messages sent to Discord. Currently this will affect the position details for the messages.
# Setting type: Boolean
# Default value: false
Use fancier discord messages = false
## It may be that you have some players that you never want to send Discord messages for. Adding a player name to this list will ignore them.
## Format should be a semicolon-separated list: Stuart;John McJohnny;Weird-name1
# Setting type: String
# Default value:
Ignored Players =
## It may be that you have some players that you never want to send Discord messages for. This option lets you provide a regular expression to filter out players if their name matches.
## Format should be a valid string for a .NET Regex (reference: https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference)
# Setting type: String
# Default value:
Ignored Players (Regex) =
## Disable this setting to disable any positions/coordinates being sent with messages (e.g. players deaths or players joining/leaving). (Overwrites any individual setting.)
# Setting type: Boolean
# Default value: true
Send Positions with Messages = true
## Disable this setting to disable all stat collection. (Overwrites any individual setting.)
# Setting type: Boolean
# Default value: true
Collect Player Stats = true
## Disable this setting to disable all extra announcements the first time each player does something. (Overwrites any individual setting.)
# Setting type: Boolean
# Default value: true
Announce Player Firsts = true
## Choose a method for how players will be separated from the results of a record query (used for statistic leader boards).
## Name: Treat each CharacterName as a separate player
## PlayerId: Treat each PlayerId as a separate player
## NameAndPlayerId: Treat each [PlayerId:CharacterName] combo as a separate player
# Setting type: RetrievalDiscernmentMethods
# Default value: PlayerId
# Acceptable values: PlayerId, Name, NameAndPlayerId
How to discern players in Record Retrieval = NameAndPlayerId
## Enable this setting to have shouts which are performed by other mods/the server/non-players to be sent to Discord as well.
## Note: These are still subject to censure by the muted player regex and list.
# Setting type: Boolean
# Default value: false
Send Non-Player Shouts to Discord = false
Also is it possible to do like a timed message before a server is shutdown? My server shutdown messages dont work. With the server provider I use, my server auto restarts at 10:30am PST. So I was wodering if something like "10 minutes before server reboot" ?
Thanks! And Im loving this so far
the leaderboard stats frequency is adjusted in the config files
discord connector version: 2.1.12 (i haven't had a chance to update to .13 yet)
bepinex 5.4.2105
valheim dedicated server version 0.215.2
master
Use fancier discord messages = true
Collect Player Stats = true
How to discern players in Record Retrieval = PlayerID (I just changed this to Name a moment ago)
leaderboards
Leaderboard1 enabled
Leader Board Time Range = AllTime
all statistics set to true (including Time Online Statistics = true)
toggles
Player Join Notifications = true
Player Leave Notifications = true
Collect and Send Player Join Stats = true
Collect and Send Player Leave Stats = true
messages
Player Join Message = %PLAYER_NAME% has joined.
Player Leave Message = %PLAYER_NAME% has left.
latest leaderboard update (names removed for privacy)
Valheim HookBOT — Today at 1:41 PMLeaderboard
Deaths
1: *********: 14
2: *********: 9
3: *********: 1
Sessions
1: *********: 41
2: *********: 13
3: *********: 10
4: *********: 1
5: *********: 1
6: *********: 1
7: *********: 1
Shouts
1: *********: 11
2: *********: 3
Pings
1: *********: 17
2: *********: 8
server installed modlist
bepinex
better networking
config watcher
cron job
discord connector
hook gen patcher
jotunn
let me sleep
max player count
no afk events
official bepinex configuration manager
plan build
server devcommands
simple health check
smooth save
ward event blocker
Thank you for taking the time to read this, any assistance is greatly appreciated!