LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Want to learn or teach others some of the finer details of Life is Feudal? This section is for the game guides, tutorials and FAQ's.

Nordului
 
Posts: 5
Joined: 20 Apr 2016, 10:18

LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by Nordului » 20 Apr 2016, 10:39

Disclaimer: I did this on my GNU/Linux server running on Debian Jessie x86_64.

I am using LXC container to "virtualize" and isolate 32-bit installation with latest packages (Debian Sid).
Code: Select all
lxc-create -n lif -t download -- -d debian -r sid -a i386
lxc-start -nlif
lxc-attach -nlif

Do preparations as root in the attached container
Code: Select all
apt-get install wine wget xvfb libpng12-0 mysql-server-5.6
# set the root password and save it for later use
useradd -m -d /home/lif -s /bin/bash lif

And then we continue as non-root user
Code: Select all
su - lif
wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
# rm -rf .wine
xvfb-run ./winetricks -q vcrun2015
wget "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz"
tar -xzvf steamcmd_linux.tar.gz
./steamcmd.sh +@sSteamCmdForcePlatformType windows +login anonymous +force_install_dir lif +app_update 320850 validate +quit
cp lif/docs/default_world_config.xml lif/config/world_1.xml
cp lif/docs/config_local.cs lif/
# Edit db password in lif/config_local.cs

Requires X to run properly, so we use Xvfb
Code: Select all
xvfb-run wine lif/ddctd_cm_yo_server.exe "-worldID 1"
Last edited by Nordului on 02 May 2016, 20:59, edited 4 times in total.


Nordului
 
Posts: 5
Joined: 20 Apr 2016, 10:18

Re: LiF:YO dedicated server on Linux (LXC+Wine)

Post by Nordului » 20 Apr 2016, 10:43

Yes, that is all the steps I did. No steps on Wintendo. Database gets initialized by LiF:YO dedicated server when it starts the first time.

Yes, I used standard MySQL 5.6 server that comes with Debian Sid.

You might want to tweak your database server settings, eg. merge relevant changes from MariaDB ini that comes with LiF:YO dedicated server. But you can get LiF:YO server started without doing it.


Nordului
 
Posts: 5
Joined: 20 Apr 2016, 10:18

Re: LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by Nordului » 29 Apr 2016, 19:17

Following steps, needed by 1.1.1.11, have been added in the guide
  • winetricks vcrun2015
  • which needs libpng12
  • and needs to be run under xvfb-run

Old wine configs can cause problems and LiF:YO server fails to start. Then you can repeat the steps from and with rm -rf .wine (currently commented out in steps).
Last edited by Nordului on 01 May 2016, 12:59, edited 1 time in total.


ElMarioVI
 
Posts: 7
Joined: 30 Apr 2016, 14:39

Re: LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by ElMarioVI » 01 May 2016, 12:09

Thanks for this, I go to try it on my ArchLinux Server but without the LXC :D


Nordului
 
Posts: 5
Joined: 20 Apr 2016, 10:18

Re: LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by Nordului » 01 May 2016, 12:54

ElMarioVI wrote:Thanks for this, I go to try it on my ArchLinux Server but without the LXC :D

Do not hesitate to raise a question if you run in troubles. I have tried quite many things and might have some answers.

When I reach a working solution, I start backtracking the changes to get minimal steps for a working solution. LXC helps a lot in this process, as I can just create a new clean container to test my minimalistic steps while still having my working, usually bloated, installation for reference.

Also, as I have my LXC container with 32-bit OS installation, I do not have to fight with 32-bit compatibility in 64-bit OS.


ElMarioVI
 
Posts: 7
Joined: 30 Apr 2016, 14:39

Re: LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by ElMarioVI » 01 May 2016, 13:19

Nordului wrote:
ElMarioVI wrote:Thanks for this, I go to try it on my ArchLinux Server but without the LXC :D

Do not hesitate to raise a question if you run in troubles. I have tried quite many things and might have some answers.

When I reach a working solution, I start backtracking the changes to get minimal steps for a working solution. LXC helps a lot in this process, as I can just create a new clean container to test my minimalistic steps while still having my working, usually bloated, installation for reference.

Also, as I have my LXC container with 32-bit OS installation, I do not have to fight with 32-bit compatibility in 64-bit OS.


I have now my own server running ;) thanks for all


Ledimor
 
Posts: 1
Joined: 29 Sep 2014, 17:12

Re: LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by Ledimor » 17 Jun 2016, 09:00

Hello there,

thanks for this post, but I have an issue when I try to install vcrun2015.

I don't know why but it seem to fail and then when I want to start my lif server, it say that some dll are missing.

I'm working on an ubuntu server 14.04, I've installed with lxc an ubuntu thrusty i386 distrib

there is the message i got when I launch the "xvfb-run ./winetricks -q vcrun2015"

Using winetricks 20160425 - sha1sum: 517722dd3fafe0519391c06d4aa1bc87ca592a12 wi th wine-1.6.2
Executing w_do_call vcrun2015
Executing load_vcrun2015
------------------------------------------------------
Working around wine bug 37781
------------------------------------------------------
------------------------------------------------------
This may fail in non-XP mode, see https://bugs.winehq.org/show_bug.cgi?id=37781
------------------------------------------------------
Using native,builtin override for following DLLs: api-ms-win-crt-conio-l1-1-0 ap i-ms-win-crt-heap-l1-1-0 api-ms-win-crt-locale-l1-1-0 api-ms-win-crt-math-l1-1-0 .dll api-ms-win-crt-runtime-l1-1-0 api-ms-win-crt-stdio-l1-1-0 atl140 msvcp140 m svcr140 ucrtbase vcomp140 vcruntime140
Executing winetricks_early_wine regedit /S C:\windows\Temp\_vcrun2015\override-d ll.reg
Executing wine vc_redist.x86.exe /q
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:ntdll:NtQueryInformationToken QueryInformationToken( ..., TokenElevation, ...) semi-stub
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:ntdll:NtQueryInformationToken QueryInformationToken( ..., TokenElevation, ...) semi-stub
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
fixme:advapi:DecryptFileW (L"C:\\users\\lif\\Temp\\{74d0e5db-b326-4dae-a6b2-445b 9de1836e}\\", 00000000): stub
------------------------------------------------------
Note: command 'wine vc_redist.x86.exe /q' returned status 180. Aborting.
------------------------------------------------------


and then when I try to lauch the lif server :

err:module:import_dll Library MSVCP140.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library VCRUNTIME140.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-runtime-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-math-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-time-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-convert-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-string-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-heap-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-stdio-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-filesystem-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-utility-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-locale-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:import_dll Library api-ms-win-crt-environment-l1-1-0.dll (which is needed by L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\lif\\lif\\ddctd_cm_yo_server.exe" failed, status c0000135
lif@lif:~$ XIO: fatal IO error 2 (No such file or directory) on X server ":99"
after 8 requests (7 known processed) with 0 events remaining.
XIO: fatal IO error 25 (Inappropriate ioctl for device) on X server ":99"
after 673 requests (579 known processed) with 0 events remaining.


I've tried in different distrib but somes of them didn't launch at all.
Debian distrib don't seems to work but I think because my server in an ubuntu server.

If you want more information just tell me.


Fenriswaffles
 
Posts: 1
Joined: 01 Jul 2016, 10:41

Re: LiF:YO 1.1.1.11 dedicated server on Linux (LXC+Wine)

Post by Fenriswaffles » 01 Jul 2016, 10:47

Hey, I managed to get LiF:YO running on Ubuntu 14.04 using wine and xvfb, but I had a question on how to properly shut down the server.

When I start the server its still keeping me on the regular commandline and just sending the output, as such I haven't been able to find a way to properly shut down the server without having to kill the process which I assume is a bad idea.

Any way to send commands to the screen/whatever to interact with the LiF server when using xvfb?

Return to Guides and Tutorials