Base Building DayZ 1.2 Released

So when you put your old server_monitor.sqf back in, the server loads and you can join? Sorry, I don't mean to sound like I'm asking silly questions, I'm just confused why that one file alone would cause that problem. Have you checked your RPT log for errors? Usually it's pretty helpful.


I am pretty close to getting this operational, but can't join the server and eventually get kicked for a scripts restriction 90. What's weird is the message in the RPT: ERROR: Cannot Sync Character [SFU] Constrictor as no characterID

I was wondering if you could look at my RPT and server_monitor.sql and see where I might be messed up? I have looked at it too long.
RPT: http://pastebin.com/hFCqRUv1SM: http://pastebin.com/DMn0nRmi

Thanks!
 
I am pretty close to getting this operational, but can't join the server and eventually get kicked for a scripts restriction 90. What's weird is the message in the RPT: ERROR: Cannot Sync Character [SFU] Constrictor as no characterID

I was wondering if you could look at my RPT and server_monitor.sql and see where I might be messed up? I have looked at it too long.
RPT: http://pastebin.com/hFCqRUv1SM: http://pastebin.com/DMn0nRmi

Thanks!

I wouldn't worry too much about the 'cannot sync character', that shows up sometimes and other times it doesn't, so far I've never actually had a problem with it not syncing even if it says that on login, when you really want to worry is if it happens on log out.

The RPT looks fine, save for "Ping Pong" spamming it up, which could perhaps be coming from a script (usually custom debug monitor) called in the wrong place.

If you're getting kicked for a script restriction, that's the most likely cause of why you can't get on the server. Are you getting on, moving around then being kicked? Or is it just hanging for ages then eventually coming up and saying you were kicked? If the latter, then that's the problem and you need to check the relevant .log for what is kicking you. :)
 
I wouldn't worry too much about the 'cannot sync character', that shows up sometimes and other times it doesn't, so far I've never actually had a problem with it not syncing even if it says that on login, when you really want to worry is if it happens on log out.

The RPT looks fine, save for "Ping Pong" spamming it up, which could perhaps be coming from a script (usually custom debug monitor) called in the wrong place.

If you're getting kicked for a script restriction, that's the most likely cause of why you can't get on the server. Are you getting on, moving around then being kicked? Or is it just hanging for ages then eventually coming up and saying you were kicked? If the latter, then that's the problem and you need to check the relevant .log for what is kicking you. :)


I don't have a custom monitor (yet at least), but I never actually get on. It eventually just kicks and is for restriction 90 but the message in the scripts.log doesn't match lines around 90 in scripts.txt (I will go back through the filters just in case) Just wanted to make sure the code in my monitor was right; I changed the code for the M240s on AN2s and wasn't sure if that would work and whether it might be the problem, but I didn't see an error related to it.
 
Oh, it may be your refuel script actually. I can't remember if you added that originally before or after we discussed merged mission files.

If you upload your scripts.log and your scripts.txt I can take a look. It's most likely something to do with the weapons you've added to the aircraft. Really I would highly recommend only ever adding one script at a time, get that one working and then do another. That way you know which script is causing problems.
 
I usually do one script at a time too, but since I had all this working in 1.8, you had worked out the 1.8.0.3 files and the server monitor, and most of my changes were to the self-actions file I thought I would try to make a go of it. I will pull the vehicle weapons and see if the server comes up, try to modify the scripts filter for the kick, and if not upload the log here. I have some players on right now so i will replace the files when they are through.
 
I usually do one script at a time too, but since I had all this working in 1.8, you had worked out the 1.8.0.3 files and the server monitor, and most of my changes were to the self-actions file I thought I would try to make a go of it. I will pull the vehicle weapons and see if the server comes up, try to modify the scripts filter for the kick, and if not upload the log here. I have some players on right now so i will replace the files when they are through.


Well I have gotten the game to load, but the tents have appeared to be all over the place where they are loaded and the keypads, when operated, give the following error: "Resource Keypadgate not found"
 
Well I have gotten the game to load, but the tents have appeared to be all over the place where they are loaded and the keypads, when operated, give the following error: "Resource Keypadgate not found"


When you say tents are all over the place, what do you mean sorry?
If it can't find the keypadgate the file may be missing or be in the wrong place.
 
The tents are not lined up where there were originally placed on the ground, they are scattered all over. I assume that is from the collide logic not allowing the tents to be placed from the database into the game as they were originally set. When I reverted to 1.8 they were back to were they should be. I will chase down the keypadgate file and verify that it exists and in the right place.

I think I am going to have to rebuild my server_monitor file. Can you line up the exact steps for building one that works with 1.8.0.3 and base building, with the tent fix (if needed), as there have been a lot of back and forth conversations on different fixes?

Here is my vanilla server_monitor (DayZ.ST) that I was thinking I would need to use as a base: http://pastebin.com/8S1tuZPg
 
Ah ok, that's most likely because the server_monitor.sqf you're using isn't the proper 1.8.0.3 file. The one you're using appears to be a 0.2 version which had bugs in it for object placement on restart.

You should get the clean official 1.8.0.3 file from here, then apply the tent fix in my sig before adding base building stuff. I did wonder why you were using an out dated file when I looked at it the other day, but assumed you had a good reason for it haha.
 
Ah ok, that's most likely because the server_monitor.sqf you're using isn't the proper 1.8.0.3 file. The one you're using appears to be a 0.2 version which had bugs in it for object placement on restart.

You should get the clean official 1.8.0.3 file from here, then apply the tent fix in my sig before adding base building stuff. I did wonder why you were using an out dated file when I looked at it the other day, but assumed you had a good reason for it haha.


OK .. thank you for setting my head straight .. getting dizzy with all of this LOL!!
 
Ah ok, that's most likely because the server_monitor.sqf you're using isn't the proper 1.8.0.3 file. The one you're using appears to be a 0.2 version which had bugs in it for object placement on restart.

You should get the clean official 1.8.0.3 file from here, then apply the tent fix in my sig before adding base building stuff. I did wonder why you were using an out dated file when I looked at it the other day, but assumed you had a good reason for it haha.

I noticed this line is missing from the server_monitor, but the file is present in the base building files, and previous versions of the server_monitor I have. Is it needed?
[]execVM "\z\addons\dayz_server\system\instaaction.sqf";
 
The file isn't part of base building. I'm not actually sure what that file is for, I've seen it in a few people's files, but it's never been in any of my server files at all. I don't think it's required, since that file is the official DayZ 1.8.0.3 file and if they don't include it, then it doesn't need included.
 
The file isn't part of base building. I'm not actually sure what that file is for, I've seen it in a few people's files, but it's never been in any of my server files at all. I don't think it's required, since that file is the official DayZ 1.8.0.3 file and if they don't include it, then it doesn't need included.

Well the game loads, and tents look ok, but none of the editor-placed objects I have in the database are present, so something isn't right. I have rebuilt the server monitor to double check. Could you look at my file one more time?
http://pastebin.com/dRaPn85F
 
Server_monitor looks fine, it's practically identical to mine. Possibly a 'safeobjects' problem. In your mission file, open dayz_code\init\variables.sqf and check to make sure it has a full list of safeobjects defined.
 
I have this line:
SafeObjects = ["Land_Fire_DZ","Land_Fire_barrel","TentStorage", "Hedgehog_DZ", "Sandbag1_DZ", "TrapBear", "Wire_cat1", "StashSmall", "StashMedium", "Grave", "Concrete_Wall_EP1", "Infostand_2_EP1", "WarfareBDepot", "Base_WarfareBBarrier10xTall", "WarfareBCamp", "Base_WarfareBBarrier10x", "Land_fortified_nest_big", "Land_Fort_Watchtower", "Land_fort_rampart_EP1", "Land_HBarrier_large", "Land_fortified_nest_small", "Land_BagFenceRound", "Land_fort_bagfence_long", "Land_Misc_Cargo2E", "Misc_Cargo1Bo_military", "Ins_WarfareBContructionSite", "Land_pumpa", "Land_CncBlock", "Hhedgehog_concrete", "Misc_cargo_cont_small_EP1", "Land_prebehlavka", "Fence_corrugated_plate", "ZavoraAnim", "Land_tent_east", "Land_CamoNetB_EAST", "Land_CamoNetB_NATO", "Land_CamoNetVar_EAST", "Land_CamoNetVar_NATO", "Land_CamoNet_EAST", "Land_CamoNet_NATO", "Fence_Ind_long", "Fort_RazorWire", "Land_Ind_TankSmall", "Fort_Barricade", "FlagCarrierPOWMIA_EP1", "HeliH", "Fence_Ind"];

The objects that aren't loading into the game are from the building and instance_building database tables .. they were added via a map editor and the biedi file was converted to SQL inserts.
 
Ah sorry, when you said buildings, I assumed you meant base building buildings.
Chances are that your mission files weren't built with database building calls in them. Can't recall if this is all that's needed for that or not but try doing this.

In server_monitor.sqf find
Code:
if (isServer and isNil "sm_done") then {

Then add
Code:
                        //Send the key
        _key = format["CHILD:999:select b.class_name, ib.worldspace from instance_building ib join building b on ib.building_id = b.id where ib.instance_id = ?:[%1]:", dayZ_instance];
        _data = "HiveEXT" callExtension _key;
 
        diag_log("SERVER: Fetching buildings for instance " + str(dayZ_instance));
 
        //Process result
        _result = call compile format ["%1", _data];
        _status = _result select 0;
 
        _bldList = [];
        _bldCount = 0;
        if (_status == "CustomStreamStart") then {
            _val = _result select 1;
            for "_i" from 1 to _val do {
                _data = "HiveEXT" callExtension _key;
                _result = call compile format ["%1",_data];
 
                _pos = call compile (_result select 1);
                _dir = _pos select 0;
                _pos = _pos select 1;
 
                _building = createVehicle [_result select 0, _pos, [], 0, "CAN_COLLIDE"];
                _building setDir _dir;
                _bldCount = _bldCount + 1;
            };
            diag_log ("SERVER: Spawned " + str(_bldCount) + " buildings!");
        };

The new file wasn't built with the database building setup included.
 
Sooo...

I put this code in from a vanilla copy of the server_monitor I got from DayZ.ST
Code:
        private ["_key","_data","_result","_status","_buildingArray","_bldCount","_val","_countr","_idKey","_type","_ownerID","_worldspace","_dir","_wsDone","_inventory","_hitPoints","_squadID","_combination","_damage","_object","_classname","_i","_requirements","_isDestructable","_objWpnTypes","_objWpnQty","_isOK","_block","_hiveResponse","_objectArray","_objectCount"];
       
    //Send the key
    _key = format["CHILD:999:select payload, loop_interval, start_delay from message where instance_id = ?:[%1]:", dayZ_instance];
    _data = "HiveEXT" callExtension _key;
 
    diag_log("SERVER: Fetching messages...");
 
    //Process result
    _result = call compile format ["%1", _data];
    _status = _result select 0;
 
    msgList = [];
    _msgCount = 0;
    if (_status == "CustomStreamStart") then {
        _val = _result select 1;
        for "_i" from 1 to _val do {
            _data = "HiveEXT" callExtension _key;
            _result = call compile format ["%1",_data];
 
            _status = _result select 0;
            msgList set [count msgList, _result];
            _msgCount = _msgCount + 1;
        };
        diag_log ("SERVER: Added " + str(_msgCount) + " messages!");
    };
 
    //Send the key
    _key = format["CHILD:999:select b.class_name, ib.worldspace from instance_building ib join building b on ib.building_id = b.id where ib.instance_id = ?:[%1]:", dayZ_instance];
    _data = "HiveEXT" callExtension _key;
 
    diag_log("SERVER: Fetching buildings for instance " + str(dayZ_instance));
 
    //Process result
    _result = call compile format ["%1", _data];
    _status = _result select 0;
 
    _bldList = [];
    _bldCount = 0;
    if (_status == "CustomStreamStart") then {
        _val = _result select 1;
        for "_i" from 1 to _val do {
            _data = "HiveEXT" callExtension _key;
            _result = call compile format ["%1",_data];
 
            _pos = call compile (_result select 1);
            _dir = _pos select 0;
            _pos = _pos select 1;
 
            _building = createVehicle [_result select 0, _pos, [], 0, "CAN_COLLIDE"];
            _building setDir _dir;
            _bldCount = _bldCount + 1;
        };
        diag_log ("SERVER: Spawned " + str(_bldCount) + " buildings!");
    };

And all is well !! I think everything is now working! Thank so much for all your help, advise, and keen eyes! I am getting better at this, and hopefully at some point I'll be at your level Rosska!
 
Back
Top