Skip to content

Server Owner Quick Start

This page is for people running a Valheim server with Valheim Lua Engine already installed from Thunderstore. If you want to write Lua resources, go to Getting started instead.

What you actually manage

As a server owner, you usually care about four things:

  1. the same engine version is present on the server and clients
  2. only the resources you want are enabled
  3. admin access and restricted commands are configured safely
  4. persistence and WebAdmin are usable in production

You do not need to know how the C# plugin is compiled to operate the package.

Install and first launch

Install Valheim Lua Engine with your Thunderstore-compatible mod manager.

After installation, the package places the engine and example resources under the Valheim and BepInEx plugin directories. On first launch:

  1. start the server once so config files are created
  2. open BepInEx/config/ValheimLua/server.cfg
  3. replace the placeholder txadmin_user and txadmin_password
  4. decide which resources should be enabled with ensure <resource_name>

The server and connecting clients must use the same Valheim Lua Engine version.

Enable only the resources you want

Example resources are installed under BepInEx/plugins/ValheimLua/resources.

Enable a resource in server.cfg:

ini
ensure gear_panel
ensure persistent_chest

Disable a resource by removing or commenting out its ensure line.

Included resources and what they are useful for:

  • gold_mining: custom ore vein, ore item, derived sword, recipe, and derived mob example
  • gear_panel: extra equipment slots with persistence and lightweight UI
  • inventory_native_test: inventory revision and transaction reference resource
  • persistent_chest: resource-owned container persistence with JSON or MySQL backing
  • quest_event_demo: quest and event flow example
  • zone_quest_demo: zone-based quest progression example

WebAdmin and runtime operations

WebAdmin is meant for day-to-day operation, not development only.

Use it for:

  • resource start, stop, and restart operations
  • logs and runtime health checks
  • permission inspection
  • configuration changes
  • profiling and diagnostics
  • offline inventory administration

Do not leave the default WebAdmin credentials in place.

Permissions and restricted commands

Valheim Lua Engine supports FiveM-style ACE permissions.

Typical pattern:

ini
add_principal identifier.steam.1234567890 group.admin
add_ace group.admin command.vle_admin allow

Use ACE for anything that should stay admin-only, especially commands that mutate player state, spawn content, or expose management tools.

Persistence choices

The runtime supports:

  • JSON persistence by default
  • optional MySQL persistence for shared or larger server data

If you just want to run included examples or smaller Lua systems, JSON is the simplest default. Move to MySQL when you need external storage, shared administration workflows, or more durable operational patterns.

Updating the package

When updating from Thunderstore:

  1. update the server package
  2. ensure clients update to the same Valheim Lua Engine version
  3. read the changelog for breaking or operational changes
  4. confirm your ensure list and credentials still match your intended setup
  5. restart the server and verify resource startup in logs or WebAdmin

If a resource ships new content or changed behavior, review the example docs before enabling it in production.

If you want to customize gameplay

Once you move beyond operating the packaged resources, start here:

Lua resources for Valheim, built on a server-authoritative runtime.