Commit Graph

107 Commits

Author SHA1 Message Date
ebaydayz
7b287a2a23 Send PVDZ_sec_atp messages as array
Vanilla development commits:

6e0fd6203b

78ed0665fa
2016-08-12 17:23:49 -04:00
icomrade
8f58baf3f2 Slightly mroe performant server_monitor 2016-08-12 01:50:54 -04:00
icomrade
c2b85718fa Wrong variable 2016-08-11 22:47:09 -04:00
icomrade
4019d0c351 Should stop vehicles from falling through buildables 2016-08-11 13:19:24 -04:00
ebaydayz
72656ed001 Greatly optimize safe gear handling
- 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.
2016-08-10 20:34:54 -04:00
icomrade
5c383c82dd More efficent evaluation for object spawning
We shouldn't need to check typenames since many of the DB columns don't
accept anything but appropriate values and the hive will check if some
fields are corrupt already.
2016-08-07 20:41:43 -04:00
icomrade
a9926bc073 Remove damage check from dayz_server
Moved to HiveEXT MySQL query. Thanks for the suggestion @ndavalos
2016-08-07 14:38:44 -04:00
icomrade
1b685581e3 Add condition 2016-08-03 22:18:42 -04:00
icomrade
ae78fde067 Add coin support to dayz_Server and login
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
2016-08-03 18:01:22 -04:00
icomrade
e08bd750d0 Remove DebugBox_DZ - may fix changing clothes
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
2016-07-25 23:22:03 -04:00
icomrade
c702d92231 Remove SQF Based Duplicate UID Fix
Use the new DLL
2016-07-17 10:52:40 -04:00
Bruce-LXXVI
5e53a71e88 Pullrequest/door management (#1694)
* Added doorManagement

* Rename FNC_check_owner --> FNC_check_owner_friends

* Fixed typo

* Fixed bug in FNC_check_owner_friends which allowed every user to manage
every plot and door.

* Removed unused DZE_doorManagementHarderPenalty from configVariables.sqf

* Now checking if _playerUID is in _friendlies for both cases.

* DZE_plotforLife should be DZE_permanentPlot

* Fixed case where DZE_permanentPlot is false.

* Forgot to add STR_EPOCH_CANCEL

* Changed translations to suggested string by ebaydayz.

* Renamed EyeScanner to DoorAccess.

* Reworked access rights for door management.

* DZE_doorManagementMustBeClose = true; //Players must be within 10m of
door to be added as a door friend.

* Fixed copy-paste error.

* Replace count with if

* Remove redundant test.

* Also replaced count in door management admins check.

* Change plotManagement and doorManagement to be consistent to
DayZ_UseSteamID (get UID from FNC_GetPlayerUID).

* Use _playerUID and _characterID more consistent.

* Added german translation to
STR_EPOCH_PLOTMANAGEMENT_ADDFRIEND_ALREADYONTHELIST.
2016-06-15 18:22:01 -04:00
ebaydayz
835d750c0c Use single config variable for Plot for Life and Plot Management
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).
2016-06-12 12:54:46 -04:00
ebaydayz
914b37a413 Pass cursorTarget to maintain_area.sqf
CursorTarget should always be passed from fn_selfActions, not reacquired
in action scripts. This is to ensure the same object is referenced. Plot
Management maintain_area is called from the dialog button, not
fn_selfactions.
2016-05-19 13:10:20 -04:00
icomrade
116caaa788 Revert "Remove dayz_objectUID2 from object loading"
This reverts commit 2df7279f1a.
2016-05-15 21:48:24 -04:00
icomrade
08c16788ae update changelog + fix god exclusion check 2016-05-15 18:57:14 -04:00
icomrade
dc2b97beb6 Revert setPos change from a previous commit 2016-05-15 18:53:40 -04:00
icomrade
2df7279f1a Remove dayz_objectUID2 from object loading
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.
2016-05-15 18:53:40 -04:00
icomrade
eda3e1c202 Fix vector objects loading in with angle compensation
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.
2016-05-15 18:53:40 -04:00
icomrade
e2a14de977 Add exclusions for god mode built objects 2016-05-15 18:53:40 -04:00
icomrade
6c24aaeb3b Add Vector Building 2016-05-12 22:52:04 -04:00
ebaydayz
26e67270cb Update Precise Base Building to v1.0.5 by @Mikeeeyy
Note @icomrade : 1.0.6 test servers need to empty object_data or run the
SQL query linked below before applying this update.

http://epochmod.com/forum/topic/15813-release-v105-precise-base-building-persistent-bases-after-restart-updated-220915/#comment-118663
2016-05-07 13:06:20 -04:00
icomrade
575682b7c8 Add A Plot For Life modification by RimBlock
A Plot For Life also includes Precise Base Building by Mikeeeyy. Precise
base building has no variable to switch it on or off, I don't think it
should.

Seems to work well enough, this may conflict with the duplicate object
uid fix, it appears to spam my server rpt.
2016-05-02 20:42:37 -04:00
Bruce
98bfee8bdf added plotManagement by DevZupa 2016-04-30 02:01:15 +02:00
ebaydayz
f38c6ff72e Fix server FPS logging
No need to have a config variable for this, admin can easily change it
in server pbo.
2016-04-17 17:11:49 -04:00
ebaydayz
59a4459809 Fix spawn marker count for non-cherno maps 2016-04-17 15:32:47 -04:00
ebaydayz
0f4aa05753 Disable lit fires when townGenerator is off
If townGenerator is enabled lit fires will be created everywhere except
blacklisted areas.
2016-04-06 20:08:28 -04:00
ebaydayz
6a42ef40d3 Disable TownGenerator and plant spawner by default
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.
2016-04-06 19:44:00 -04:00
ebaydayz
37277613c1 Fix blank remove attachment text M4, M240, L110
Some attachments were using incorrect string names.
2016-04-03 20:16:34 -04:00
ebaydayz
d07d31983b Remove legacy ammo boxes
AmmoBoxSmall_556 and AmmoBoxSmall_762 no longer exist and were causing
loot spawning errors.
2016-04-02 19:15:29 -04:00
ebaydayz
4ce54fbb62 Update server_publishObject
The hive call in server_publishObject is the same between vanilla and
Epoch. The only difference is vanilla uses the _inventory area for
owner, lock code, etc. variables where as modular Epoch items just store
an empty array there.

The object classname does not need to be sent in the PV because it can
be obtained on the server.

PVDZE_veh_Publish was not used.
2016-04-02 15:24:20 -04:00
ebaydayz
ec4eb5418d Update server spawn_vehicles
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).
2016-04-01 16:45:08 -04:00
ebaydayz
3f6cd7de42 Fix some errors 2016-03-31 14:45:13 -04:00
ebaydayz
8f2ff5cb3e Update spawnCrashSite 2016-03-26 22:02:28 -04:00
ebaydayz
cfff2454aa Update server_monitor 2016-03-26 20:46:42 -04:00
ebaydayz
e435d41f6c Update server_functions
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.
2016-03-25 21:24:43 -04:00
ebaydayz
debb714277 object_setFixServer -> fnc_veh_setFixServer
Fnc_veh_handleRepair is a new version of fnc_veh_setFixServer with extra
handling. It is used in salvage and some other scripts, but not
server_monitor.
2016-03-22 16:34:08 -04:00
ebaydayz
9ce5a20417 Cleanup variables.sqf
Epoch variables are grouped together now for easy comparison with
vanilla.
2016-03-19 19:58:37 -04:00
ebaydayz
4bd9a9aa0b Update public variables
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.
2016-03-18 21:39:22 -04:00
icomrade
bad0a2e461 add 2 new vars and fix up variable names
DZE_HeartBeat
DZE_UseBloodTypes
2016-03-01 00:23:14 -05:00
icomrade
58acf95dc7 Server Done I Think 2016-02-29 00:29:23 -05:00
ebaydayz
ff4a227a1d Prevent duplicate objectUIDs
See #1504 for the details
2016-02-24 12:31:13 -05:00
icomrade
c3ed4e49e1 Replace sleep with uiSleep
see the below links for more info. uiSleep is based off of a more
accurate method of tracking time, whereas sleep can fluctuate depending
on application performance since it is based on framerate.
https://community.bistudio.com/wiki/uiSleep
https://community.bistudio.com/wiki/sleep_vs_uiSleep
https://community.bistudio.com/wiki/sleep
2016-02-17 13:03:17 -05:00
ebaydayz
0d5d0b9b8e Change count back to forEach - fix empty safes
See Kronzky's note:
https://community.bistudio.com/wiki/count

You can only use count to iterate through an array if all elements in the array are of the same data type. In this case you have an array with strings (type), arrays (worldspace, inventory, hitpoints) and numbers (fuel, ownerID). You need to use forEach instead. 

This error explains the problem people were having with safe inventories being empty when they open them after a restart:
http://epochmod.com/forum/index.php?/topic/13423-safe-is-empty-after-restart-if-you-open-it/
https://github.com/vbawol/DayZ-Epoch/issues/1368
https://github.com/vbawol/DayZ-Epoch/issues/1422
2014-07-29 15:50:53 -04:00
ebaydayz
a8389ba2bc Fix typo _intentory > _inventory
_intentory should be _inventory
2014-07-29 14:26:48 -04:00
[VB]AWOL
32146dd079 another little thing 2014-06-10 12:22:21 -05:00
[VB]AWOL
726e4e0c22 push inventory global for now 2014-06-02 14:17:27 -05:00
[VB]AWOL
13d8023e82 fixed #1290 2014-06-01 01:17:28 -05:00
icomrade
e54b9983dd Replace forEach with Count
Use count where you do not need _forEachIndex variable, it's quicker
than forEach.
2014-05-27 15:37:57 -04:00
[VB]AWOL
af0da36391 remove forced profilenamespace save
KK said on a blog post that profile namespace variables is done
automatically but you can force it by using saveProfileNamespace command
2014-02-24 10:15:14 -06:00