You are viewing a potentially older version of this package. View all versions.
Tristan-ValheimRcon-1.4.0 icon

ValheimRcon

Server plugin that adds support for the RCON protocol to manage your Valheim server. It includes a set of the most essential commands.

Date uploaded 8 months ago
Version 1.4.0
Download link Tristan-ValheimRcon-1.4.0.zip
Downloads 408
Dependency string Tristan-ValheimRcon-1.4.0

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.1901 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.1901

README

ValheimRcon

This plugin adds RCON protocol support to your Valheim server.

  • Introduces several commands for interacting with the server remotely
  • Supports sending command execution results to Discord
  • Provides an extensible RCON command interface that can be used by third-party mods
  • Plugin is protected against most potential threats, preventing unauthorized access to the server via the RCON protocol

Usage

  1. Install the plugin to your Valheim server
  2. Start the server to generate the configuration file
  3. Configure the plugin in BepInEx/config/org.tristan.rcon.cfg:
    • Set the RCON port (default is server port + 2)
    • Change the RCON password. Do not leave the default password, as it is insecure!
    • Provide a Discord webhook URL to see command results in your Discord (optional but recommended)
  4. Restart the server to apply the changes
  5. Connect to the server using an RCON client (web or desktop application)
  6. After connecting you will be able to execute commands in the console.

Command List

View all available commands:

list

All commands - detailed description with examples.

Notice

  • Player management commands (kick, ban, heal, damage) should be used carefully
  • Object deletion commands are irreversible
  • The -force flag in deleteObjects bypasses safety checks and can remove critical game objects (zone controllers, dungeons etc.). Use with extreme caution!
  • Not persistent objects (completely controlled by players) cannot be deleted or modified

If result of command execution is too long, it will be truncated in the RCON client, but the full result will be sent to Discord if you have configured a webhook URL in the plugin settings. For example if you execute findObjects command, it could return a lot of objects, and the RCON client will show only few of them. But the full result will be sent to Discord.

Examples

Gives player Ragnar level 4 Blackmetal Sword:

give Ragnar SwordBlackmetal -quality 4

Spawns 4 tamed level 3 Boars at coordinates x:90 y:31 z:90:

spawn Boar 90 31 90 -count 4 -level 3 -tamed

Sends a message Hello everyone! to the global chat:

say Hello everyone!

Custom commands

If you are a modder and want to add your own RCON commands for your server, read this documentation.

Contacts

If you have any questions / bug reports / suggestions for improvement or found incompatibility with another mod, feel free to contact me in discord typedeff or on GitHub

CHANGELOG

1.5.1

  • Added -zone <x> <y> parameter to findObjects and deleteObjects commands for searching/deleting objects by zone coordinates
  • Added -prefab <prefab name> option to modifyObject command to change object prefab
  • Added -detailed flag to findObjects command to show/hide detailed object information (like rotation, support, extra item information etc.)
  • Fixed an issue when sending large files to Discord (could occur when using -findObjects if more than 100k objects were found and the file size exceeded 10mb, which exceeds Discord's file upload limit)
    • Such files are now not sent to Discord and are instead saved to disk on the server
  • Improved object information display with better formatting and type-specific details
  • Enhanced ZDO info system:
    • More detailed and structured object information display
    • For mod developers, the ability to add custom object information providers has been added. These will be used everywhere object information is displayed (e.g. findObjects, deleteObjects, etc.) - ZDOInfoUtil.RegisterInfoProvider()

1.5.0

  • Added security improvements:
    • IP address filtering with CIDR mask support (whitelist/blacklist)
      • Configure allowed/blocked IP addresses or IP ranges using CIDR notation
      • Whitelist: if empty, all IPs allowed (except blacklisted)
      • Blacklist: always blocks specified IPs/ranges (takes priority over whitelist)
    • Security incident logging to Discord
      • Reports failed login attempts, unauthorized access, IP filter rejections, and other security events
      • Configurable webhook URL and message prefix for security reports
    • Empty password protection: plugin is disabled if password is empty to prevent insecure configurations

1.4.1

  • Added container inventory management commands:
    • showContainer <id:userid> - display inventory contents with item indices [index] for each item
    • addItemToContainer <id:userid> <item_name> [options] - add items to container
      • options: -count <count> -quality <quality> -variant <variant> -data <key> <value> -nocrafter -durability <durability> -force
      • Default durability is set to maximum for the specified quality level
    • removeItemFromContainer <id:userid> [options] - remove items from container
      • options: -index <index> (recommended) or -item <name>, -count <count>, -force
      • Use -index to precisely target items when multiple items with the same name exist
    • clearContainer <id:userid> [options] - clear container inventory
      • options: -force
  • Added -durability <durability> option to give command
    • Default durability is set to maximum for the specified quality level
    • Use -durability to override the default value

1.4.0

  • Changed custom object tag ZDO key to avoid conflict with portal tag (breaking: existing tagged objects created with older versions will not be found by tag)
  • Removed findObjectsNear command; use findObjects -near <x> <y> <z> <radius> instead
  • Expanded findObjects with -near filter to search within a radius around a position
  • Added -tag-old <tag> to findObjects to search objects that use the old tag key
  • Added modifyObject command to modify properties of persistent objects
    • Supports changing position, rotation, health and custom tag
    • Will not modify non-persistent objects or objects owned by online players unless -force is used to bypass safety checks
    • Note: changes to position, rotation or health of objects currently owned by players may not be immediately visible to those players
  • Added disconnectAll command to disconnect all connected players from the server
  • Added Random Events commands:
    • eventsList - list all available random events
    • startEvent <event_name> <x> <y> <z> - start a random event at the specified position
    • stopEvent - stop the currently active random event
    • currentEvent - show the currently active random event and position

1.3.0

  • deleteObjects: added -force flag to bypass safety checks; use with extreme caution as it can delete critical game objects (zones, dungeons, player models)
  • Simplified object id to id:userid format

1.2.2

  • Fixed rcon packet size limit issue (huge thanks to ourbob for finding the issue)

1.2.1

  • Improved give command

1.2.0

  • Improved command execution result delivery to RCON clients and Discord
  • Fixed errors when RCON clients disconnect (huge thanks to ourbob for finding and fixing the issue)
  • Added deleteObjects command for removing objects by selected criteria
  • Improved interface of some commands, added optional arguments

1.1.0

  • Added new commands
    • to manage global keys
    • to show server time
    • to find objects by name and creator id and get their information
    • to execute Valheim console commands on the server
    • to get player information
    • to show all available commands

1.0.1

  • Fixed updating server time while no players online

1.0.0

Public release