second_coming Posted April 21, 2015 Author Report Share Posted April 21, 2015 Any plans on separating the success chances depending on ie. if it's a car, chopper or door? I think lockpicks should have higher success rates on cars for example. Try this (original download updated to include this change also: https://www.dropbox.com/s/fckqubg2mvw21r1/AutoLockPicker.rar?dl=0 /* AutoLockPicker by second_coming (http://epochmod.com/forum/index.php?/user/16619-second-coming/) with help from SpiRe Allow players to have a chance to lock pick any vehicle or locked door (also a chance to eloctrocute on failed unlocking!) Initial Script Code: Stealthstick's "Explosive-To-Vehicle" Script Electrocution effect: http://www.altisliferpg.com/topic/224-effects-on-marijuana-use/ v1.2 Swapped to cursortarget instead of the nearest item to get around putting the AutoLockPicker onto the wrong item Added variables for the materials required Added EnergyRequired Added AllowLockPicksNear to stop multiple locks being placed together */ // ====================================================================================================================================================================================== // User configurable Variables // ====================================================================================================================================================================================== // Which locks can be opened LockpickLandVehicles = true; // All land vehicles (cars, vans, trucks etc) ::: acceptable values true or false LockpickAir = true; // Helis and jets ::: acceptable values true or false LockpickShip = true; // Boats, jetskis and submarines ::: acceptable values true or false LockpickEpochDoors = true; // Epoch build-able doors ::: acceptable values true or false // Chance to succeed or be electrocuted SuccessChanceVehicles = 20; // (Between 1-100) % Chance to successfully pick the lock SuccessChanceEpochDoors = 20; // (Between 1-100) % Chance to successfully pick the lock ElectrocuteChance = 10; // (Between 1-100) % Chance of electrocution on if the lock pick fails // Damage Settings InflictDamage = true; // If true damage is added, if false just stun MinimumDamage = 50; // (Between 1-100) min% of full health Damage to inflict must be less than MaximumDamage MaximumDamage = 90; // (Between 1-100) max% of full health Damage to inflict must be more than MinimumDamage StunTime = 15; // Time in seconds to stun the player on electrocution (if it doesn't kill them) // Materials Required to Create AutoLockPicker EnergyRequired = 100; // Amount of energy expended operating AutoLockPicker (0 for zero energy required) MaterialRequired1 = 'CircuitParts'; // First material required to create AutoLockPicker (default is 'CircuitParts' or Electronic Component) MaterialRequired1Count = 1; MaterialRequired2 = 'ItemCorrugated'; // Second material required to create AutoLockPicker (default is 'ItemCorrugated' or small metal parts) MaterialRequired2Count = 1; // Usage Restrictions AllowInSafeZone = false; // (Leave true if you don't use inSafezone) Allow use of AutoLockPicker in safezones // (using the boolean variable inSafezone set here http://epochmod.com/forum/index.php?/topic/32555-extended-safezone-script-working/) _MinimumPlayers = 0; // Number of players required online before the option to lock pick becomes available (set to 0 to always allow) AllowLockPicksNear = false; // (Leave true for no restriction) selecting false will make the script check if one has been placed within 5m of the player // ====================================================================================================================================================================================== // End of User configurable Variables // ====================================================================================================================================================================================== if(AllowInSafeZone && count playableUnits >= _MinimumPlayers) then { SafeToALP = true; } else { if(!inSafezone && count playableUnits >= _MinimumPlayers) then { SafeToALP = true; } else { SafeToALP = false; }; }; LockPickableItems = []; if(LockpickLandVehicles) then { LockPickableItems = LockPickableItems + ["LandVehicle"]; }; if(LockpickAir) then { LockPickableItems = LockPickableItems + ["Air"]; }; if(LockpickShip) then { LockPickableItems = LockPickableItems + ["Ship"]; }; if(LockpickEpochDoors) then { LockPickableItems = LockPickableItems + ["CinderWallGarage_EPOCH","WoodLargeWallDoorL_EPOCH","WoodLargeWallDoor_EPOCH"]; }; AutoLockPicker_MatsCheck = { _charge1 = _this select 0; _charge2 = _this select 1; _unit = _this select 2; _hasIt1 = _charge1 in (magazines _unit); _hasIt1Count = {_x == _charge1} count magazines player; _hasIt2 = _charge2 in (magazines _unit); _hasIt2Count = {_x == _charge2} count magazines player; _hasEnough = false; if(_hasIt1Count >= MaterialRequired1Count && _hasIt2Count >= MaterialRequired2Count) then { _hasEnough = true; }; _hasEnergy = false; if(EnergyRequired == 0 || EPOCH_playerEnergy - EnergyRequired >= 0) then { _hasEnergy = true; }; _CanPlace = false; _nearALP = nearestObjects [_unit,["Land_PortableLongRangeRadio_F"],5]; if(AllowLockPicksNear || (count _nearALP == 0 && !AllowLockPicksNear)) then { _CanPlace = true; }; _target = cursorTarget; _LockPickable = false; if ((typeOf cursorTarget) in LockPickableItems) then { _LockPickable = true; } else { if (_target isKindOf "LandVehicle" && LockpickLandVehicles) then { _LockPickable = true; }; if (_target isKindOf "Air" && LockpickAir) then { _LockPickable = true; }; if (_target isKindOf "Ship" && LockpickShip) then { _LockPickable = true; }; }; //hint format ["Target: %1 Lockpickable: %2 Locked: %3 Distance: %4",(typeOf cursorTarget),_LockPickable,locked cursorTarget,_unit distance cursorTarget]; _nearVehs = false; if (_LockPickable && _unit distance _target < 5 && (locked _target == 2 || locked _target == -1) ) then { _nearVehs = true; }; _return = (_hasEnough && _nearVehs && alive _unit && SafeToALP && _hasEnergy && _CanPlace); _return }; AutoLockPicker_Activate = { _array = _this select 3; _unit = _array select 0; _lockpicks = _unit getVariable ["lockpicks",[]]; { if(alive _x && SafeToALP) then { _nearVehicle = (nearestObjects [_x,LockPickableItems,5]) select 0; if ((typeOf _nearVehicle) in ["CinderWallGarage_EPOCH","WoodLargeWallDoorL_EPOCH","WoodLargeWallDoor_EPOCH"]) then { SuccessChance = SuccessChanceEpochDoors; } else { SuccessChance = SuccessChanceVehicles; }; // Chance to unlock _chance = Ceil random 100; if(_chance <= SuccessChance) then { // Unlock the door or vehicle deleteVehicle _x; ALPUNLOCK = [_nearVehicle]; uiSleep 3; publicVariableServer "ALPUNLOCK"; uiSleep 1; if ((typeOf _nearVehicle) in ["CinderWallGarage_EPOCH","WoodLargeWallDoorL_EPOCH","WoodLargeWallDoor_EPOCH"]) then { hint "The AutoLockPicker worked! Opening door"; _nearVehicle animate ['open_left', 1]; _nearVehicle animate ['open_right', 1]; _nearVehicle animate ['Open_Door', 1]; } else { hint "The AutoLockPicker worked! Unlocking Vehicle"; } } else { _chance2 = Ceil random 100; if(_chance2 <= ElectrocuteChance) then { // Chance of electrocution _DamagetoInflict = (Ceil random (MaximumDamage - MinimumDamage))/100; _damage = Damage player; _damage = _damage + (MinimumDamage/100) + _DamagetoInflict; playSound "shocker"; if(_damage > 1 && InflictDamage) then { hint "The AutoLockPicker malfunctioned and electrocuted you"; // Activate ppEffects "chromAberration" ppEffectEnable true; "radialBlur" ppEffectEnable true; enableCamShake true; // 5secs of effects for "_i" from 0 to 4 do { "chromAberration" ppEffectAdjust [random 0.25,random 0.25,true]; "chromAberration" ppEffectCommit 1; "radialBlur" ppEffectAdjust [random 0.02,random 0.02,0.15,0.15]; "radialBlur" ppEffectCommit 1; addcamShake[random 3, 1, random 3]; uiSleep 1; }; //Stop effects "chromAberration" ppEffectAdjust [0,0,true]; "chromAberration" ppEffectCommit 5; "radialBlur" ppEffectAdjust [0,0,0,0]; "radialBlur" ppEffectCommit 5; uiSleep 6; //Deactivate ppEffects "chromAberration" ppEffectEnable false; "radialBlur" ppEffectEnable false; resetCamShake; player setDamage 1; } else { hint "The AutoLockPicker malfunctioned and gave you an electric shock"; if(InflictDamage) then { player setDamage _damage; }; player playMove "amovpknlmstpsraswrfldnon"; // Activate ppEffects "chromAberration" ppEffectEnable true; "radialBlur" ppEffectEnable true; enableCamShake true; uiSleep 1; // Stop the player from moving while shocked player enablesimulation false; // StunTime seconds of effects for "_i" from 0 to StunTime do { "chromAberration" ppEffectAdjust [random 0.25,random 0.25,true]; "chromAberration" ppEffectCommit 1; "radialBlur" ppEffectAdjust [random 0.02,random 0.02,0.15,0.15]; "radialBlur" ppEffectCommit 1; addcamShake[random 3, 1, random 3]; uiSleep 1; }; player enablesimulation true; //Stop effects "chromAberration" ppEffectAdjust [0,0,true]; "chromAberration" ppEffectCommit 5; "radialBlur" ppEffectAdjust [0,0,0,0]; "radialBlur" ppEffectCommit 5; uiSleep 6; //Deactivate ppEffects "chromAberration" ppEffectEnable false; "radialBlur" ppEffectEnable false; resetCamShake; }; deleteVehicle _x; } else { hint "The AutoLockPicker failed to unlock the door, try again"; deleteVehicle _x; } }; }; } forEach _lockpicks; _unit setVariable ["lockpicks",[]]; }; AutoLockPicker_UnitCheck = { private "_return"; _unit = _this select 0; _lockpicks = _unit getVariable ["lockpicks",[]]; if(count _lockpicks > 0) then { _return = true; } else { _return = false; }; _return }; AutoLockPicker_AttachALP = { _array = _this select 3; _charge = _array select 0; _unit = _array select 1; private "_class"; _unit removemagazines [MaterialRequired1, MaterialRequired1Count]; _unit removemagazines [MaterialRequired2, MaterialRequired2Count]; EPOCH_playerEnergy = EPOCH_playerEnergy - EnergyRequired; _unit playMove "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon"; switch _charge do { case "Land_PortableLongRangeRadio_F": { _class = "Land_PortableLongRangeRadio_F"; }; }; _nearVehicle = (nearestObjects [_unit,LockPickableItems,5]) select 0; _autolockpick = _class createVehicle [0,0,0]; _autolockpick attachTo [_unit,[0,0,0],"leftHand"]; _random0 = random 180; _random1 = random 180; [_autolockpick,_random0,_random1] call BIS_fnc_SetPitchBank; [_autolockpick,_nearVehicle,_unit,_random0,_random1] spawn { _autolockpick = _this select 0; _nearVehicle = _this select 1; _unit = _this select 2; _random0 = _this select 3; _random1 = _this select 4; uiSleep 1.5; _autolockpick attachTo [_nearVehicle, [0,0,0.2]]; [_autolockpick,_random0,_random1] call BIS_fnc_SetPitchBank; _unit setVariable ["lockpicks",(_unit getVariable ["lockpicks",[]]) + [_autolockpick]]; }; }; AutoLockPicker_Actions = { private ["_unit"]; _unit = _this select 0; _unit addAction ["<t color=""#0099FF"">" +"Attach AutoLockPicker", AutoLockPicker_AttachALP, ["Land_PortableLongRangeRadio_F",_unit], 1, true, true, "","[MaterialRequired1,MaterialRequired2,_target] call AutoLockPicker_MatsCheck"]; _unit addAction ["<t color=""#3D993D"">" +"Activate AutoLockPicker", AutoLockPicker_Activate, [_unit], 1, true, true, "","[_target] call AutoLockPicker_UnitCheck"]; }; //removeAllActions player; //======================= [player] call AutoLockPicker_Actions; Link to comment Share on other sites More sharing options...
ISupervisoRI Posted April 23, 2015 Report Share Posted April 23, 2015 Hi Second, i updatet yesterday your AutoLockpicker Script and now it doesn't work any more. It shows the attach Autolockpicker menu but it doesn't attach anything. Did you have any advice for me? THANKS Tony Link to comment Share on other sites More sharing options...
second_coming Posted April 23, 2015 Author Report Share Posted April 23, 2015 Did you have any energy? the newer vesion adds the requirement for 100 energy to lock pick. If you edit the settings at the top you can change it to 0 energy required. Link to comment Share on other sites More sharing options...
ISupervisoRI Posted April 23, 2015 Report Share Posted April 23, 2015 Hi Second, yeah i noticed the changes and i tested everything before i wrote the post. Maybe its the Earplugscript from CM that cause this problem. I will test it later whitout it. Link to comment Share on other sites More sharing options...
ISupervisoRI Posted April 24, 2015 Report Share Posted April 24, 2015 Ok I figuered it out. In your updatet Version is a problem with inSafezone. I put the older version up again and everything is working fine. CU Link to comment Share on other sites More sharing options...
Darth_Rogue Posted May 2, 2015 Report Share Posted May 2, 2015 With the current version off DropBox the lockpicker doesn't work. It says it's successful but it doesn't actually unlock the vehicle. Using Infistar AH. No script errors. Link to comment Share on other sites More sharing options...
second_coming Posted May 3, 2015 Author Report Share Posted May 3, 2015 Try it again Darth, I added the ability to require multiple amounts of the materials to create the lock pick but the code to remove the items from the players inventory was bugged. It should be sorted now. https://www.dropbox.com/s/fckqubg2mvw21r1/AutoLockPicker.rar?dl=0 original link updated also Link to comment Share on other sites More sharing options...
happydayz Posted May 3, 2015 Report Share Posted May 3, 2015 Yeah not working for me either since last update - gives the script error regarding safezones Link to comment Share on other sites More sharing options...
happydayz Posted May 3, 2015 Report Share Posted May 3, 2015 I dont get any scroll icon or anything... tho the script is running and loading (with the error mentioned) Link to comment Share on other sites More sharing options...
Kasztura Posted May 3, 2015 Report Share Posted May 3, 2015 With the current version off DropBox the lockpicker doesn't work. It says it's successful but it doesn't actually unlock the vehicle. Using Infistar AH. No script errors. I have the same problem. Even newest wersion don't work. Link to comment Share on other sites More sharing options...
Friendly Posted May 3, 2015 Report Share Posted May 3, 2015 Thought it was just me so I sat in the shadows. I have been messing with it for a day now. DirtySanchez 1 Link to comment Share on other sites More sharing options...
second_coming Posted May 3, 2015 Author Report Share Posted May 3, 2015 Have you got the a3_epoch_autolockpicker.pbo installed in your @epochhive/addons folder? Link to comment Share on other sites More sharing options...
second_coming Posted May 3, 2015 Author Report Share Posted May 3, 2015 I dont get any scroll icon or anything... tho the script is running and loading (with the error mentioned) If you are using infiSTAR make sure you change the following in your run.sqf /* Check Actions Plr */ _CAP = false; /* true or false */ /* *experimental* - only logs to Surveillancelog so far */ /* Remove Actions Plr */ _OAP = false; /* true or false */ /* Remove ALL Actions on Player Object: (mousewheel actions) needs to be false for AltisLife for e.g. gathering */ Link to comment Share on other sites More sharing options...
second_coming Posted May 3, 2015 Author Report Share Posted May 3, 2015 Yeah not working for me either since last update - gives the script error regarding safezones If you don't use safezones you need to set the following to true in the script otherwise it will fail the safezone check and stop it working: AllowInSafeZone = true; Link to comment Share on other sites More sharing options...
Friendly Posted May 3, 2015 Report Share Posted May 3, 2015 If you don't use safezones you need to set the following to true in the script otherwise it will fail the safezone check and stop it working: AllowInSafeZone = true; I have it installed and it only works if I change AllowInSafeZone to false, then I click the option and nothing was happening. So as of now I am stumped. Link to comment Share on other sites More sharing options...
second_coming Posted May 3, 2015 Author Report Share Posted May 3, 2015 Thanks to Darth for finding a dropped bollock on my part :) Original download should also now be working properly: https://www.dropbox.com/s/fckqubg2mvw21r1/AutoLockPicker.rar?dl=0 Link to comment Share on other sites More sharing options...
second_coming Posted May 3, 2015 Author Report Share Posted May 3, 2015 Firstly, redownload the files and use the newest versions: https://www.dropbox.com/s/fckqubg2mvw21r1/AutoLockPicker.rar?dl=0 I have it installed and it only works if I change AllowInSafeZone to false, then I click the option and nothing was happening. So as of now I am stumped. That variable is only used to check to see if it safe to use the lock pick depending on the config you set: if(AllowInSafeZone && count playableUnits >= _MinimumPlayers) then { SafeToALP = true; } else { if(!inSafezone && count playableUnits >= _MinimumPlayers) then { SafeToALP = true; } else { SafeToALP = false; }; }; It also checks the number of players online so make sure you also set: _MinimumPlayers = 0; If all else fails insert this at line 70: SafeToALP = true; That will bypass the safety checks and just let you lockpick anywhere even if you are the only person on the server. Link to comment Share on other sites More sharing options...
happydayz Posted May 4, 2015 Report Share Posted May 4, 2015 hmmm still having issues with it not showing up and yes i have infistar, and yes i have all those options off as have other scroll menu scripts working. it all shows as loading and have added in messages to show that all of the script loads... just simply doesnt show the scroll option when u have all the items and its a locked door to you. cant figure it out... everything installed trying default method, removed all BE filters to test... nada :'( Link to comment Share on other sites More sharing options...
Darth_Rogue Posted May 4, 2015 Report Share Posted May 4, 2015 Check your script settings for energy requirements and make sure your player has enough energy to cover it. I made the same mistake. :) Link to comment Share on other sites More sharing options...
Kasztura Posted May 4, 2015 Report Share Posted May 4, 2015 Now the scipt works, thanks. Link to comment Share on other sites More sharing options...
Brinik Posted May 5, 2015 Report Share Posted May 5, 2015 hello, i downloaded the first page script, i installed it as you said but nothing happens, any idea? Link to comment Share on other sites More sharing options...
second_coming Posted May 5, 2015 Author Report Share Posted May 5, 2015 Do you get a wheel mouse menu when you have the required materials on you? If you do and it does nothing when you attach it did you install the pbo file into the @epochhive/addons folder? Link to comment Share on other sites More sharing options...
Brinik Posted May 5, 2015 Report Share Posted May 5, 2015 i installed the files at the right place, i just increased the value to 2 electro components + 2 salvage metal in order to craft but no calling sentence nor menu option :( Link to comment Share on other sites More sharing options...
second_coming Posted May 5, 2015 Author Report Share Posted May 5, 2015 i installed the files at the right place, i just increased the value to 2 electro components + 2 salvage metal in order to craft but no calling sentence nor menu option :( If you don't use safezones you must ensure that the following is set in the config at the top of the file: // Usage Restrictions AllowInSafeZone = true; Also make sure you have enough energy as well, you can set it to use 0 energy if required by changing the following: EnergyRequired = 0; // Amount of energy expended operating AutoLockPicker (0 for zero energy required) Also, check your server .rpt file for the following to make sure your serverside pbo is loading: "ALP# AutoLockPicker function ready" Link to comment Share on other sites More sharing options...
Tobias Solem Posted May 6, 2015 Report Share Posted May 6, 2015 Also check so that your antihack isn't blocking it. Link to comment Share on other sites More sharing options...