Origins Server?

seems we all have different things happening with the cleanup.fsm

21:51:50 "DEBUG FPS : 5.09716
_countAllObjM: 743"
Players: 5
_zombies:56
_zombiesA:54
_loot:190
_lootL:66
_dayz_zombiesLocal:0
_dead:30
_numDeadL:28
Animal=0"
21:51:51 "CLEANUP: PERFORMING ITEM CLEANUP: TOTAL 210 LOOT BAGS TIME=13603.4"
21:51:51 "CLEANUP: _itemNumer = 195, _itemNumerP=0, _itemNumerHP=15"
21:51:51 "Animals deleted = 0(Rabbits 0), Animals alive=0"
21:51:51 "At=[]"


Looking at the RPT the server is indeed deleting the loot on my server.

how often the cleanup is running ?
 
Hero kills should have been added with the newest debug that i committed, let me know if its not working. As for zombie kills its not hard to add in if u would like it ill paste the code here later.

As for the FSM, it seems to run everyone second >.<
 
How can I edit the
dayz_1.origins.tavi\config.cfg
dayz_1.origins.tavi\HiveExt.ini
dayz_1.origins.tavi\BattlEye\BEServer.cfg
?
 
I found the bug in server_cleanup.fsm

Code:
        to="cleanup_objects";
          precondition =
/*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
          condition=/*%FSM<CONDITION""">*/"((time - _lastItemCheck) > 65)"/*%FSM</CONDITION""">*/;
          action=/*%FSM<ACTION""">*/"_lastDeadCheck = time;"/*%FSM</ACTION""">*/;

time - _lastitemcheck is the condition but the time value is never set (lastDeadCheck there instead of lastItemCheck) , therefore the right version should be

Code:
        to="cleanup_objects";
          precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
          condition=/*%FSM<CONDITION""">*/"((time - _lastItemCheck) > 65)"/*%FSM</CONDITION""">*/;
          action=/*%FSM<ACTION""">*/"_lastItemCheck = time;"/*%FSM</ACTION""">*/;

other than this there is a missing check for nearby players in the body cleanup part. It will delete zombies even if a player is nearby. Ill test the fix now..
 
I found the bug in server_cleanup.fsm

Code:
        to="cleanup_objects";
          precondition =
/*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
          condition=/*%FSM<CONDITION""">*/"((time - _lastItemCheck) > 65)"/*%FSM</CONDITION""">*/;
          action=/*%FSM<ACTION""">*/"_lastDeadCheck = time;"/*%FSM</ACTION""">*/;

time - _lastitemcheck is the condition but the time value is never set (lastDeadCheck there instead of lastItemCheck) , therefore the right version should be

Code:
        to="cleanup_objects";
          precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
          condition=/*%FSM<CONDITION""">*/"((time - _lastItemCheck) > 65)"/*%FSM</CONDITION""">*/;
          action=/*%FSM<ACTION""">*/"_lastItemCheck = time;"/*%FSM</ACTION""">*/;

other than this there is a missing check for nearby players in the body cleanup part. It will delete zombies even if a player is nearby. Ill test the fix now..

So far i can say it works.

RTP flood is away, server keeps fps
Loot behavior: when in radius of 200m loot isnt deleted, outside 200m loot gets deleted and respawns new if close enough (i doubt 190m) .

Code:
17:13:49 "DEBUG FPS : 15.311 AND "_countAllObjM: 567"Players: 1_zombies:0_zombiesA:0_loot:23_lootL:23_dayz_zombiesLocal:0_dead:0_numDeadL:0Animal=0"
17:16:56 "DEBUG FPS : 46.6472 AND "_countAllObjM: 687"Players: 1_zombies:21_zombiesA:5_loot:83_lootL:23_dayz_zombiesLocal:0_dead:16_numDeadL:0Animal=1"
17:19:58 "DEBUG FPS : 48.4848 AND "_countAllObjM: 687"Players: 1_zombies:21_zombiesA:5_loot:82_lootL:23_dayz_zombiesLocal:0_dead:16_numDeadL:0Animal=1"
17:22:59 "DEBUG FPS : 43.4783 AND "_countAllObjM: 666"Players: 1_zombies:4_zombiesA:4_loot:85_lootL:23_dayz_zombiesLocal:0_dead:0_numDeadL:0Animal=0"
17:26:01 "DEBUG FPS : 48.048 AND "_countAllObjM: 628"Players: 1_zombies:4_zombiesA:4_loot:58_lootL:23_dayz_zombiesLocal:0_dead:0_numDeadL:0Animal=1"
17:29:02 "DEBUG FPS : 47.4777 AND "_countAllObjM: 626"Players: 1_zombies:4_zombiesA:4_loot:58_lootL:23_dayz_zombiesLocal:0_dead:0_numDeadL:0Animal=0"
17:32:01 "DEBUG: Player Sharkking [108966470] added to botPlayers: ["108966470"]"17:32:01 "DEBUG: START _doLoop 0,_isDead=false"
17:32:04 "DEBUG FPS : 45.7143 AND "_countAllObjM: 624"Players: 0_zombies:0_zombiesA:0_loot:64_lootL:64_dayz_zombiesLocal:0_dead:0_numDeadL:0Animal=0"
17:32:41 "DEBUG: END _doLoop 40, _isDead=false"
17:32:41 "DEBUG: Player Sharkking [108966470] removed from botPlayers: []"17:35:06

from the logs i would even say the gravecross is now working (not confimed)

Code:
17:36:59 "CLEANUP: PERFORMING BODY CLEANUP ON BODIES, Time=1380.51"
17:36:59 "Replaced Body (TavianaGuardg14g1)-(19 items, at [22929.3,19469.2,0]), _backpackType="
17:36:59 "Replaced Body (TavianaGuardg14g2)-(4 items, at [22932,19471.1,0]), _backpackType="
17:36:59 "Replaced Body (TavianaGuardg14g3)-(4 items, at [22933.6,19472.7,0]), _backpackType="
17:36:59 "Total Replaced 3 Bodys"
 
Hey sharkking. How exactly would someone go about injecting this code into their database without borking the data within? Is it just as simple as edditing the .fsm file with notepad++ and restart?

Ive been eagerly pressing the refresh button waiting for this fix all day :) Well done matey!
 
i used the fsm editor from bohemia.
here is the code i´m using so far (whole server_cleanup.fsm)

just replace it in the dayz_server.pbo

unpack , rename server_cleanup.fsm, generate new one, paste code from http://pastebin.com/9UdtgUcn and repack the folder. I´m not yet shure about the gracecross and dead zombie/animal "despawning" fix i made. Lott is working so far.
 
I have applied it, but now the debug monitor has changed and is causing lots of player verification problems and "something went wrong" problems
I'm running it fine on my server
not any issue everything works fine.
just turn again on and if its not appearing anymore then it might be the issue.

I'm just saying I'm not having any trouble with this
 
Several have the 'fix' of houses, but no one posted it.
I was testing the following code by several days and (for now) It's working 100%

In dayz_server\compile\verbb_pas_a.sqf

After:
Code:
diag_log ("Zakrivaem Dom: "+ str(_key));
Replace "_key call server_hiveWrite;" with this:
Code:
if (str(_inventoryEnd) != "[[[],[]],[[],[]],[[],[]]]") then {
diag_log ("Zakrivaem Dom: Inventory OK");
_key call server_hiveWrite;
};

It's a dirty code, but works XD

no works !!!
 
Several have the 'fix' of houses, but no one posted it.
I was testing the following code by several days and (for now) It's working 100%

In dayz_server\compile\verbb_pas_a.sqf

After:
Code:
diag_log ("Zakrivaem Dom: "+ str(_key));
Replace "_key call server_hiveWrite;" with this:
Code:
if (str(_inventoryEnd) != "[[[],[]],[[],[]],[[],[]]]") then {
diag_log ("Zakrivaem Dom: Inventory OK");
_key call server_hiveWrite;
};

It's a dirty code, but works XD


Hmm, didnt work for me.. One user had one empty house (in game), he put some more gear in, and that was writed to the hive.
Maybe it was "ok" before he put som more in.. One solution is when the hpuse is empty, do not put anymore inside it, and wait for restart. Then it reads in the inventory from DB again.
 
Got it working but without using your files

ArmA2OA%202013-06-07%2018-06-37-88.jpg


ArmA2OA%202013-06-07%2018-06-31-27.jpg
 
so i guess he is a little kid who cant get the money for a legit cd key... o_O

go and play some tetris... ^^
 
Ok added the new cleanup fsm and also thought I might as well use the new Mission pbo from GitHub as it has some nice fixes since I first installed.

Now I am getting the error "could not find z\addons\dayz_server\init\server_functions.sqf

This file is 100% in that directory and I have repacked into a .pbo.

It seems this file is called in the mission file Compiles.sqf on Line 387

Code:
//Server Only
if (isServer) then {
    call compile preprocessFileLineNumbers "\z\addons\dayz_server\init\server_functions.sqf";
} else {
    eh_localCleanup = {};
};
 
    progressLoadingScreen 0.8;

Any help would be appreciated :)
 
Back
Top