This updates the humanity system. It removes the OpenTarget from Dayz Mod which is not needed for Epoch and more confusing as it helps to understand why a player gets a humanity drop or not.
The new system gives players always humanity.
Survivor killed Survivor = Negative Humanity
Survivor killed Bandit = Positive Humanity
Survivor killed Hero = Negative Humanity
Hero killed Bandit = Positive Humanity
Hero killed Hero = Negative Humanity
Hero killed Survivor = Negative Humanity
Bandit killed Bandit = Negative Humanity
Bandit killed Hero = Negative Humanity
Bandit killed Survivor = Negative Humanity
The values are strict and have no longer a complicated calculation based on a kill counter.
This change needs more testing in the beta state of this update.
Death message was sometimes showing incorrectly due to spawn delay.
Also the sched_corpses two minute loop was occasionally deleting bodies
right away because bodyName setVariable was delayed by the time it took
PVDZ_plr_death to send (up to a few seconds). See #1825
We only want to send a humanity hit if the source is a remote player.
Note it's not necessary to check isNull since (isPlayer objNull) returns
false.
Vanilla commit:
7402b240df
If you kill a player zombie you should not lose humanity. Player_death
is now synced with the humanity hit code in the damage handler.
Also the killing blow set variable was moved up because the same
conditions were already checked above.
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
The only difference from the vanilla dayz pbo is the DeathScreen change.
It is better to do that in dayz_code RscTitles. Then the dayz pbo does
not need to be maintained in this repo.