We do often include affiliate links to earn us some pennies. See more here.

After a promising Alpha release on itch.io back in 2018, the day has finally come to enter purgatory in Valheim.

"A battle-slain warrior, the Valkyries have ferried your soul to Valheim, the tenth Norse world. Besieged by creatures of chaos and ancient enemies of the gods, you are the newest custodian of the primordial purgatory, tasked with slaying Odin’s ancient rivals and bringing order to Valheim."

Check out the release trailer below:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

Features:

  • Huge procedurally-generated world - explore and inhabit mystical lands, from mysterious forests to imposing snow-topped mountain ranges and stunning meadows, complete with their own creatures of legend to battle and wildlife to hunt.
  • Co-op PvE (2-10 players) - - Whether you want to brave the lands alone or venture with trusted allies, Valheim supports independent, player-hosted servers and unlimited world creation. We recommend playing co-op with 3-5 players.
  • Punishing dodge & block based combat system with a wide range of weapons
  • Build & sail ships - from flimsy rafts to imposing warships, build legendary vessels to conquer the seas and discover new lands.
  • Summon and defeat vengeful primordial bosses of myth and legend, and collect trophies to progress and craft new powerful items
  • Flexible house and base building system - raise mead halls, farms, settlements outposts, castles and more.
  • Intuitive item crafting - forge the finest weapons and armour, and craft food and mead.
  • Dedicated server- for players who want to run a persistent server. If you prefer not to run a server on your PC, consider renting a server at G-Portal.

I've personally spent some time with it thanks to the publisher providing a key and it's quite something. The mixture of graphical styles with 3D low-res textures, plus plenty of modern lighting and effects gives it a really unique feel. I've been repeatedly blown away by the scenes it can offer!

Just look at this, it really can look incredible at times:

These types of huge open-world games can be a little on the overwhelming side when you first get into them, with Valheim being no different there. However, the early game has been carefully tuned to give you a small hands-off tutorial in the way that your friendly raven appears when you do something new to give you a couple of tips. It's not much but it's a nice little guide to feel a little less alone.

Valheim isn't exactly a plain sandbox though. While it's true you can mostly do whatever you please, there is a goal you're working towards other than just surviving. You're trying to please Odin and there's various special Forsaken One creatures, which are basically boss battles you activate throughout the world as you progress.

It probably has the deadliest gathering system around too, thanks to the physics system. Want to chop down that tree? Make sure it doesn't land on your head…or your house. Quite fun though seeing a big tree fall, taking down multiple more with it - easy wood. It's the little things.

For the Linux version it seems to run well overall. Built with the Unity game engine, and the developer actually uses Linux as their main computing environment too so it's not a surprise to see it working well. It's Vulkan by default, with a launch option picker on Steam to select OpenGL instead if you need it. There are some dips when new parts load in, which is expected from an open-world game and you would be hard-pressed to find a game where that doesn't happen. Overall though, I'm happy with the performance.

Looking forward to seeing a lot more from this over the Early Access period. Their current plan is to be in Early Access for at least one year. Over this time they're planning to add in new biomes, new enemies, new bosses, new materials and expand the crafting system too.

You can buy Valheim with Linux support on Steam.

Article taken from GamingOnLinux.com.
25 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
The comments on this article are closed.
15 comments
Page: «2/2
  Go to:

Tchey Feb 4, 2021
I played about 4 hours so far, really liking it.

I have one big issue however, after about 45 minutes, the game has really bad perf. If i simply close and reopen it, very exact same ingame situation, no issue. Memory leak maybe ?

I’m now trying with OpenGL, it seems actually better perf.

Linux Manjaro (Arch) 64bits Xfce
Intel Core i5 4590 (4 x 3,3 GHz)
GeForce GTX 1060 @ 6 Go
Nvidia Drivers
16 Go DIMM DDR3 PC12800
SSD Crucial 480Go
BENQ GL2460 16/9 24" 1920x1080
Icefinity Feb 4, 2021
Quoting: einherjarSo is that more a problem with the Linux version?
I was thinking to try proton, but my character and world does not appear when I switch to proton. So I went back without testing, because I do not want to override my character accidentally.

EDIT: Tried Proton. It is worse , I get about 30-50FPS in Proton. So all HAIL the native version :-)

Might be a Unity version that is known with problems might be some bad decisions the game developers took.

Quoting: TcheyI have one big issue however, after about 45 minutes, the game has really bad perf. If i simply close and reopen it, very exact same ingame situation, no issue. Memory leak maybe ?

I’m now trying with OpenGL, it seems actually better perf.

I know a few years ago around Unity 5 the shaders created some memory problems but they were fixed in Unity 2017.

I suspect some poor decisions from the game devs in regards to performance.
For example when you cut a tree and let's say 3 pieces of wood appears on the floor, a bad decision would be to create 3 pieces of wood , move them to that location and when the player takes them to destroy them.
A good decision would be to pool objects when possible.
Ex: You start the game 3 pieces of wood are created at start, invisible , and when you cut a tree those 3 already created objects at start move to the player/tree location they turn visible , player takes them , they turn invisible and when the player cuts another tree they repeat the process (moving them to player/tree position -> turn visible -> turn invisible) hence no performance problem since they don't create aditional objects just reusing the same ones.

Another problem would be if objects use physics/rigidbodys and they dont turn off the rigidbody/kinematic when going futher away thus using physics to infinity even when player has left that area a long time ago.

Could be problems with the occlusion culling if they chose the built-in feature by unity which calculates each frame if a object should be visible or invisible based on player location.

Could be some other garbage creating method (even UI). Unity is pretty bad when it comes to clearing the collected garbage creating decent spikes in performance , but they did improve it recently.

But this are all speculations and I can't say if I don't see the project files of the game.
samurro Feb 6, 2021
How does coop work? Can you host a game or do you need to host a true server?
drlamb Feb 7, 2021
I've so far played 11 hours of this game and I haven't ventured out of the starting area yet. As I've got a group of people interested in playing I've set up a dedicated server so that it's not dependent on whoever happens to be online. The next step is putting the dedicated server into a container using this as the base image. Steamcmd is 32bit and thus requires 32bit libs to be installed on the host.

If anyone is curious, here's the systemd service unit I'm using for my server as of right now. The systemd unit doesn't take updating the game server into account yet but that could be added with a call to steamcmd in an 'ExecStartPre' directive.

  • Setup a user 'steam' with the home /home/steam to run steamcmd
  • The game server is downloaded to steam's homedir


 
[Unit]
Description=Valheim Dedicated Server
Wants=network-online.target
After=network-online.target

[Service]
User=steam
Environment="LD_LIBRARY_PATH=/home/steam/valheim/linux64:$LD_LIBRARY_PATH"
Environment="SteamAppId=892970"
ExecStart=/home/steam/valheim/valheim_server.x86_64 -name "YOUR_SERVER_NAME" -port 2456 -world "YOUR_WORLD" -password "YOUR_PASS" -public 1
ExecStartPre=/usr/games/steamcmd +login anonymous +force_install_dir /home/steam/valheim +app_update 896660 validate +quit
Restart=on-failure
KillSignal=SIGINT

[Install]
WantedBy=multi-user.target



Last edited by drlamb on 25 February 2021 at 4:31 pm UTC
beko Feb 8, 2021
Quoting: drlambI've so far played 11 hours of this game and I haven't ventured out of the starting area yet. As I've got a group of people interested in playing I've set up a dedicated server so that it's not dependent on whoever happens to be online. The next step is putting the dedicated server into a container using this as the base image. Steamcmd is 32bit and thus requires 32bit libs to be installed on the host.

If anyone is curious, here's the systemd service unit I'm using for my server as of right now. The systemd unit doesn't take updating the game server into account yet but that could be added with a call to steamcmd in an 'ExecStartPre' directive.

  • Setup a user 'steam' with the home /home/steam to run steamcmd
  • The game server is downloaded to steam's homedir


 
[Unit]
Description=Valheim Dedicated Server

[Service]
User=steam
Environment="LD_LIBRARY_PATH=/home/steam/valheim/linux64:$LD_LIBRARY_PATH"
Environment="SteamAppId=892970"
ExecStart=/home/steam/valheim/valheim_server.x86_64 -name "YOUR_SERVER_NAME" -port 2456 -world "YOUR WORLD" -password "YOUR_PASSWORD" -public 1 > /dev/null
Restart=on-failure

[Install]
Wants=network-online.target
After=network-online.target
WantedBy=multi-user.target

This won't save your world data when the server is stopped because it only does so with a SIGINT (not a SIGKILL or SIGTERM). For this there was this weird echo hack but that no longer works as well. Use this in [Service] to improve this: KillSignal=SIGINT

(and mebbe remove that /dev/null - you want logs in case things break )
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.