Skip to content

Commit

Permalink
Merge pull request #1011 from EpochModTeam/experimental
Browse files Browse the repository at this point in the history
Release 1.3.3
  • Loading branch information
EpochModTeamInternal authored Jun 3, 2020
2 parents cc7d97d + 5f0efc9 commit 9c222bb
Show file tree
Hide file tree
Showing 78 changed files with 823 additions and 1,441 deletions.
Binary file modified Server_Install_Pack/@epochhive/addons/epoch_server.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/@epochhive/addons/epoch_server_settings.pbo
Binary file not shown.
1 change: 0 additions & 1 deletion Server_Install_Pack/@epochhive/epochconfig.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -223,5 +223,4 @@ forceRestartTime = 14400; // 4 hour restarts
hiveAdminCmdTime = 5; // how many seconds between each command queue call.

// DEBUG
useOldLoadVehicles = "false";
enableUnitTestOnStart = 1; // enable extra debug for database calls. 1 = enabled.
Binary file modified Server_Install_Pack/mpmissions/epoch.Altis.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Australia.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Bootcamp_ACR.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Bornholm.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Chernarus.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.ChernarusRedux.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Chernarus_Summer.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Desert_E.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Enoch.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Esseker.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.IslaDuala3.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Kapaulio.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Malden.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Mountains_ACR.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Napf.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Panthera3.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Porto.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.ProvingGrounds_PMC.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Sara.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.SaraLite.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Sara_dbe1.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Shapur_BAF.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Stratis.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Takistan.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Tanoa.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.VR.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Winthera3.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Woodland_ACR.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.Zargabad.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch._ChangeMe.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.abramia.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.dingor.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.lingor3.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch.utes.pbo
Binary file not shown.
Binary file modified Server_Install_Pack/mpmissions/epoch_RyanZed.Tanoa.pbo
Binary file not shown.
18 changes: 9 additions & 9 deletions Server_Install_Pack/sc/battleye/scripts.txt

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions Sources/epoch_code/compile/EPOCH_AutoRun_Check.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ _canAutoRun = true;
if !(alive player) exitwith {
false
};
if (lifeState player == "INCAPACITATED") exitwith {
false
};
/*
if !(istouchingground player) exitwith {
false
Expand Down
14 changes: 10 additions & 4 deletions Sources/epoch_code/compile/EPOCH_CamUse.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ _mycams spawn {
Epoch_CamFilmGrain = ppEffectCreate ["FilmGrain", 2000 + 25];
};
Epoch_CamFilmGrain ppEffectEnable true;
_intensity = ((player distance Epoch_ActiveCam) / 10000) min 1;
_intensity = ((player distance Epoch_ActiveCam) / 4000) min 1;
_sharpness = 1.25 - _intensity;
Epoch_CamFilmGrain ppEffectAdjust [_intensity,_sharpness,2.01,0.75,1.0,true];
Epoch_CamFilmGrain ppEffectCommit 0;
Expand All @@ -81,8 +81,11 @@ _mycams spawn {
_EpochCam camSetTarget _targetpos;
_EpochCam camCommit 0;
_dirs = [5,10,15,20,25,30,35,40,45,40,35,30,25,20,15,10,5,0,-5,-10,-15,-20,-25,-30,-35,-40,-45,-40,-35,-30,-25,-20,-15,-10,-5,0];
_GrainUpdateIntervall = 5;
_nextgrainupdate = diag_ticktime;
while {!isnull _display} do {
Epoch_CamAdjust params ["_dir","_height","_zoom"];
_playerdist = player distance Epoch_ActiveCam;
_AutoCam = Epoch_AutoCam;
if !(_ActiveCam isequalto Epoch_ActiveCam) then {
_ActiveCam = Epoch_ActiveCam;
Expand All @@ -96,11 +99,14 @@ _mycams spawn {
_EpochCam cameraEffect ['internal', 'front'];
_EpochCam camCommit 0;
_targetheight = ((getposasl Epoch_ActiveCam) select 2)-50;
_intensity = ((player distance Epoch_ActiveCam) / 10000) min 1;
(_display displayctrl 1000) ctrlsettext format ["Cam %1",(_mycams find Epoch_ActiveCam) + 1];
};
if (_nextgrainupdate <= diag_ticktime) then {
_intensity = (_playerdist / 4000) min 1;
_sharpness = 1.25 - _intensity;
Epoch_CamFilmGrain ppEffectAdjust [_intensity,_sharpness,2.01,0.75,1.0,true];
Epoch_CamFilmGrain ppEffectCommit 0;
(_display displayctrl 1000) ctrlsettext format ["Cam %1",(_mycams find Epoch_ActiveCam) + 1];
Epoch_CamFilmGrain ppEffectCommit _GrainUpdateIntervall;
_nextgrainupdate = diag_ticktime + _GrainUpdateIntervall;
};
if !(Epoch_AutoCam) then {
_targetheight = ((_targetheight + _height) min 50) max -150;
Expand Down
23 changes: 23 additions & 0 deletions Sources/epoch_code/compile/EPOCH_UnisexCheck.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -89,3 +89,26 @@ if (_woman == 1) then {
};
};
};

_tocheckfor = switch _item do {
case (uniform player): {uniformcontainer player};
case (vest player): {vestcontainer player};
case (backpack player): {backpackcontainer player};
default {objnull};
};
if (!isnull _tocheckfor) then {
{
_target = _x;
_subcontainers = everyContainer _target;
{
_subcontainer = _x;
if (_tocheckfor == (_subcontainer select 1)) then {
switch _item do {
case (uniform player): {removeUniform player;};
case (vest player): {removeVest player;};
case (backpack player): {removeBackpack player;};
};
};
} foreach _subcontainers;
} foreach (nearestobjects [player,['WeaponHolder','WeaponHolderSimulated','MAN','Landvehicle','SHIP','AIR','ReammoBox_F'],10]);
};
13 changes: 11 additions & 2 deletions Sources/epoch_code/compile/event_handlers/EPOCH_HandleDamage.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,16 @@
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_code/compile/EPOCH_HandleDamage.sqf
*/
params ["_unit", "_selection", "_damage", "_source", "_projectile", "_hitIndex", "_instigator", "_hitPoint"];

_this call EPOCH_custom_EH_HandleDamage;

if !(_source isEqualTo _unit) then {
if ((missionnamespace getvariable ["EPOCH_HandleDamageTimeOut",diag_ticktime]) > diag_ticktime) exitwith {}; // prevent multiple actions here
EPOCH_HandleDamageTimeOut = diag_ticktime + 0.1;
if ((missionnamespace getvariable ["EPOCH_HandleDamageTimeOut",diag_ticktime]) - diag_ticktime > 5) exitwith {_damage = 1;};
switch _projectile do {
case "B_EnergyPack": {
_damage = 0;
if ((missionnamespace getvariable ["EPOCH_HandleDamageTimeOut",diag_ticktime]) > diag_ticktime) exitwith {}; // prevent multiple actions here
EPOCH_HandleDamageTimeOut = diag_ticktime + 0.1;
if (_source distance _unit > 10) exitwith {};
if !(missionnamespace getvariable ["EPOCH_OldRevive",false]) then {
_attachments = handgunItems _source;
Expand Down Expand Up @@ -58,6 +63,9 @@ if !(_source isEqualTo _unit) then {
case "bbag_pvc";
case "xbow_tranq";
case "tranq_dart": {
_damage = 0;
if ((missionnamespace getvariable ["EPOCH_HandleDamageTimeOut",diag_ticktime]) > diag_ticktime) exitwith {}; // prevent multiple actions here
EPOCH_HandleDamageTimeOut = diag_ticktime + 0.1;
if !(lifeState _unit == "INCAPACITATED") then {
EPOCH_HandleDamageTimeOut = diag_ticktime + 1;
_unit setUnconscious true;
Expand All @@ -69,6 +77,7 @@ if !(_source isEqualTo _unit) then {
case "B_Swing";
case "B_Stick";
case "B_Hatchet": {
if ((missionnamespace getvariable ["EPOCH_HandleDamageTimeOut",diag_ticktime]) > diag_ticktime) exitwith {}; // prevent multiple actions here
if !(lifeState _unit == "INCAPACITATED") then {
if ((random 100) < (["CfgEpochClient", "UnconsciousChance", 30] call EPOCH_fnc_returnConfigEntryV2)) then {
EPOCH_HandleDamageTimeOut = diag_ticktime + 1;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,7 @@ params ["_unit","_container"];
if !(EPOCH_arr_interactedObjs isEqualTo[]) then {
[EPOCH_arr_interactedObjs] remoteExec['EPOCH_server_save_vehicles', 2];
EPOCH_arr_interactedObjs = [];
};
if !(player == Vehicle Player) then {
call EPOCH_ReloadLoadout;
};
27 changes: 26 additions & 1 deletion Sources/epoch_code/compile/functions/EPOCH_fnc_playerDeath.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,32 @@ if(_deathMarkerON && ('ItemGPS' in (assignedItems _unit)))then{
profileNameSpace setVariable["EPOCHLastKnownDeath",getPos _unit];
};

[player,_killer,toArray profileName,Epoch_personalToken] remoteExec ["EPOCH_server_deadPlayer",2];
// Check, if Player got killed by another Player (opponent) in his Base
_homekill = false;
if (_unit !=_killer) then {
if (isplayer _killer) then {
if !(_killer in (units (group Player))) then {
_SupressBaseSpawnOnHomekillTime = ["CfgEpochClient", "SupressBaseSpawnOnHomekillTime", 0] call EPOCH_fnc_returnConfigEntryV2;
if (_SupressBaseSpawnOnHomekillTime > 0) then {
_jammer = nearestObjects[player, call EPOCH_JammerClasses, ["CfgEpochClient", "minJammerDistance", 650] call EPOCH_fnc_returnConfigEntryV2];
if !(_jammer isEqualTo []) then {
_nearestJammer = _jammer select 0;
if ((_nearestJammer getVariable["BUILD_OWNER", "-1"]) in[getPlayerUID player, Epoch_my_GroupUID]) then {
_CfgEpochClient = 'CfgEpochClient' call EPOCH_returnConfig;
_JammerConfig = (_CfgEpochClient >> "CfgJammers" >> (typeof _nearestJammer));
_buildingJammerRange = getnumber (_JammerConfig >> "buildingJammerRange");
if (_unit distance _nearestJammer < _buildingJammerRange) then {
_homekill = true;
[format ["Base Spawn disabled for %1 minutes (killed in your Territory)",(_SupressBaseSpawnOnHomekillTime/60) tofixed 1],5] call Epoch_Message;
};
};
};
};
};
};
};

[player,_killer,toArray profileName,Epoch_personalToken,_homekill] remoteExec ["EPOCH_server_deadPlayer",2];

// disable build mode
EPOCH_buildMode = 0;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -290,9 +290,9 @@ if (_dikCode in (actionKeys "NightVision")) then {
if(!_ctrl && (_dikCode in (actionKeys "HeliRopeAction")))then{
if (player == vehicle player) exitwith {};
_msg = "";
if(EPOCH_ArmaSlingLoad)then{
if (["CfgEpochClient", "ActionHookRope", true] call EPOCH_fnc_returnConfigEntryV2) then {
if(driver vehicle player isEqualTo player)then{
if(currentPilot vehicle player isEqualTo player)then{
if(EPOCH_ArmaSlingLoad)then{
if (["CfgEpochClient", "ActionHookRope", true] call EPOCH_fnc_returnConfigEntryV2) then {
_slung = ropeAttachedObjects vehicle player;
if(_slung isEqualTo [])then{
if!('ItemRope' in magazines player) then {
Expand All @@ -305,10 +305,10 @@ if(!_ctrl && (_dikCode in (actionKeys "HeliRopeAction")))then{
player addItem 'ItemRope';
};
};
}else{
_msg = "Hook/Unhook Malfunction, overrode by R3F or AdvSlingLoad";
_handled = true;
};
}else{
_msg = "Hook/Unhook Malfunction, overrode by R3F or AdvSlingLoad";
_handled = true;
};
if!(_msg isEqualTo "")then{
[_msg,5,[[0,0,0,0.2],[1,1,1,1]]] call Epoch_message_stack;
Expand Down
6 changes: 5 additions & 1 deletion Sources/epoch_code/compile/setup/masterLoop/Event1.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,11 @@ if (EPOCH_debugMode) then {
if (_x == "Temp") then {
_customVars = _customVars + format["<t size='1.15' font='puristaLight' align='left'>%1: </t><t size='1.15' font='puristaLight' align='right'>%2°F | %3°C</t><br/>", _x,_val,_val call EPOCH_convertTemp];
} else {
_customVars = _customVars + format["<t size='1.15' font='puristaLight' align='left'>%1: </t><t size='1.15' font='puristaLight' align='right'>%2</t><br/>", _x,_val];
if (_x == "Crypto") then {
_customVars = _customVars + format["<t size='1.15' font='puristaLight' align='left'>%1: </t><t size='1.15' font='puristaLight' align='right'>%2</t><br/>", _x,Epoch_PlayerCrypto];
} else {
_customVars = _customVars + format["<t size='1.15' font='puristaLight' align='left'>%1: </t><t size='1.15' font='puristaLight' align='right'>%2</t><br/>", _x,_val];
};
};
}
}forEach _customVarNames;
Expand Down
3 changes: 3 additions & 0 deletions Sources/epoch_code/compile/setup/masterLoop/init.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -239,8 +239,10 @@ _PlayTimeTimer = diag_ticktime;
_UpdateTopStats = false;
EPOCH_MyStatsPublic = !((missionnamespace getvariable ["EPOCH_totalPublicStats",1]) isEqualTo 0);

_LastLootCall = diag_ticktime - 30;
_lootBubble = {
private["_jammer", "_others", "_objects", "_nearObjects", "_building", "_lootDist", "_lootLoc", "_playerPos", "_distanceTraveled","_AddBias","_dir","_minlootdist","_maxlootdist"];
if (diag_ticktime - _LastLootCall < 12) exitwith {};
if (!alive player) exitwith {};
if (speed vehicle player > 30) exitwith {};
_playerPos = getPosATL vehicle player;
Expand Down Expand Up @@ -369,6 +371,7 @@ _lootBubble = {
} foreach _objects;
// systemchat format ["Spawned Loot in %1 Buildings", count _LootsArray];
if !(_LootsArray isEqualTo []) then {
_LastLootCall = diag_Ticktime;
[player,Epoch_personalToken,_LootsArray] remoteExec ["EPOCH_server_spawnLoot",2];
};
};
Expand Down
Loading

0 comments on commit 9c222bb

Please sign in to comment.