Written by @seelenapparat
This splits the streamed array of objects into vehicles and buildings. all buildings get loaded at first. this prevents the old bug that vehicles could explode from falling because a building has loaded too late.
Replaced vehicle sethit/setvariable method with sethit/gethit and removed setvariable "Hit_" commands for vehicles (hit_partname can now probably be added to the setvariable filters list).
Modified object_getHit.sqf return to now provide the selection name in order to reduce redundant config lookups. Returns '[Damage, Part Name]', instead of just 'Damage'
Modified vehicle_GetHitpoints.sqf to remove incorrect hipoints from returning. Previously this script would return all hitpoints from any vehicle the current vehicle config inherited from, even if the hitpoint didn't exist in the calling vehicle. this posed a problem since getHit on an invalid part name returns Nil
These were resulting in sloppy mixed language sentences.
The server language never changes, so localize should not be used server
side, unless complete translations are added for all logs, which is not
worth the effort. Only admins see them, unlike client side strings which
are seen by everyone.
Correction for 6239959
@oiad isPlayer is not reliable on dead units which may be passed to
fa_plr2Str. Also, the other scripts which call fa_plr2Str always provide
a player, so we only want to check for AI on the hit log source.
- 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
The antiwall wrecks are removable on Epoch. Also Epoch has its own
player_antiWall function. We did not spawn these objects in 1051.
The infected camps add additional random spawned camp sites in the woods
with lots of dead soldier bodies, fires, water barrels and tents. We did
not have these in 1051 either. Disabling them by default will improve
FPS a little.
Stops intensive loop from running unnecessarily when dayz_townGenerator
= false; The comfrey plants are pointless atm since the only thing they
may be used for is crafting a sepsis bandage.
Also added waterHoleProxy for Napf and Namalsk placed by @skigoggles
Vanilla commit:
b5a9125086
better logging as well.
I haven't had objects purchased spawn in the debug, only those spawned
in with the admin tools since the position doesn't always have a third
element.
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
This replaces the "refresh" menu option with a "force maintain" option.
Allows you to maintain the base even if it doesn't need it to either get
all your items in sync or if you are going away or similar.
Tested with:
dze_permanent plot true/false
z_singlecurrency true/false
Also fixes an undefined variable error in system_monitor that was
introduced
8f58baf3f2
AFAIK there is no performance difference between configFile and
missionConfigFile.
Using missionConfigFile by default simplifies loot scripts and makes the
extra config variable unnecessary. It's one less step for admins to
customize their tables.
revert _serverVehicleCounter to array, since I didn't notice it was
referenced in another file. Don't attempt to load objectData dump if the
vehicle count is 0 since the file won't be created.
Allows server to use either legacy loading method by itterating
callExtension (using _legacyStreamingMethod = true). Otherwise, the
hive will dump objects to a file, write the filename to the server's
profile and it is deleted next restart, each filename is unique every
startup.
Associated hive commit:
bc5d5c56a8
in my testing createvehicle non-array is more than 2x as fast as
createvehicle array. Also includes some changes by @ndavalos in the RC1
issues thread.