The code in the CH53 SFX file must remain there.
Boats/ships do not properly call the destruction EH files so this fix
doesn't work for them. maybe a killed event handler must be added from
the server?
This commit prevents players who destroy their vehicle in god-mode
safezones to be spared by the fixes in #2411973 and #ec7351d
Configurable variable for this change is DZE_SafeZonePosArray = [];
Update suggestion to use the stable branch of A2 OA in the changelog
Looks like the error was:
r_player_Nutrition = [_NutritionLoss];
It should have used the set command, since the array was already defined
in variables.sqf. But there is no need to use an array for a single
value anyway.
Fixes RPT error on login:
Error in expression <hyd"] spawn player_death;
};
};
if (dayz_nutrition > 0) then {
_Nutrition = >
Error position: <dayz_nutrition > 0) then {
_Nutrition = >
Error Undefined variable in expression: dayz_nutrition
File z\addons\dayz_code\system\player_spawn_2.sqf, line 182
Let me know if we can't duplicate the code from the CH53 addon in the
file ch53_monitorSFX.sqf. If that's the case I will use an #include
instead, since the code that kicks and kills players out of the vehicle
goes at the bottom of the file anyway.
Previous changes to the destruction effects file broke previous fixes
that resolved the world is on fire glitch. I reverted those in this
commit.
Note: the CH53 is still broken in this commit
Configurable by DZE_TwoPrimaries
0 do not allow primary weapon on back.
1 allow primary weapon on back, but not when holding a primary weapon in
hand.
2 (default) allow player to hold two primary weapons, one on back and
one in their hands
Junk and plant spawning is disabled by default. It can be enabled via
dayz_townGenerator config variable and positions blacklist (for trader
cities, etc.).
The trader objects spawn code was consolidated to functions.
Also moved the dayz_epoch_b stringtable into a dayz_epoch package in the
dayz_code stringtable.
This makes it easier to maintain and search for code strings. Epoch_b
only holds extra models and textures now.
Updated loot spawning code for vehicle cargo.
Also it is faster and more efficient to call spawn_vehicles repeatedly
in one thread rather than spawn it hundreds of times (opening hundreds
of simultaneous script threads).
The protective box is not needed on Chernarus.
If other maps need it we are better off spawning a permanent box around
the debug area once, instead of constantly creating new boxes every time
a player logs in.
Achievements are saved in the state field, so we don't have room to save
friendlies there anymore. DZE_FriendlySaving is removed for now. I will
add it back later with a save to player profile instead.
The dayz_players variable is not used for anything. There were several
other unused variables in server_playerLogin.sqf.
MPHit does not always fire when a player is killed:
https://community.bistudio.com/wiki/ArmA_2:_Event_Handlers#MPHit
Using either MPHit or MPKilled is not a good idea here. There is already
a local 'killed' event handler which fires on player death
(player_death.sqf). That script sends a PV (priority message) to the
server which triggers server_playerDied. That means fnc_plyrHit needed
to finish sending its data to the server via public setVariables
(non-priority messages) before server_playerDied executed. Triggering
both these scripts at the same time was a bad idea.
Instead of sending the data to the server via setVariable I just
included it in PVDZ_plr_Death. This also lets us pass extra information
from the damage handler like ammo type, cause of death, etc. Still need
to test, but it should be more reliable and performant than
fnc_playerHit called from MPHit or MPKilled.
DayzGearSave is no longer used. I will submit a pull to remove it from
vanilla too.
Player_dumpBackpack is not a good solution to stifle duping. Players can
not see friends backpacks dropped on the ground. That is a problem when
they want to trade backpacks. They don't understand why their friend
can't see it. Also players can still get the "gear" scroll action if
they look where the hidden backpack is.
If it is still a problem after all the updates to current dayz code then
we should submit a pull request with a better solution to vanilla.
It makes no sense to rename the identical DayZ PVs to have an E in their
name. I don't see any good reason it was done in the first place. All it
accomplishes is breaking script compatibility between the two mods and
requiring different publicvariable.txt filters. The only time it makes
sense is for custom Epoch variables that aren't used in vanilla.
All admins have to do to update custom scripts is swap the names
according to the change log.
Note I've submitted a pull request to replace PVDZ_veh_Save with
PVDZ_obj_Save in official too because they are duplicates.