Running server on linux

Tips, tactics, and general discussion for Evochron Legacy.
Andargor
Ensign
Ensign
Posts: 10
Joined: Fri Apr 29, 2022 12:06 am

Running server on linux

Post by Andargor »

Hello, just got the game and want to set up a server for our group on a linux box. I could use WINE, but I would prefer a native build. I saw this thread: https://www.starwraith.com/forum/viewto ... 27&t=13773

I bought on Steam, so I only see the Windows executable. Is it ok if I copy the No-GUI executable on my linux box and try to run it on WINE?

If there is a linux native build, where can I get it?

And lastly, if anyone has a docker image or similar to make this more painless can you share your Dockerfile?

Thanks.
User avatar
Vice
Administrator
Administrator
Posts: 11560
Joined: Fri Apr 25, 2003 1:38 am

Re: Running server on linux

Post by Vice »

You can certainly try to run it through Wine, but it may not work. It is Windows only. If you'd like to try an experimental Linux build, you can send me an e-mail and I can put something together you can try, but that route may not work either.
StarWraith 3D Games
www.starwraith.com | www.spacecombat.org
3D Space Flight and Combat Simulations
Andargor
Ensign
Ensign
Posts: 10
Joined: Fri Apr 29, 2022 12:06 am

Re: Running server on linux

Post by Andargor »

It seems to work fine, the No GUI version runs at much lower CPU when idle (with identical text8.dat settings for CPU reduction)

For anyone trying to make it work:

- Create a directory somewhere on your linux server that will be Documents under wine (holds executable and saved logs), for me it's /local/evochron, just substitute that for your actual directory in my examples
- From your Steam install directory, under Server, copy EvochronLegacySEServer-No-GUI to /local/evochron
- chmod a+rx /local/evochron/EvochronLegacySEServer-No-GUI/EvochronLegacySEServer.exe
- edit /local/evochron/EvochronLegacySEServer-No-GUI/media/text8.dat to taste
- create a bash script (NOT in /local/evochron, for me it's ~/evochron) with this in it (remember to change /local/evochron to where you put your stuff):

Code: Select all

docker stop evochron
docker rm evochron
docker pull scottyhardy/docker-wine
docker run --name evochron -d -t \
	-p 29888-29900:29888-29900/udp \
	-p 29888-29900:29888-29900/tcp \
	--restart unless-stopped \
	-v /local/evochron/:/home/wineuser/Documents/ \
	scottyhardy/docker-wine wine "/home/wineuser/Documents/EvochronLegacySEServer-No-GUI/EvochronLegacySEServer.exe"

- Run the script, it'll run the container in background ("docker stop evochron" to stop it) and should restart in on reboot if it was running before
- Adjust your firewall for the incoming connections, I used a wide range just in case because I saw that the server or client could increment the port number

HTH