Wrecks were not deleted after removal following this change @icomrade
e079381931 (diff-e057d99bdf425219ff82fc6220a85b86L154)
In object_upgradeBuilding playerNear was exiting without readding
removed magazines.
I moved deletion back client side in packTent and upgradeStorage for
now, because there is potential for duping via pulling gear out of the
old tent during the deletion delay. PVS can be delayed especially when
the server is under load, so it can take a few seconds for the server to
delete the object after sending the request. These two scripts should be
the only ones where that could be problematic. Packing and upgrading
tents should eventually be moved completely server side like safes.
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.
Setvariables made redundant by 9cc3c82
Also changed removeEventHandler to remove all, so if switchModel exits
at one of the exitWiths the player will not be left invincible.
Forgot to remove F4 from the blocked list in 5acad04 @icomrade so it was
being overwritten.
Shift + P is not a hardcoded engine bind. It is just the default
DSInterface bind, so actionKeys "DSInterface" covers that in f760896.
Revert
f0e8796996
Partial revert:
2f0774d531 (diff-c3aa237d9007054fc3a724116a5d9f1a)
This is a better check for removing the owner of plots/doors based on
conversations on discord.
Plot/door owner can remove them selves
plot/door friends can't remove plot owner
plot/door admins can remove anyone
Salival recommended a >=, however upon further thought, this would be irrelevant as this variable is meant to prevent building over a certain height, not at that specific height. Having >= would restrict building at exactly 30 meters for example rather than simply above it. The = sign was also not used in modular_build.sqf
This changes the hit messages to only show AI instead of the AI's names.
Changes this:
20:08:37 "P1ayer PID#7(salival) hit by PID#1(Qadeer Hakimi) with
vil_G36VA4Eot/B_556x45_Ball <ammo left:25> from 356 meters in head_hit
for 0 damage"
To this:
20:08:37 "P1ayer PID#7(salival) hit by AI with
vil_G36VA4Eot/B_556x45_Ball <ammo left:25> from 356 meters in head_hit
for 0 damage"
Sanity fix for hit and kill for vehicles so they match:
Before:
22:44:03 "P1ayer PID#3(salival) hit by AI in Pickup (PK) DZ from 15
meters in head_hit for 0.88666 damage"
After:
22:44:03 "P1ayer PID#3(salival) hit by AI with a Pickup (PK) DZ from 15
meters in head_hit for 0.88666 damage"
Kill message:
22:44:04 "salival (76561197999617086) salival was killed
by AI with a Pickup_PK_INS_DZ from 15m"
limits distance to object, as well as validating random auth key. added server_deleteObjDirect which is only for direct execution on the server, whereas server_deleteObj should be used for PVEH execution only
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.
Using "Wait for the previous action to complete to perform another" is
more accurate in these cases, because dayz_actionInProgress could have
been set by any action, not necessarily the same one.
Use the cursorTarget at the time the gear dialog was opened instead of
the cursorTarget at the time the script runs. The script can be delayed
by several seconds (spawn is scheduled).