Base Building DayZ 1.2 Released

update, my friend tried joining and he was kicked for script restriction #20
198.15.113.90:2962
*i was kicked for the same thing. it is finally going further than before. I let it sit at the load screen overnight last night and it stayed at the load screen I mentioned so the files you had me change did something.
update: with the original script.txt i am able to log in.
update 2: I keep getting kicked for create vehicle restriction #71 after i edited the script.txt again.

I don't get notified if you edit your post after I've already replied to the thread. :p
The create vehicle restriction is probably because you need to add the buildings to the createvehicle.txt filters. I'm not sure if you're running the latest BE 1.8.0.1 filters or not and every server host seems to have slightly varying filters so numbers don't mean a huge amount between different servers. You'll have to check the createvehicle.log file and see what it's kicking you for.
 
I don't get notified if you edit your post after I've already replied to the thread. :p
The create vehicle restriction is probably because you need to add the buildings to the createvehicle.txt filters. I'm not sure if you're running the latest BE 1.8.0.1 filters or not and every server host seems to have slightly varying filters so numbers don't mean a huge amount between different servers. You'll have to check the createvehicle.log file and see what it's kicking you for.

sorry, ok, it seems i'm only getting kicked for the land_fort_watchtower so far, that is the #71 kick. I'm still new so i have no clue how to fix it if you don't mind helping me a bit more.
 
sorry, ok, it seems i'm only getting kicked for the land_fort_watchtower so far, that is the #71 kick. I'm still new so i have no clue how to fix it if you don't mind helping me a bit more.

In your createvehicle.txt there should be a line starting
Code:
5 "Land_"
At the end of that line add
Code:
!="Land_fort_bagfence_long" !="Land_BagFenceRound" !="Land_fortified_nest_big" !="Land_Fort_Watchtower" !="Land_fort_rampart_EP1" !="Land_HBarrier_large" !="Land_fortified_nest_small" !="Land_Misc_Cargo2E" !="Land_pumpa" !="Land_CncBlock" !="Land_prebehlavka" !="Land_tent_east" !="Land_CamoNetB_EAST" !="Land_CamoNetB_NATO" !="Land_CamoNetVar_EAST" !="Land_CamoNetVar_NATO" !="Land_CamoNet_EAST" !="Land_CamoNet_NATO"

You will probably also need to find
Code:
5 "B_"
And add
Code:
!"Land_CamoNetB_EAST" !"Land_CamoNetB_NATO"

That's all the items you can build so it wont kick when you try to build them. As I said, the numbers are pretty useless without the actual files you're using since my files wont match yours exactly.
 
Building floating Bug is still there in 1.8.0.2 I will check my files again. Thanks for the Fix-Link

Ok, well I can't seem to replicate the problem with buildings floating for some reason. Also, pastebin has eventually come back online but the file Seaweeduk has posted there is an old server_monitor.sqf, it's not using the 1.8 onwards code so I don't understand what that's all about. Hopefully he'll notice this and post his solution here.
 
No, if it's not listed don't create it. It may be listed as
Code:
1 "Land_"
Though it seems strange it would kick you for that, since 5 means kick and 1 means log.

I mean there is no "Land_" at all only mention of land_ is in
Code:
!="Land_Fire_DZ"
but there is a "B_"
 
Ok, well add the two I mentioned for that one then and ignore the land_ exceptions.

With the 1.8 filters, I didn't actually have to add anything to createvehicle.txt other than the B_ variants so I'm not sure what the kick for the other ones is coming from as I don't have your filters and logs. Check the createvehicle.log and compare it to your createvehicle.txt to see if you can find where it's talking about. The #number is not usually accurate, depending on how many commented out lines you have it's sometimes between 2 and 14 lines further down the page. There should always be something that it resembles though.
 
Found it, 5 "Fort_" changed it to 1. thank you guys for all your help. I really appreciate the time you took to help me.
update: I was kicked once the construction was finished so I had to change
Code:
5 !"USEC_" !"NORRN_" !"hit_" !=BIS_greetedPeople !=actionSet !=agentObjectCamps !=armed !=banditKills...
to
Code:
1 !"USEC_" !"NORRN_" !"hit_" !=BIS_greetedPeople !=actionSet !=agentObjectCamps !=armed !=banditKills
in setvariables.txt. Is there a better way of doing it or is that fine?
 
Found it, 5 "Fort_" changed it to 1. thank you guys for all your help. I really appreciate the time you took to help me.
update: I was kicked once the construction was finished so I had to change
Code:
5 !"USEC_" !"NORRN_" !"hit_" !=BIS_greetedPeople !=actionSet !=agentObjectCamps !=armed !=banditKills...
to
Code:
1 !"USEC_" !"NORRN_" !"hit_" !=BIS_greetedPeople !=actionSet !=agentObjectCamps !=armed !=banditKills
in setvariables.txt. Is there a better way of doing it or is that fine?


Ah cool, that makes sense. I obviously haven't built one of them yet then as I don't have that exception in place haha. I'll have to play around and add those in then, thanks for pointing that out, still getting used to the new 1.8 filters.

Erm, there will be an exception you can add, but I'm not too sure what it is off the top of my head. When you get the kick, check the setvariables.log to see what it says it's kicking you for again. I haven't had any kicks for that, though I think I already have that set to 1 for another script because none of the exceptions were working properly.
 
this is what popped up in my log
Code:
09.10.2013 17:15:51: Ranzen (72.48.62.136:2964) 08ad1c47fc9435b6d31ddead6219938d - #22 "characterid" = "12" 3:35 Land_Fort_Watchtower
09.10.2013 17:15:51: Ranzen (72.48.62.136:2964) 08ad1c47fc9435b6d31ddead6219938d - #0 "startcombattimer" = 1 3:8 Sniper1_DZ
 
I'm not at my pc anymore so can't test, but you could try adding !"\"startcombattimer\" =1" to the end of the line.
 
Now I am getting
Code:
09.10.2013 18:45:25: Ranzen (72.48.62.136:2964) 08ad1c47fc9435b6d31ddead6219938d - #0 "dayz_updateNearbyObjects" = [[6959.21,14984,0.0015564],true]
when I tried to operate the gate. I looked for any form of updatevariable in the publicvariable.txt but i couldn't find anything so I tried changing the "server_updateNearbyObject" from 5 to 1 in the publicvariableleval.txt but that didn't work.
 
Ok, another Problem =/
With the Patch of Seaweeduk my tents are not getting updated.

I'm a tried to make it with the Tent-Fix, but I'm a bit confused with the server_monitor.sqf:

This is the Tent-Fix Code:

Code:
            if (_damage < 1) then { // create object
                diag_log("Spawned: " + str(_ObjectID) + " " + _class);
       
                // for tents: non colliding position
                _entity = createVehicle [_class, _point, [], 0,
                    if (_class=="TentStorage") then {"NONE"} else {"CAN_COLLIDE"}
                ];
                _entity setVariable ["lastUpdate",time];
                // Don't set objects for deployables to ensure proper inventory updates
                if (_CharacterID == "0") then {
                    _entity setVariable ["ObjectID", str(_ObjectID), true];
                } else {
                    _entity setVariable ["ObjectUID", str(_ObjectID), true];
                };
                _entity setVariable ["CharacterID", _CharacterID, true];
 
                if (_class == "TentStorage" || _class == "CamoNet_DZ") then {
                    _entity addMPEventHandler ["MPKilled",{_this call vehicle_handleServerKilled;}];
                };
       
                _entity setDamage _damage;

But in the patched server_monitor.sqf there is a bit different code:
Code:
                        if (_damage < 1) then {
 
                                //diag_log format["OBJ: %1 - %2,%3,%4,%5,%6,%7,%8", _idKey,_type,_ownerID,_worldspace,_inventory,_hitPoints,_fuel,_damage];
 
 
 
                                //Create it
 
                                _object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];
 
                                _object setVariable ["lastUpdate",time];
 
                                _object setVariable ["ObjectID", _idKey, true];
 
                                _object setVariable ["CharacterID", _ownerID, true];
 
 
 
                                if (_object isKindOf "TentStorage" || _object isKindOf "CamoNet_DZ" || _object isKindOf "Land_A_tent" || (typeOf(_object) in allbuildables_class) ) then {
 
                                        _pos set [2,0];
 
                                        _object setpos _pos;
 
                                        if (_object isKindOf "TentStorage" || _object isKindOf "CamoNet_DZ" || _object isKindOf "Land_A_tent"  ) then {
 
                                        _object addMPEventHandler ["MPKilled",{_this call vehicle_handleServerKilled;}];
 
                                        };
 
                                };

So my Question is, is there another way now to get this fixed or should i just replace the patched Code with the Tent-Fix anyway?

Thanks and Greetings
 
Now I am getting
Code:
09.10.2013 18:45:25: Ranzen (72.48.62.136:2964) 08ad1c47fc9435b6d31ddead6219938d - #0 "dayz_updateNearbyObjects" = [[6959.21,14984,0.0015564],true]
when I tried to operate the gate. I looked for any form of updatevariable in the publicvariable.txt but i couldn't find anything so I tried changing the "server_updateNearbyObject" from 5 to 1 in the publicvariableleval.txt but that didn't work.

Try adding
Code:
!"\"dayz_updateNearbyObjects\""
to the first or second line.

Ok, another Problem =/
With the Patch of Seaweeduk my tents are not getting updated.

I'm a tried to make it with the Tent-Fix, but I'm a bit confused with the server_monitor.sqf:

This is the Tent-Fix Code:

Code:
            if (_damage < 1) then { // create object
                diag_log("Spawned: " + str(_ObjectID) + " " + _class);
     
                // for tents: non colliding position
                _entity = createVehicle [_class, _point, [], 0,
                    if (_class=="TentStorage") then {"NONE"} else {"CAN_COLLIDE"}
                ];
                _entity setVariable ["lastUpdate",time];
                // Don't set objects for deployables to ensure proper inventory updates
                if (_CharacterID == "0") then {
                    _entity setVariable ["ObjectID", str(_ObjectID), true];
                } else {
                    _entity setVariable ["ObjectUID", str(_ObjectID), true];
                };
                _entity setVariable ["CharacterID", _CharacterID, true];
 
                if (_class == "TentStorage" || _class == "CamoNet_DZ") then {
                    _entity addMPEventHandler ["MPKilled",{_this call vehicle_handleServerKilled;}];
                };
     
                _entity setDamage _damage;

But in the patched server_monitor.sqf there is a bit different code:
Code:
                        if (_damage < 1) then {
 
                                //diag_log format["OBJ: %1 - %2,%3,%4,%5,%6,%7,%8", _idKey,_type,_ownerID,_worldspace,_inventory,_hitPoints,_fuel,_damage];
 
 
 
                                //Create it
 
                                _object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];
 
                                _object setVariable ["lastUpdate",time];
 
                                _object setVariable ["ObjectID", _idKey, true];
 
                                _object setVariable ["CharacterID", _ownerID, true];
 
 
 
                                if (_object isKindOf "TentStorage" || _object isKindOf "CamoNet_DZ" || _object isKindOf "Land_A_tent" || (typeOf(_object) in allbuildables_class) ) then {
 
                                        _pos set [2,0];
 
                                        _object setpos _pos;
 
                                        if (_object isKindOf "TentStorage" || _object isKindOf "CamoNet_DZ" || _object isKindOf "Land_A_tent"  ) then {
 
                                        _object addMPEventHandler ["MPKilled",{_this call vehicle_handleServerKilled;}];
 
                                        };
 
                                };

So my Question is, is there another way now to get this fixed or should i just replace the patched Code with the Tent-Fix anyway?

Thanks and Greetings

Yeah as I said, his file isn't the 1.8 onwards version, so I really don't know right now man as I'm not even sure why he's using that file.
 
OK Got this working now!

server_monitor.sqf:

search for:
Code:
waitUntil{initialized}; //means all the functions are now defined

add after:
Code:
// ### BASE BUILDING 1.2 ### SERVER SIDE BUILD ARRAYS - START
call build_baseBuilding_arrays;
// ### BASE BUILDING 1.2 ### SERVER SIDE BUILD ARRAYS - END

search for:
Code:
_object setDamage _damage;

add after:
Code:
                // ##### BASE BUILDING 1.2 Server Side ##### - START
// This sets objects to appear properly once server restarts
        if ((_object isKindOf "Static") && !(_object isKindOf "TentStorage")) then {
            _object setpos [(getposATL _object select 0),(getposATL _object select 1), 0];
        };
        //Set Variable
        if (_object isKindOf "Infostand_2_EP1" && !(_object isKindOf "Infostand_1_EP1")) then {
            _object setVariable ["ObjectUID", _worldspace call dayz_objectUID2, true];
            _object enableSimulation false;
        };
 
 
                // Set whether or not buildable is destructable
        if (typeOf(_object) in allbuildables_class) then {
            diag_log ("SERVER: in allbuildables_class:" + typeOf(_object) + " !");
            for "_i" from 0 to ((count allbuildables) - 1) do
            {
                _classname = (allbuildables select _i) select _i - _i + 1;
                _result = [_classname,typeOf(_object)] call BIS_fnc_areEqual;
                if (_result) exitWith {
                    _requirements = (allbuildables select _i) select _i - _i + 2;
                    _isDestructable = _requirements select 13;
                    diag_log ("SERVER: " + typeOf(_object) + " _isDestructable = " + str(_isDestructable));
                    if (!_isDestructable) then {
                        diag_log("Spawned: " + typeOf(_object) + " Handle Damage False");
                        _object addEventHandler ["HandleDamage", {false}];
                    };
                    if (typeOf(_object) == "Grave") then {
                        _object setVariable ["isBomb", true];
                    };
                };
            };
            //gateKeypad = _object addaction ["Defuse", "\z\addons\dayz_server\compile\enterCode.sqf"];
        };
// ##### BASE BUILDING 1.2 Server Side ##### - END

Hope this can help. Thanks to rosska85 :)
 
Some short Question: How can i change the radius to operate the gate? I've managed to open the gates, but the walls dont come back when i operate them again.

I want them in a radius arount 10meters so i changed the following lines:
player_build.sqf
//Check if other panels nearby
_panelNearest2 = nearestObjects [player, ["Infostand_2_EP1"], 10;

and in operate_gates.sqf:
_nearestGates = nearestObjects [_lever, ["Hhedgehog_concrete","Concrete_Wall_EP1"], 10;

Hope some of you guys know the answer =)
 
Some short Question: How can i change the radius to operate the gate? I've managed to open the gates, but the walls dont come back when i operate them again.

I want them in a radius arount 10meters so i changed the following lines:
player_build.sqf
//Check if other panels nearby
_panelNearest2 = nearestObjects [player, ["Infostand_2_EP1"], 10;

and in operate_gates.sqf:
_nearestGates = nearestObjects [_lever, ["Hhedgehog_concrete","Concrete_Wall_EP1"], 10;

Hope some of you guys know the answer =)

Can't check the file right now, but I think there is a call in server_updateNearbyObjects.sqf too which has the radius of where to update objects when you operate gates.
 
I wonder what changes Seaweeduk did on his server_monitor, because the compare function of notepad++ is not very helpfull with this one =/

I've got the Tents Inventory working now but the buildings are floating after restart :(
 
I wonder what changes Seaweeduk did on his server_monitor, because the compare function of notepad++ is not very helpfull with this one =/

I've got the Tents Inventory working now but the buildings are floating after restart :(


What's interesting is that even without any custom PBOs installed the buildings from the instance_deployable table are displaying and are floating in the air on 1.8.0.2 (DayZ.ST hosted)
 
Back
Top