Here's a quick guide how to run SpaceEngineers Dedicated Server on Ubuntu with Wine
- A copy of Space Engineers
- A Windows box
- A Linux box running Ubuntu 14.04 or 14.10 (It'll probably work on other distros, YMMV)
sudo apt-get update
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.6
winetricks -q dotnet40
rm -r ~/.wine
WINEARCH=win32 wine wineboot
There are multiple ways for transfering files, easiets would probably be using SCP, WinSCP works well for that. You'll want to transfer the DedicatedServer.zip file found in
[Steam install directory]\steamapps\common\SpaceEngineers\Tools
Unpack the zip somewhere inside
~/.wine/drive_c/users/$(whoami)/
The easiest way to do this is to just generate them locally and copy them over to the server, this can be done by using the dedicated server tool on your windows box, the tool is located in
[Steam intall directory]\steamapps\common\SpaceEngineers\Tools\DedicatedServer\SpaceEngineersDedicated.exe
- Select the Default profile
- Set up the world
- Save the config
- Start to generate the world.
The files will be stored in
C:\Users\{USERNAME}\AppData\Roaming\SpaceEngineersDedicated\Default
Edit the SpaceEngineers-Dedicated.cfg
and copy it with the Saves
folder to the following directory on your Linux box
~/.wine/drive_c/users/$(whoami)/Application\ Data/SpaceEngineersDedicated
You'll have to change the <LoadWorld>
tag so it point to the correct directory.
If the Save folder is located in
~/.wine/drive_c/users/$(whoami)/Application\ Data/SpaceEngineersDedicated/Saves/Created 2015-03-30 2331
the <LoadWorld>
tag must look like this, where {username}
is the same as $(whoami)
<LoadWorld>C:\Users\{username}\Application Data\SpaceEngineersDedicated\Default\Saves\Created 2015-03-30 2331</LoadWorld>
You still need to use windows paths.
- Go to the directory where you have the dedicated server files
wine SpaceEngineersDedicated.exe -console
- There will be a lot of messages regarding xserver, ignore them
- Errors like
fixme:shell:URL_ParseUrl failed to parse L"System.Core"
are okay, ignore them. - Be sure to run 32bit, wine doesn't like the 64bit one.
- There is a small bug where after stopping the server you will no longer see what you're typing into the console.
- This guide is based on the guide I found over at Keen Software House Forums created by AdamAnt
by following @tvwenger 's post I got the most recent SEdedicatedServer 64bit 1.195 running on Debian 10:
Requirements (older versions did not work for me):
with winetricks:
and ignore all occuring error messages 😄 , especially for dotnet48 there will be many...
copy the common/SpaceEngineersDedicatedServer directory from your Windows machine into the wineprefix
launch once with while beeing in the .../drive_c/.../Steam/steamapps/common/SpaceEngineersDedicatedServer directory !important!
and make sure that enviroment variable WINEPREFIX is set correctly.
/usr/bin/xvfb-run /usr/bin/wine ./DedicatedServer64/SpaceEngineersDedicated.exe
so that
~/.wine/drive_c/users/$(whoami)/Application\ Data/SpaceEngineersDedicated
is created
copy the stuff from your windows machine over to the folder, and launch
/usr/bin/xvfb-run /usr/bin/wine ./DedicatedServer64/SpaceEngineersDedicated.exe -console
after you verified that the enviroment variable WINEPREFIX is set correctly.
With another terminal you can check that cpu usage is ~25% on all cores and that the program starts consuming memory.
A log file with the current date will be created in the Application\ Data/SpaceEngineersDedicated directory.
There will be many error messages from wine, but as long as you get a "game ready" somewhere inside the mess after about 30sec you should be fine.
The only thing I could not get working is terminating the server so that it saves the world automatically when launched with systemctl.
In the systemctl service file I call a bash file, because the windows path with Progamm Files (x86) can't be escaped properly in systemctl.
The bash file (change the cd depending on your wineprefix location):