Intensive commands are processed on the client only, as opposed to
twice. an array of objects, their corresponding UID and ID are sent to
the server. Sending the objects as an array, despite the size the array
can reach, should be better than the way this was set up before.
Needs testing on a full server however.
New variables: DZE_groupManagement = false; //Enable or disable group
management. Enabled by default
DZE_MoneyStorageClasses = []; // If using a Single currency system
(Z_SingleCurrency = true;), this is an array of object classes players
can store coins in
if Z_SingleCurrency = true; the hive is now set up to handle coin
updates on players, characters, and objects.
if DZE_groupManagement = true; the hive is now set up to save groups
group and coin variables are set in player_monitor.fsm, for
vehicles/objects it's set in the server_monitor.sqf file for objects in
the DZE_MoneyStorageClasses array
Also, this commit includes a change to the way the hive spawns in
vehicles. vehicles are now created at [0,0,0] and moved using setPosATL
to their saved position. Thanks for the tip @ndavalos @eraser1
Requires DLL Published in this commit as well as a database update.
Execute the added SQL in the 1.0.6_Updates.sql on your database.
Use Hive child 204 to update the new column
_key = format["CHILD:204:%1:%2:%3:", (getPlayerUID player),
dayZ_instance, [Array of playerUIDs of group members]];
_key call server_hiveWrite;
I wasn't getting errors without if (gear_done) then {}; surrounding the
uiSleeps, so I don't quite trust the engine was executing them, I also
question the ability of uisleep to handle single frame precision (but I
haven't tested anything regarding this yet).
This is the code from 1.0.5.2 before it became 1.0.6, it contains the
fix for backpack wipes in 1.0.5.1. I lightly tested it with 1.0.6 but it
will need more testing before release.
In the initialize section of the fsm r_player_unconscious and
r_player_timeout return their default values (false and 0). Also, the
Vanilla server-side combat check doesn't appear to work, or it doesn't
work with the antihack disabled (I haven't tested with it enabled).
New variable inCombat is set more quickly than the combatTimeout
variable
DebugBox_DZ appears to cause issues when changing clothes. I haven't
died changing clothes ~100 times since its removal. It also solves the
issue of extreme exposure (brightness) after changing clothes
Note: CombatTimeout variable resets after changing clothes
This commit puts the conditions in which a player is put into combat
more in line with 1.0.5.1. Putting the player in combat for having
another player nearby will ruin building for players that are part of a
group. Putting the player into combat if zombies are nearby would make
building way too frustrating (especially if building on an elevated or
enclosed area where zombies are not a threat) and will attack the player
if not dealt with anyway.
The change in module_build will only fix items that d ono have an offset
set in the config.
BoundingBox can be a bit generous but the player should be able to work
with any overestimation in size.
Varchar(512) was truncating certain vehicle hitpoints and preventing
vehicle loading. The HiveExt dll handles hitpoints as a string which has
a char limit far greater than 512, so simply updating the column should
fix the issue.
Also update the ChracterID column for #1371 - new Hive dll will be
required
DB with ~4000 vehicles fails to load since this code runs on nearly
every vehicle for some reason. The code should only be called upon
vehicle purchase to increase load time and simply calling
dayz_objectUID2 has no effect.
With the code removed from line 266-271 the server would reset the slope
of the placed object to match the slope of the ground. Do not re-add the
code unless configs are updated with corresponding canbevertical option.
removing the Respawn EH fixes this, I haven't noticed any adverse
effects from removing it yet.
Also changing groups now deletes the old group. The machine which the
group is local to must execute the deleteGroup command, the server
previously had to wait until the player disconnects to delete their
empty groups.