Page MenuHomePhorge

Valheim
Updated 1,358 Days AgoPublic

User Data Location

  • ~/.config/unity3d/IronGate/Valheim
  • %USERDIR%\AppData\LocalLow\IronGate\Valheim\ maybe?

Non-obvious Keyboard Commands

Many are rebindable but if you're like me or @pwrightlindl, you won't even look at the on-screen text (you should though, hella useful).

  • +F3 toggles the HUD, so you can take sweet screenshots.
  • x sits down, so you can chill at a campfire.
  • F2 toggles a diagnostics display, showing things like your ping and FPS.

Performance

On Windows, when you start the game you should get a Steam popup asking if you want to run it in Vulkan. If you're on an NVIDIA GPU, you'll probably not want to run it under Vulkan. If you have a reasonably recent Radeon GPU it should be fine?

You also may need to go Steamright-click ValheimProperties...GeneralLaunch Options and put in the following text to force exclusive fullscreen:
-window-mode exclusive -screen-fullscreen

You may still have to press alt+ twice to toggle it into actual fullscreen. This is all via some bloke on Reddit; on @keithzg's Radeon system none of the above resulted in an appreciable FPS change.

On Linux, you are instead offered "Play Valheim" and "Play Valheim using OpenGL". The first option is Vulkan, and it works fine for @keithzg at least.


Dedicated Server Setup

Want to run your own dedicated server? Well, the laziest way is to install letting Steam handle things:

  1. In Steam, show the "Tools" in your Library, and install Valheim Dedidicated Server
  2. It should now be installed to something like ~/.steam/steam/steamapps/common/Valheim dedicated server/

Better is to use steamcmd so it can be managed without a GUI (y'all nerds know what I mean)

  1. steamcmd +login anonymous +force_install_dir /opt/valheim/bin +app_update 896660 validate +exit
    • Re-run this command to update the installation

Whichever method you chose, in the resulting install folder, you could make a copy of start_server.sh or start_server.bat and edit it for what you need. That's the officially suggested approach. But, better yet, make a systemd unit file like so:

/etc/systemd/system/valheim.service
### Configuration

[Unit]
Description=Valheim Dedicated Server

[Service]
# Using my own user account and Steam install
User=keithzg
Group=keithzg
WorkingDirectory=/home/keithzg/.steam/steam/steamapps/common/Valheim dedicated server
# Same library setup as the shellscript does
Environment=LD_LIBRARY_PATH="/home/keithzg/.steam/steam/steamapps/common/Valheim dedicated server/linux64":$LD_LIBRARY_PATH
# While we're (for now) using the Steam-installed copy of the dedicated server, we've copied the savefiles to /opt/valheim/savedir to be written to there, so that Steam's cloud saves don't wreck havoc or such.
ExecStart="/home/keithzg/.steam/steam/steamapps/common/Valheim dedicated server/valheim_server.x86_64" -name "keithzg" -port 2456 -world "KeithZGsFirstWorld" -password "Zomboat!" -public 1 -savedir /opt/valheim/savedir
# By default, systemd send SIGTERM to services when stopping them. This appears to at least sometimes cause Valheim to not save! Lets specify use of a more polite signal.
KillSignal=SIGINT


[Install]
# Lazy way to ensure it starts when things should be ready
WantedBy=multi-user.target

External Documentation

Last Author
keithzg
Last Edited
Apr 3 2021, 11:14 PM

Event Timeline

keithzg edited the content of this document. (Show Details)
keithzg subscribed.
keithzg added a subscriber: pwrightlindl.
keithzg removed a subscriber: pwrightlindl.
keithzg published a new version of this document.Apr 3 2021, 11:19 PM