DayZ Mod 1.8.9 Linux server

Discussion in 'Support' started by Shuter165, Oct 9, 2017.

  1. Shuter165

    Shuter165 New Member

    Joined:
    Oct 9, 2017
    Messages:
    2
    Likes Received:
    0
    How to start DayZ Mod 1.8.9 Linux server (centos 7)
     
  2. ShootingBlanks

    ShootingBlanks OpenDayZ Guru!

    Joined:
    Mar 31, 2013
    Messages:
    2,421
    Likes Received:
    336
    https://github.com/denisio/Dayz-Linux-Server
    You would have to update the code, its at 1.8.0.3 currently. Not impossible, but with all the changes in 1.8.9 its probably going to be difficult. I can go in depth in the procedure if you want to try it.
    Easier to use a windows VPS. I have one thats cheap and works.
     
  3. Shuter165

    Shuter165 New Member

    Joined:
    Oct 9, 2017
    Messages:
    2
    Likes Received:
    0
    Still, Linux is interested, someone has already launched the server dayz on Linux, dayzila.ru project ... That would have helped
     
  4. ShootingBlanks

    ShootingBlanks OpenDayZ Guru!

    Joined:
    Mar 31, 2013
    Messages:
    2,421
    Likes Received:
    336
    In normal dayz there are database reads and writes. Linux replaces these DB writes with writes to the log file. The log file is constantly parsed by the writer.pl (perl) file which takes the data and inserts it into the database.
    I am not 100% sure at the moment but I believe the reads are done in the same fashion with the retrieved data being written into a 'cache' file that is 'included' into the dayz mod.
    In the file i linked, denisio has replaced each call to the readwrite function with a log write. All calls are in the dayz_server.pbo.

    I think it would be easier to rewrite the actual readwrite function to do all the log writes. This would make the code easier to update as all reads and writes would not need to be edited, just the readwrite function.

    Examples. The dayz version has the dayzserver.pbo compiled so i am using the epoch for these examples.

    This is from the NORMAL serverfunctions.sqf file and you can see that it takes the 'child' call and just passes that to the server_hivewrite function.
    Code:
    dayz_recordLogin = {
        private ["_key","_status","_name"];
        _key = format["CHILD:103:%1:%2:%3:",_this select 0,_this select 1,_this select 2];
        _key call server_hiveWrite;
    
    Here is that same code in LINUX. It takes the same info but writes it to the log.
    Code:
    dayz_recordLogin = {
        private["_key"];
        diag_log format["CHILD:103:%1:%2:%3:",_this select 0,_this select 1,_this select 2];
    };
    So instead of replacing every hivewrite with a diag_log, you could just rewrite the hivewrite function.
     

Share This Page