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.
Public variables used in the carry and drag functions are only compiled on the client. Only the server can use these PVs. They should be blacklisted in Battleye publicvariable.txt. PVDZ_sendUnconscious has been replaced by PVDZ_Send with server side security.
* Move PVCDZ_OpenTarget_Reset to client only
* Move some functions to client only
fnc_usec_damageHandler, dayz_inflame_showMenu, dayz_inflame_showMenu_other, DZ_KeyDown_EH, dayz_EjectPlayer compiled on client only.
* Upload the reorganized variables.sqf
* Update Changelog
Continuation of 8035df0
This is important to have on publish to identify cheaters who spam
create objects in the database or create objects with bad inventory.
- Renamed variables to backport to vanilla
- Removed % and & due to code filtering in publicvariableval.txt
Changes in modular_build.sqf were the same as player_build.sqf.
Tested with building, upgrading buildable/vehicle/tent, downgrading,
buying a vehicle, destroying tent and removing an object.
Should work to prevent the issue described in #1938 by disabling the abort option, causing the player to alt + F4 if they want to log out without reconnecting. which results in the gear pile/weaponholder from not being created.
Closes#1942 in combination with 48858b2
The "packing" variable was made redundant by dayz_actionInProgress
because it was only set locally.
DisableUserInput is unnecessary now because server_handleSafeGear is
called unscheduled. Getting the cargo, creating the new safe and
deleting the old one should complete in the same frame with no window
for players to remove gear:
https://github.com/EpochModTeam/DayZ-Epoch/blob/master/SQF/dayz_server/compile/server_handleSafeGear.sqf#L51-L67
The "claimed" check is also no longer needed because
server_handleSafeGear is called unscheduled and exits if the object is
null, so two players attempting to unlock at the same time will not
work.
* Remove public variable event handler when using config traders.
This stops the public variable event handler from being loaded when
you're using config based traders, it's not needed in this situation
* Change nearestObjects to nearEntities in z_checkCloseVehicle.sqf
* Fixes vehicle selling not able to sell correctly
If more than 1 vehicle of the same classname was in a trader and the
local vehicle was further away it would not be able to be sold till
moved closer. We are using DZE_myVehicle for everything and we do
previous checks to make sure it's not null and local so we can assume it
is okay to use.
Fixes
https://epochmod.com/forum/topic/43643-vehicle-dze4-can-not-be-sell/#comment-290036
- Removed some unneeded exceptions
- Moved tree chop PVEH to server compile only so client does not need
setdamage exception
- Replaced "showCommandingMenu" filter with stricter
"menu" filter
- Renamed two files with no changes for easier filtering of
"menu"
Vanilla
commits:
1d639b557b3a292425375cdf249ea9
Should improve client FPS while still allowing conditions and scripts to
be customized.
Some special vehicles like MV22, UH1Y, etc. have UserActions overwritten
in their configs, so please let me know if you find any others that do
not get the option to repair or salvage because UserActions is
overwritten in their config. I think I got them all.
Vanilla commits:
a8c4238c0c350d73abe1
The player who died is colored red and the killer is colored green. The
weapon now points in the direction of the player who died.
Also reverted 66fd5be since it did not help. It is already done globally
in player_death.sqf anyway. I tested again and this actually fixes the
problem.
This allows finer grained control of crashsite, carepackage and infected
camp spawn positions and radii (further north, south, east, west, etc.).
Also removed some hardcoded checks for Chernarus, since
dayz_townGenerator should always be off on other maps for now. Someone
may add town generator coordinates for other maps later.
Related vanilla commits:
b20b402bf07c8b69eb827dfd3ef9cf
using PVEH PVDZE_obj_Remove. Wrecks only exist for the players currently
in the server when the parent object is destroyed. Passing the object
through the PVEH does not work.
- Safe inventory arrays are no longer sent over network to all machines
on server startup and on each lock/unlock
- Disabled user input then closed gear dialog during safe
lock/unlock/pack to block various duping methods.
- Moved safe creation, deletion and gear handling to server. This cuts
down on add[Magazine/Weapon/Backpack]Cargo, createVehicle and
deleteVehicle BE logs.
No reason to use spawn here. Spawn can have a delay. Since
fn_selfActions runs faster it can register the vehicle as still locked
or unlocked after you clicked the action.
When localizing vanilla strings please do not put "EPOCH" in their name
or include them in the dayz_epoch package of the stringtable. This
creates more work to backport common translation updates and vice versa.
Plot for Life and Plot Management work best together. They essentially
provide the same functionality. Both let you keep your plot after death
by using UID instead of CharacterID. Plot Management doesn't even have
an option to save characterID, so by default it is always keeping all
friends and the owner permanently until they are removed. The only major
difference between them is Plot For Life also adds permanent ownership
of built items on the plot, which is behavior most people expect. It
doesn't make sense to keep ownership of the plot after death but not the
other objects built on it. The other functionality it adds (take
ownership) can be toggled with a config variable.
It is rare that someone would want Plot For Life enabled, but Plot
Management disabled or vice versa. If they really want that they can
still do it manually, but consolidating them to a single config option
greatly simplifies things for everyone else.
I removed links to mod githubs because many changes have been made to
the 1.0.6 versions, so outdated information there will likely confuse
people. Authors are already credited in the README and change log.
In variables.sqf "DZ_storage_base" is now the parent class which
includes all tents and stashes. DZE_checkNearbyRadius variable is not
used (identical to DZE_PlotPole select 0).