Jump to content

F507DMT

Member
  • Posts

    134
  • Joined

  • Last visited

Posts posted by F507DMT

  1. I'm  a bit confused about the esc.sqf part. Am I supposed to create a file called esc.sqf and put the code in the OP in it or am I supposed to have an existing file called esc.sqf?

    You need create new file esc.sqf, if you already have esc.sqf(its custom file), create: esc_antidupe.sqf and use:

     

    in dayz_spaceInterrupt.sqf add(_nill = execvm "scripts\esc_antidupe.sqf";):

    //Esc
    if (_dikCode == 0x01) then {
        _nill = execvm "scripts\esc_antidupe.sqf";
        DZE_cancelBuilding = true;
        call dayz_EjectPlayer;
    };
    
  2. Make unconscious then you invisible for AI

     

    When player play action "Die"(playActionNow "Die") or some animation like this, he broke world space synchronization!

     

    And to game(to server side), thinks: now player stay only this position, then player go on mission, AI don’t see him, kill all take loot. If player change animation(use bandage), world space change to new place, but synchronization still broken.

    When player log out and he log in last "unconscious place".

    Jast if u get in vihecle synchronization will be work ok.

     

     

    And if AI or same times player find your broken world space, whey easy kill you!

     

     

    This animatoin use in unconscious, its easy to fix:

    Chnge playActionNow "Die" to switchMove "AmovPpneMrunSnonWnonDfr"

    and use infistar unconscious.

     

    Need change in:

    setup_functions_med.sqf

    player_monitor.fsm

    AH.sqf

     

    Humanity boost (-20 000 use only 30 round)

     

    Your frend lay down, you take automatic rifle, and shoot full ammo in his had

    fn_damageHandler.sqf have bag, and give to you ~ -20K humanity! 

     

    Easy to fix:

    in fn_damageHandler.sqf chenge

    if (_unitIsPlayer) then {
        if (_hit == "") then {
            if ((_source != player) && _isPlayer) then {
            //Enable aggressor Actions
                if (_source isKindOf "CAManBase") then {
                    _source setVariable["startcombattimer",1];
                };
                _canHitFree =     player getVariable ["freeTarget",false];
                _isBandit = (player getVariable["humanity",0]) <= -5000;
                _isPZombie = player isKindOf "PZombie_VB";
    
                if (!_canHitFree && !_isBandit && !_isPZombie) then {
                    //Process Morality Hit
                    _myKills = 0 max (1 - (player getVariable ["humanKills",0]) / 5);
                    _humanityHit = -100 * _myKills * _damage;
    
                    /* PVS/PVC - Skaronator */
                    if (_humanityHit != 0) then {
                        [_source,_humanityHit] spawn {
                            private ["_source","_humanityHit"];
                            _source = _this select 0;
                            _humanityHit = _this select 1;
                            PVDZE_send = [_source,"Humanity",[_source,_humanityHit,30]];
                            publicVariableServer "PVDZE_send";
                        };
                    };
                };
            };
        };
    };

    to:

    if (_unitIsPlayer) then {
        if (_hit == "") then {
            if ((_source != player) && _isPlayer) then {
            //Enable aggressor Actions
                if (_source isKindOf "CAManBase") then {
                    _source setVariable["startcombattimer",1];
                };
            };
        };
    };

    change path for fn_damageHandler.sqf  in:

    compiles.sqf

    infistar_safe_zone.sqf - or some like

    AH.sqf

     

     

     

    I will be happy if I helped someone!

    Sorry for my bad english!  :P 

     

     

     with: Losing connection, drop loot, Esc, exit yes and Esc + G, losing connection, drop loot, exit yes.

  3. Make unconscious then you invisible for AI

     

    When player play action "Die"(playActionNow "Die") or some animation like this, he broke world space synchronization!

     

    And to game(to server side), thinks: now player stay only this position, then player go i mission AI don’t see him, kill all take loot. If u change animation player(use bandage), world space change to new place, but synchronization still broken.

    When player log out and log in last "unconscious place".

    Jast if u get in vihecles all was be ok.

     

     

    And if AI or same times player or AI find your broken world space, whey easy kill you!

     

     

    This animatoin use in unconscious, its easy to fix:

    Chnge playActionNow "Die" to switchMove "AmovPpneMrunSnonWnonDfr"

    and use infistar unconscious.

     

    Need change in:

    setup_functions_med.sqf

    player_monitor.fsm

    AH.sqf

     

    Humanity boost (-20 000 use only 30 round)

     

    Your frend lay down, you take automatic rifle, and shoot full ammo in his had

    fn_damageHandler.sqf have bag, and give to you ~ -20K humanity! 

     

    Easy to fix:

    in fn_damageHandler.sqf chenge

    if (_unitIsPlayer) then {
    	if (_hit == "") then {
    		if ((_source != player) && _isPlayer) then {
    		//Enable aggressor Actions
    			if (_source isKindOf "CAManBase") then {
    				_source setVariable["startcombattimer",1];
    			};
    			_canHitFree = 	player getVariable ["freeTarget",false];
    			_isBandit = (player getVariable["humanity",0]) <= -5000;
    			_isPZombie = player isKindOf "PZombie_VB";
    
    			if (!_canHitFree && !_isBandit && !_isPZombie) then {
    				//Process Morality Hit
    				_myKills = 0 max (1 - (player getVariable ["humanKills",0]) / 5);
    				_humanityHit = -100 * _myKills * _damage;
    
    				/* PVS/PVC - Skaronator */
    				if (_humanityHit != 0) then {
    					[_source,_humanityHit] spawn {
    						private ["_source","_humanityHit"];
    						_source = _this select 0;
    						_humanityHit = _this select 1;
    						PVDZE_send = [_source,"Humanity",[_source,_humanityHit,30]];
    						publicVariableServer "PVDZE_send";
    					};
    				};
    			};
    		};
    	};
    };
    

    to:

    if (_unitIsPlayer) then {
    	if (_hit == "") then {
    		if ((_source != player) && _isPlayer) then {
    		//Enable aggressor Actions
    			if (_source isKindOf "CAManBase") then {
    				_source setVariable["startcombattimer",1];
    			};
    		};
    	};
    };
    

    change path for fn_damageHandler.sqf  in:

    compiles.sqf

    infistar_safe_zone.sqf - or some like

    AH.sqf

     

     

     

    I will be happy if I helped someone!

    Sorry for my bad english! :P 

     

     

     with: Losing connection, drop loot, Esc, exit yes and Esc + G, losing connection, drop loot, exit yes.

  4. got it, thx!

    if all work flawlessly, it makes sense to rewrite all to _bldObj?

     

    this spawn trayder looks good? Or is there a better way?

    	_unit = objNull;
    	if (true) then
    	{
    	  _unit = createAgent ["RU_Doctor", [12528.427, 14978.729, 0.068014488], [], 0, "CAN_COLLIDE"];
    	  _unit setDir -4.0797386;
    	  _unit setUnitAbility 0.60000002; // need it????
    	  _unit allowDammage false; _unit disableAI 'FSM'; _unit disableAI 'MOVE'; _unit disableAI 'AUTOTARGET'; _unit disableAI 'TARGET'; _unit setBehaviour 'CARELESS'; _unit forceSpeed 0;_unit enableSimulation false;
    	};
    
  5. (+Optimization ! )  - what is optimized?

    becorse spawn like:

    _bldObj = objNull;
    if (true) then
    {
      _bldObj = createVehicle ["MAP_Misc_G_Pipes", [6284.9082, 7792.4834, 1.2166975], [], 0, "CAN_COLLIDE"];
      _bldObj setPos [6284.9082, 7792.4834, 1.2166975];
      _bldObj setVectorDirAndUP [[1,-0.6,0],[1,0,0]];
    };
    

    not like:

    _vehicle_22 = objNull;
    if (true) then
    {
      _this = createVehicle ["Land_GuardShed", [14300.908, 12412.609, -0.16525249], [], 0, "CAN_COLLIDE"];
      _vehicle_22 = _this;
      _this setDir 269.04272;
      _this setPos [14300.908, 12412.609, -0.16525249];
    }; 
  6. fn_selfActions.sqf

    if (_isVehicle) then {
    	if((typeOf _cursorTarget in ["2S6M_Tunguska","BMP2_HQ_CDF","BMP2_HQ_INS","BMP2_HQ_TK_EP1"]) and (player distance _cursorTarget <= 6.5)) then {
    		if (s_player_use_tunguska < 0) then {
    			s_player_use_tunguska = player addAction [("<t color='#5882FA'>")+("Поднятся на верх")+("</t>"), "scripts\craft\LiftUp.sqf",_cursorTarget, -25, true, true, "", ""];
    		};
    		} else {
    		player removeAction s_player_use_tunguska;
    		s_player_use_tunguska = -1;
    	};
    };
    

    scripts\craft\LiftUp.sqf

     //               F507DMT //***// GoldKey 					//
    //http://goldkey-dz.ru/  //***// https://vk.com/goldkey_dz //
    private ["_vehicle","_object"];
    _vehicle = _this select 3; 
    
    if (typeOf _vehicle in ["2S6M_Tunguska"]) then {
    	player attachto [_vehicle,[0,1,-1]];
    	uiSleep 0.5;
    	detach  player;
    } else {
    	_object = "Paleta1" createVehicle position player;
    	_object attachto [_vehicle,[0,-2.5,-3]];
    	player attachto [_object,[0,0,0]];
    	uiSleep 0.5;
    	detach  player;
    	detach  _object;
    	uiSleep 15;
    	deleteVehicle _object;
    };
    
    
  7. Anti-Theft from locked vehicles by F507DMT

     

     

    add in variables.sqf:

    GearStorags = ["WeaponHolder","WoodCrate_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","GunRack_DZ","VaultStorage","LockboxStorage"];

    add in dayz_spaceInterrupt.sqf:

    //Esc
    if (_dikCode == 0x01) then {
    	_nill = execvm "scripts\esc.sqf"; //if use Anti-Duping by F507DMT (http://epochmod.com/forum/index.php?/topic/32889-release-anti-duping-by-f507dmt-working/)
    	DZE_cancelBuilding = true;
    	call dayz_EjectPlayer;
    	OpenGear = nil;
    };
    
    //Anti-Theft from locked vehicles by F507DMT
    if ((_dikCode in actionKeys "Gear") && !(vehicle player != player)) then {
    	if (isNil "OpenGear") then {
    		(findDisplay 106) closeDisplay 1;
    		if (!(cursorTarget isKindOf "Man") and (player distance cursorTarget <= 7) and ((typeOf cursorTarget in GearStorags) or (cursortarget isKindOf "AllVehicles"))) then {
    			player action ["gear", cursortarget];
    			} else {
    			createGearDialog [player, "RscDisplayGear"];
    		};
    		OpenGear = true;
    	} else {
    		(findDisplay 106) closeDisplay 1;
    		OpenGear = nil;
    	};
    	_handled = true;
    };
    

    P.S.

    I recomend add "Open self Backpack" on button "H"

    add in  dayz_spaceInterrupt.sqf:

    //open backpack on H button
    if (_dikCode == 0x23) then {
    	if (isNil "OpenGear") then {
    		(findDisplay 106) closeDisplay 1;
    		player action ["gear", unitBackpack player];
    		OpenGear = true;
    		} else {
    		(findDisplay 106) closeDisplay 1;
    		OpenGear = nil;
    	};
    	_handled = true;
    };
    

    with: Losing connection, drop loot, Esc, exit yes and Esc + G, losing connection, drop loot, exit yes.

  8. Anti-Duping by F507DMT

     
     
    This Anti-Duping system block duping with: Losing connection, drop loot, Esc, exit yes and Esc + G, losing connection, drop loot, exit yes.
    Works perfectly!
     
     

    Instructions:

     
    in description.ext 

    onPauseScript = "scripts\DupingFix.sqf";

    in DupingFix.sqf

    private ["_escMenu","_lastTimesScanned","_currTimesScanned"];
    
    disableSerialization;
    sleep 1;
    call dayz_forcesave;
    _escMenu = findDisplay 49;
    _lastTimesScanned = player getVariable ["ClearToLeave",0];
    
    AD_AntiDupePlayer = player;
    publicVariable "AD_AntiDupePlayer";
    
    sleep 5;
    
    _currTimesScanned = player getVariable ["ClearToLeave",0];
    
    
    if (_currTimesScanned - _lastTimesScanned < 1) then
    {
    titleText ["<Anti-dupe>: Connection to the server is not found!", "PLAIN DOWN", 3];
    systemchat "<Anti-dupe>: Connection to the server is not found!";
    _escMenu closedisplay 0;
    };

    in AH bottom:

    'AD_AntiDupePlayer' addPublicVariableEventHandler
    {
       [] spawn {
          waitUntil {!isNull AD_AntiDupePlayer};
          _plyr = AD_AntiDupePlayer;
          _amnt = _plyr getVariable ['ClearToLeave',0];
          _plyr setVariable ['ClearToLeave',_amnt+1,true];
       };
    };
    

    in compiles.sqf change this:

    dayz_spaceInterrupt =			compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\dayz_spaceInterrupt.sqf";
    

    to:

    dayz_spaceInterrupt =			compile preprocessFileLineNumbers "scripts\dayz_spaceInterrupt.sqf";
    

    in dayz_spaceInterrupt.sqf add(_nill = execvm "scripts\esc.sqf";):

    //Esc
    if (_dikCode == 0x01) then {
        _nill = execvm "scripts\esc.sqf";
        DZE_cancelBuilding = true;
        call dayz_EjectPlayer;
    };

    in scripts\esc.sqf

    // F507DMT
    for "_x" from 3 to 1 step -1 do {
    (findDisplay 106) closeDisplay 1;
    uiSleep 1;
        
        if (isNil "EscBlock") then {
         systemchat "<Anti-dupe>: Gear is locked for 5 seconds.";
         EscBlock = true;
        };
    };
    EscBlock = nil;
    

    add in publicvariable.txt, in line 2, last:

    !="AD_AntiDupePlayer"
    

    --

     

     

     

    If you use endMission "SOME", like in nosidechat.sqf, chenge to:

    _nil = execVM "scripts\player_kick.sqf";

    in player_kick.sqf:

    kickme = true;
    

    add buttom in scripts.txt:

    5 "kickme"

    When u have no connection BE can`t kick you. Dupe - fix.

     

     

    --

  9. All possible vehicles for repainting

     

    in fn_selfActions.sqf

    if (!(_typeOfCursorTarget in ColourVehicles) and !(_cursorTarget isKindOf "StaticWeapon")) then {
    private ["_paint"];
    _paint = player addAction [("<t color='#5882FA'>")+("Paint")+("</t>"), "scripts\paint\player_paint.sqf",_cursorTarget, -19, true, true, "", ""];
    s_player_lockunlock set [count s_player_lockunlock,_paint];
    };
    

    in variables.sqf:

     

    ColourVehicles = [
    "SeaFox_EP1",
    "smallboat_2",
    "Smallboat_1",
    "SeaFox",
    "Fishing_Boat",
    "PBX",
    "Zodiac",
    "RHIB2Turret",
    "RHIB",
    "BAF_FV510_W",
    "BAF_FV510_D",
    "BAF_Jackal2_GMG_W",
    "BAF_Jackal2_L2A1_W",
    "BAF_Offroad_W",
    "Tractor",
    "BAF_Jackal2_GMG_D",
    "policecar",
    "BAF_Jackal2_L2A1_D",
    "BAF_Offroad_D",
    "T55_TK_EP1",
    "HMMWV_M2_USArmy",
    "V3S_Open_TK_EP1",
    "V3S_TK_EP1",
    "SkodaBlue",
    "SkodaRed",
    "SkodaGreen",
    "datsun1_civil_2_covered",
    "datsun1_civil_3_open",
    "tractorOld",
    "hilux1_civil_2_covered",
    "hilux1_civil_3_open",
    "GAZ_Vodnik_HMG",
    "GAZ_Vodnik",
    "Lada1",
    "MMT_USMC",
    "MMT_Civ",
    "M113Ambul_UN_EP1_DZ",
    "TowingTractor",
    "hilux1_civil_3_open_DZE4",
    "hilux1_civil_2_covered_DZE4",
    "hilux1_civil_3_open_DZE3",
    "hilux1_civil_2_covered_DZE3",
    "hilux1_civil_3_open_DZE2",
    "hilux1_civil_3_open_DZE1",
    "hilux1_civil_3_open_DZE",
    "Lada1_DZE4",
    "Lada1_DZE3",
    "HMMWV_M1151_M2_CZ_DES_EP1",
    "HMMWV_M998_crows_MK19_DES_EP1",
    "Lada1_DZE2",
    "LadaLM_DZE1",
    "HMMWV_Terminal_EP1",
    "Lada1_DZE1",
    "Lada1_DZE1",
    "datsun1_civil_3_open_DZE4",
    "datsun1_civil_3_open_DZE3",
    "LandRover_MG_TK_INS_EP1",
    "datsun1_civil_2_covered_DZE3",
    "LandRover_MG_TK_EP1",
    "datsun1_civil_3_open_DZE2",
    "LandRover_SPG9_TK_INS_EP1",
    "datsun1_civil_2_covered_DZE2",
    "LandRover_SPG9_TK_EP1",
    "datsun1_civil_3_open_DZE1",
    "datsun1_civil_2_covered_DZE1",
    "datsun1_civil_2_covered_DZE",
    "SkodaGreen_DZE4",
    "ArmoredSUV_PMC",
    "SkodaBlue_DZE4",
    "SkodaGreen_DZE3",
    "SkodaRed_DZE3",
    "SkodaBlue_DZE3",
    "SkodaBlue_DZE2",
    "HMMWV_M1151_M2_CZ_DES_EP1_DZ",
    "HMMWV_M1151_M2_CZ_DES_EP1_DZE",
    "SkodaGreen_DZE1",
    "LandRover_Special_CZ_EP1_DZ",
    "SkodaRed_DZE1",
    "LandRover_Special_CZ_EP1_DZE",
    "SkodaBlue_DZE1",
    "LandRover_MG_TK_EP1_DZ",
    "Volha_1_TK_CIV_EP1_DZE4",
    "Volha_1_TK_CIV_EP1_DZE1",
    "LandRover_MG_TK_EP1_DZE",
    "GAZ_Vodnik_DZ",
    "ArmoredSUV_PMC_DZ",
    "GAZ_Vodnik_DZE",
    "ArmoredSUV_PMC_DZE",
    "ArmoredSUV_PMC_DZ",
    "MtvrRefuel_DZ",
    "UralRefuel_TK_EP1_DZ",
    "V3S_TK_EP1_DZE",
    "AV8B2",
    "CH_47F_EP1",
    "CH_47F_EP1_DZE",
    "MV22_DZ",
    "UH1Y_DZ",
    "Ka60_PMC",
    "L39_TK_EP1",
    "BAF_Apache_AH1_D",
    "AW159_Lynx_BAF",
    "CH_47F_BAF",
    "CSJ_GyroP",
    "CSJ_GyroCover",
    "CSJ_GyroC"
    ];
    

     

  10. A very simple solution is just to set these:

    _obj setVariable["Colour","0",true];
    _obj setVariable["Colour2","0",true];
    

    to the selected vehicle.

    However, this will only unpaint the vehicle on server restart.

    not working.

     

    vehicleColourPaintDefalt.sqf

    private ["_PUID"];
    _PUID = (getPlayerUID player);
    
    	PVDZE_veh_Colour = [VehicleToPaint,"0","0",_PUID,dayz_playerName];
    	publicVariableServer "PVDZE_veh_Colour";
    
    	titleText ["ok. color be default after restart","PLAIN DOWN"];
    
    

    in fn_selfActions.sqf

    for what _this call player_paint;? why dont do right:

    _paint = player addAction ["Paint", "scripts\paint\player_paint.sqf",_cursorTarget, 2, true, true, "", ""];
    

    then

     

    player_paint.sqf

    VehicleToPaint = _this select 3;
    
  11. some fix by F507DMT

     

    hi all! I noticed a problem when transferring money to another player, the money is taken, but do not reach the recipient.

    if u have lo fps, when u give money and move cursor from player, u can give money to car.. or tree))

    i fix this like this:

     

    in give_player_dialog.sqf add bottom:

    TargetToGiveCoint =  _this select 3;

    in init.sqf find this:

    _target = cursorTarget;
    

    change to this:

    _target = TargetToGiveCoint;
    

    it fix scroll & low fps. but the first translation is still sometimes lost.... help?

     

     

    Possible can duping whitch change skin:

    drop fps, open bank, give all money from bank, skin changet... duping. many ways duping like this..

     

    i fix this like this:

    in init.sqf find:

    BankDialogDepositAmount = {
    BankDialogWithdrawAmount = {
    GivePlayerAmount = {
    

    add in all like this:

    BankDialogDepositAmount = {
    if(DZE_ActionInProgress) exitWith { titleText ["i can`t now", "PLAIN DOWN", 0.5];};
    DZE_ActionInProgress = true;
    
    ///some code////
            if (_amount < 1 or _amount > _bank) exitWith {
    		cutText ["You can not withdraw more than is in your bank.", "PLAIN DOWN"];
                    DZE_ActionInProgress = false; //add this
    	};
    ///some code////
    
    DZE_ActionInProgress = false;
    };
    

    say target what i give him money

    add in init.sqf:

    GivePlayerAmount = {
    ///some code////
    [nil,_target,"loc", rTITLETEXT, format["Player %2 give to you %1 %3!",_amount,name player,CurrencyName], "PLAIN", 0] call RE;
    ///some code////
    };
    

    drop fps: "NumLock -" + "LShift" then jast write FPS, drop to 5-10fps. or use old PC))

    sorry for my bad eng

  12. fix by F507DMT

    OFFshowCinemaBorder  + skin fix(all skins in 1 location) + temp low viewdistance:

    _rpos1 = (random 2000);
    _rpos2 = (random 2000);
    _rpos3 =  [(_rpos1),(_rpos2),2500];
    
    /* Create the Preview-Platform - Position depends on amount of PVDZE_SkinPreviewCounter */
    _pvp1 = "MetalFloor_DZ" createVehicle _rpos3;
    _pvp1 setPosASL _rpos3;
    
    /* Set the unit's Spawnposition - Position depends on amount of PVDZE_SkinPreviewCounter */
    _unitSpawnPos = [(_rpos1),(_rpos2),2500.5];
    
    /* Get the Model name for createAgent function */
    _model = getText (configFile >> "CfgSurvival" >> "Skins" >> (_item select 0) >> "playerModel");
    
    /* Create the Unit with Model to preview - Hide from other Players view */
    previewUnit = createAgent [format["%1",_model], _unitSpawnPos, [], 0, "CAN_COLLIDE"];
    previewUnit setDir 180;
    previewUnit setPosASL _unitSpawnPos;
    previewUnit allowDammage false; previewUnit disableAI 'FSM'; previewUnit disableAI 'AUTOTARGET'; previewUnit disableAI 'TARGET'; previewUnit forceSpeed 0;
    
    /* playableUnits just holds the player himself when Server runs Infistar, dunno if correct, or why this but... */
    /* We check if Infistar is running and if not we can use a way better function to hide the unit from other players
    if (!(ServerRunsInfistar)) then {
    _initUnit = format["{if ((getPlayerUID _x) != %1) then {%2 hideObject true;};} forEach playableUnits;", (getPlayerUID player), previewUnit];
    uiSleep 0.1;
    previewUnit setVehicleInit _initUnit;
    uiSleep 0.1;
    processInitCommands;
    uiSleep 0.1;
    clearVehicleInit previewUnit
    };
    
    Create the Cam */
    //remember viewdistance
    _vd = viewdistance;
    setViewDistance 300;
    SkinPreview_Camera = "camera" camCreate [(_unitSpawnPos select 0), (_unitSpawnPos select 1) - 10,2502]; 
    showCinemaBorder false; 
    SkinPreview_Camera cameraEffect ["internal","back"];
    //////lower///
    camDestroy VehiclePreview_Camera;
    setViewDistance _vd;
     
    

     

     

     

     

    and i use this:

    taskHint ['For preview vehicle press F5 now', [0,0.4,1,1], 'taskNew'];
    

    OtterNas3 big thx!!!

×
×
  • Create New...