Skip to content

How to Migrate Valheim Map Data from server to server

Zerobandwidth edited this page Jun 19, 2021 · 3 revisions

Question: How would I go about running the server using a world I've uploaded that already exists?

Question: How do I import my saved world into a dedicated server?

Question: How can I use my saved worlds and play with them on a different server?

"Warning: renaming the save files to something other than the original name will break your world" -woutwoot

SFTP into your Server as steam (recommend using WINSCP) *This is based off the my script configurations for initial setup. *Default user is steam. If your user is different than steam use that username instead for permissions and folder locations *Default script is start_server.sh | My script is start_valheim.sh - Edit whatever your file is for starting your server. *Advance users - use whatever method you want. Folder locations are listed below.

Before you move your old world data, you need to stop the Valheim Server Service. This should be completed on both servers.

Thumbnail

1. Stop Valheim Server Service on OLD and NEW Valheim servers via SSH

sudo systemctl stop valheimserver.service

2. Locate your old map data on OLD server via SSH

cd /home/steam/.config/unity3d/IronGate/Valheim/worlds/
or
cd ~/.config/unity3d/IronGate/Valheim/worlds/

New Njord Menu Folder Structure

cd /home/steam/.config/unity3d/IronGate/Valheim/(Your World Name)/worlds/
or
cd ~/.config/unity3d/IronGate/Valheim/(Your World Name)/worlds/

-Display files within the worlds directory via SSH

ls -lisa /home/steam/.config/unity3d/IronGate/Valheim/worlds/
or
ls -lisa ~/.config/unity3d/IronGate/Valheim/worlds/

3. Connect to you Ubuntu Server with WINSCP.

DigitalOcean: https://winscp.net/eng/docs/guide_digitalocean

AWS: https://winscp.net/eng/docs/guide_amazon_ec2

Azure: https://winscp.net/eng/docs/guide_microsoft_azure

GCP: https://winscp.net/eng/docs/guide_google_compute_engine

4. Turn on show hidden files and folder while utilizing WINSCP

* Open the WinSCP program.
* From the menu bar at the top the screen select Options then Preferences.
* Select Panels from the left column.
* Tick to Show hidden files.

5. While connected to your OLD server, utilizing WINSCP

Navigate to the Valheim directory:
/home/steam/.config/unity3d/IronGate/Valheim/worlds/

6. Drag and drop both whateverYourWorldNameFileIs.db and whateverYourWorldNameFileIs.fwl to your desktop

7. While connected to your NEW server, utilizing WINSCP - locate and change directories to

/home/steam/.config/unity3d/IronGate/Valheim/worlds/
or
~/.config/unity3d/IronGate/Valheim/worlds/

8. Drag and drop both whateverYourWorldNameFileIs.db and whateverYourWorldNameFileIs.fwl into your NEW server

/home/steam/.config/unity3d/IronGate/Valheim/worlds/
or
~/.config/unity3d/IronGate/Valheim/worlds/

9. Set Steam permissions to whateverYourWorldNameFileIs.db whateverYourWorldNameFileIs.fwl on NEW server via SSH

sudo chown steam:steam /home/steam/.config/unity3d/IronGate/Valheim/worlds/whateverYourWorldNameFileIs.db    #<---type your info
sudo chown steam:steam /home/steam/.config/unity3d/IronGate/Valheim/worlds/whateverYourWorldNameFileIs.fwl   #<---type your info

10. Make a backup of the old world files on the NEW server via SSH (If you want)

cp /home/steam/.config/unity3d/IronGate/Valheim/worlds/WorldNameFile.db /home/steam/.config/unity3d/IronGate/Valheim/worlds/WorldNameFile.dbOLDBAD
cp /home/steam/.config/unity3d/IronGate/Valheim/worlds/WorldNameFile.fwl /home/steam/.config/unity3d/IronGate/Valheim/worlds/WorldNameFile.fwlOLDBAD

Your WorldNameFile.db and WorldNameFile.fwl, should have permissions like the example below...

savedworld

11. Make sure edit start_valheim.sh configuration file. -world "WorldNameFile" and world data files (WorldNameFile.db WorldNameFile.fwl) are the same.

vi /home/steam/valheimserver/start_valheim.sh

How to edit and save a file in Linux with vi: https://linuxize.com/post/how-to-save-file-in-vim-quit-editor/

Example:

#!/bin/bash
export templdpath=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH
export SteamAppId=892970

# Tip: Make a local copy of this script to avoid it being overwritten by steam.
# NOTE: You need to make sure the ports 2456-2458 is being forwarded to your server through your local router & firewall.

./valheim_server.x86_64 -name "My Valheim Server Public Display" -port 2456 -nographics -batchmode -world "WorldNameFileOLDNAME" -password "MyPassWord"

export LD_LIBRARY_PATH=$templdpath

Change to:

#!/bin/bash
export templdpath=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH
export SteamAppId=892970

# Tip: Make a local copy of this script to avoid it being overwritten by steam.
# NOTE: You need to make sure the ports 2456-2458 is being forwarded to your server through your local router & firewall.

./valheim_server.x86_64 -name "My Valheim Server Public Display" -port 2456 -nographics -batchmode -world "WorldNameFileNEWNAME" -password "MyPassWord"

export LD_LIBRARY_PATH=$templdpath

Save File and Exit vi

12. Start the Valheim Server service

sudo systemctl start valheimserver.service

13. Check to see if Valheim Server service started

sudo systemctl status valheimserver.service

14. Conduct manual connection to Valheim Server (Currently Server listings in Steam are hit or miss -Known IronGate issue)

* Open Steam
* Right Click Valheim Game Logo
* Select Properties
* Type in the Launch Options
* +connect IPADDRESS:PORT
* Press X
* Start Valheim
* Select Viking toon to play (game should go strait to Character select screen, not the main menu. If this happens... something is not correct...firewalls...Valheim server did not start correctly.... misconfiguration....)
* Press Start
* Start slaying Necks!!!

If you want to change the old server world name try the steps below before uploading to NEW SERVER:

Not responsible for their script but it seems to work if you need to rename your world data files! Great job by them!!!

https://geekstrom.de/valheim/fwl/

The .fwl is a binary file containing your Valheim world metadata. If you want to or somehow must rename that file and use it (for example on your dedicated server) you run into problems. You will probably spawn in a new generated world, which looks like your old one, but without your progress like buildings, chests, dungeons, etc.. Even some commercial server providers don't get this renaming right, and you run into problems with some of them too.

To save you from all that hassle, use this site to quickly rename your Valheim world without corrupting your world files. Nothing of your .fwl is stored on this server.

After you get your new .fwl file, just rename your .db filename and copy it together with your new .fwl into your worlds directory.

Your world files are located at:

windows: C:\Users%username%\AppData\LocalLow\IronGate\Valheim\worlds

linux: ~/.config/unity3d/IronGate/Valheim/worlds

Enjoy the awesome game and have fun playing Valheim!