Mattar_Tharkari
-
Content Count
961 -
Joined
-
Last visited
-
Medals
Posts posted by Mattar_Tharkari
-
-
-
I think BOB was one of the best series ever made. I remember Heffron from the intros to the episodes - amazing people, they don't make them like that anymore.
-
Script that checks a trigger
while {true} do { if ({isPlayer _x} count list triggerName >0) then { playSound3D ["a3\sounds_f\sfx\radio\ambient_radio2.wss", player]; sleep 9; }; };
-
It's a long sound so put it in cfgMusic in description.ext
http://community.bistudio.com/wiki/description.ext#cfgMusic
and:
addMusicEventHandler ["MusicStop", {[] spawn {playMusic "myCustomSnd"}}];
http://community.bistudio.com/wiki/addMusicEventHandler
It means you will not be able to use other music tho, so alternative is to loop it in a script with a sleep 20;
-
This is a script I used for looking at locations. My advice is don't use location names in a condition - there are errors, double spaces etc and you run the risk of case errors and breakage after game updates. Use positions instead, they will not change much.
Island location names and location types are stored in:
configfile >> "CfgWorlds" >> "Stratis" >> "Names"; configfile >> "CfgWorlds" >> "Altis" >> "Names"
Check the map after you run this - each location returned is marked with a dot.
private ["_locTypeArr", "_islandNamesArr"]; _locTypeArr = [ "CityCenter", "NameCity", "NameCityCapital", "NameLocal", "NameMarine", "NameVillage" ]; _islandNamesArr = []; _locPosArr = []; _locNamePosArr = []; [_locTypeArr,[],true] call bis_fnc_locations; _nearbyLocations = nearestLocations [getPos player, _locTypeArr, 100000]; for "_i" from 0 to (count _nearbyLocations)-1 do { _location = _nearbyLocations select _i; _locationName = text _location; _locationPos = locationPosition _location; _locPosArr set [count _locPosArr, _locationPos]; _islandNamesArr set [count _islandNamesArr, _locationName]; _locNamePosArr set [count _locNamePosArr, _locationName]; _locNamePosArr set [count _locNamePosArr, _locationPos]; }; copyToClipboard (str (_locNamePosArr)); //copyToClipboard (str (_locPosArr)); //copyToClipboard (str (_IslandNamesArr));
returns:
StratisNames&Positions = ["Marina Bay",[2647.88,5989.95,0.0272767],"Stratis Air Base",[1987.31,5625.9,-5.96042],"Agia Marina",[2915.2,6164.52,-21.9009],"airfield",[1697.19,5554.18,-5.5],"military range",[3338.44,5744.44,-4.88803],"Nisi Bay",[1784.43,4134.31,-0.108548],"LZ Baldy",[4604.3,5284.43,-129.97],"Camp Tempest",[1941.68,3556.72,-2.7864],"Old Outpost",[4318.72,4398.14,-179.132],"Kyfi Bay",[1790.43,3511.78,-0.0459259],"Kill Farm",[4449.56,6845.08,-91.6142],"Camp Rogain",[4886.45,5948.26,-183.532],"Air Station Mike-26",[4278.85,3855.6,-217.831],"Xiros",[3712.09,7940.36,8.98282e-005],"Camp Maxwell",[3252.96,2984.3,-222.619],"Girna",[1935.28,2722.61,0],"Girna Bay",[1844.64,2656.39,-0.0684495],"Kamino Coast",[5690.81,6123.91,-20.3592],"Tsoukalia",[4205.64,2714.88,-42.5791],"Agios Ioannis",[3027.38,2183.84,-151.004],"Limeri Bay",[5439.83,3687.15,-0.0388827],"Tsoukala Bay",[4240.81,2497.99,-0.0881449],"LZ Connor",[2979.45,1860.23,-171.409],"Strogos Bay",[2024.23,1789.56,0.18036],"Keiros Bay",[6157.09,4348.65,0.0786062],"Kamino Firing Range",[6401.97,5427.13,-7.4887],"Agios Cephas",[2718.53,1712.08,-130.502],"Kamino Bay",[6544.24,4863.44,-0.0398011],"Jay Cove",[2250.92,1121.03,0.149186],"Pythos",[7055.11,5953.82,-12.5299],"The Spartan",[2615.44,597.12,-63.3172]]
AltisNames&Positions = ["AAC airfield",[11461.2,11661.7,-22.9852],"Drimea",[10781.9,10881.6,-4.18781],"Therisa",[10618.9,12237.3,-16.0326],"Melanera Bay",[11226.2,10574.7,0.0990249],"Poliakko",[10966.5,13435.3,-28.4601],"Katalaki",[11701.1,13672.1,-12.7303],"Vikos",[11556.9,9417.06,-19.3987],"Makrynisi",[13471.9,12018.5,-12.1029],"Zaros",[9091.81,11961.9,-19.9013],"Katalaki Bay",[12269.8,13659.3,0.0993053],"Zaros Bay",[9210.66,10250.5,0.130289],"Neochori",[12502,14337,-11.5868],"Alikampos",[11112.6,14573.7,-42.5353],"Xirolimni Dam",[9115.22,13959.8,-30.247],"Sagonisi",[14281.2,13469.3,-5.32024],"Faronaki",[14934.4,11079.5,-8.38552],"Stavros",[12950.1,15041.6,-28.1891],"Kavirida",[7324.24,12125.4,-31.3799],"Sfaka",[9213.95,8079.03,-43.0843],"Edessa",[7194.23,11044,0],"Lakka",[12282,15732.3,-23.0026],"Eginio",[11549.2,7088.39,-83.8615],"Edessa Bay",[6862.33,10614.1,-0.0100589],"Pyrgos Gulf",[15139.2,14229.9,-0.233896],"",[9287.66,15858.1,-120.663],"Agios Dionysios",[9187.95,15947.8,-124.829],"factory",[12577.4,16352.8,-34.1307],"Agios Kosmas",[8555.32,7335.51,-12.281],"Agios Panagiotis",[6272.75,12173.9,-169.473],"Naftia Bay",[12157.6,6376.24,-0.00999258],"Monisi",[7813.36,7641.19,-1.39881],"airbase",[14037.6,16143.3,-20.5917],"military",[12771.6,16694.3,-85.9974],"Edoris",[6002.75,10511.4,-39.4888],"dump",[5900.47,12454.4,-110.621],"Topolia",[7375.81,15429.5,-54.782],"Pyrgos",[16780.6,12604.5,-18.9913],"Chelonisi",[16636.5,13582.2,-12.1916],"quarry",[17060.5,11339.1,-24.4416],"Orino",[10410.4,17243.1,-82.7311],"Ekali",[17059.7,9992.32,-21.8159],"Cap Makrinos",[14225.9,6237.99,0.0118773],"Terminal",[14522.4,16833.9,-17.5812],"power plant",[15420.8,16223.6,-9.61744],"Panochori",[5033.31,11245.2,-48.317],"Iremi Bay",[5117.63,9761.5,-0.139221],"Kore",[7062.42,16472.1,-116.425],"Pyrgi",[14489.9,5871.7,-12.2289],"Amfissa",[8088.81,17257.7,-150.162],"factory",[5307.12,14500.1,-20.4377],"Stadium",[5429.69,14996.7,-24.4264],"Gravia",[14479.8,17614.3,-21.6749],"Koroni",[11786.7,18372.4,-51.9314],"military",[15137.2,17297.8,-17.8604],"Anthrakia",[16584.3,16104,-15.1762],"factory",[6109.49,16246.2,-43],"quarry",[4379.15,12594.4,-39.3548],"",[4183.13,11744,-54.0805],"military",[16030.4,17004.8,-13.5195],"Neri",[4116.11,11736.1,-50.8535],"Syrta",[8625.13,18301.6,-179.297],"Panochori Bay",[4005.29,9908.59,-0.2215],"Telos",[16207,17296.7,-24.3308],"Galati",[10270.3,19036,-120.191],"mine",[18435.1,14301.8,-25.5322],"Athira",[13993,18709.4,-25.735],"Charkia",[18049.1,15264.1,-28.4237],"",[3620.39,13092.8,-10.243],"Athanos",[3571.22,10243.7,-18.4611],"Livadi",[18410.5,8098.3,-1.81681],"Negades",[4885.98,16171.3,-77.5036],"factory",[14294.6,18928.5,-36.7832],"Aggelochori",[3687.78,13776.1,-10.7639],"power plant",[4163.6,15047.2,-17.0033],"Kavala",[3458.95,12966.4,-6.1822],"storage",[18260.6,15551.2,-47.3991],"Neri Bay",[3166,11234.2,-0.116616],"Dorida",[19336.9,13252.3,-37.8615],"Ifestiona",[12787,19679.3,-46.1323],"Kavala Pier",[3014.83,12587.3,-2.57609],"Gori",[5455.72,17553.7,-70.9608],"Kastro",[3041.4,13162.8,-49.9934],"Kavala Bay",[3004.58,13675.9,-0.241818],"Cap Drakontas",[2657.32,11461.5,-21.2495],"Chalkeia",[20194.6,11660.7,-45.8388],"",[9459.62,20281.9,-127.433],"Abdera",[9425.42,20284,-122.26],"Savri",[2370.95,11507,-19.6032],"Rodopoli",[18753.4,16597.1,-32.1656],"Nifi",[19473.3,15453.7,-22.9098],"quarry",[19566.4,15617.3,-43.9734],"Kalithea",[17826.5,18129.4,-1.99341],"Fournos",[2313.67,9289.31,-11.5702],"Agios Konstantinos",[3948.77,17277.8,-11.6385],"Negades Bay",[3458.04,16859.6,0.0548031],"Panagia",[20490.2,8907.12,-34.5332],"Frini",[14612.5,20786.7,-47.0032],"Zeloran",[17043.5,19592.2,-5.22081],"Kalithea Bay",[18161,18676.6,0.0527949],"Agios Petros",[19339.4,17641.6,-37.4067],"Surf Club",[21339.4,10434,-4.49371],"Limni",[20920.8,14775.4,-2.11256],"Aktinarki",[21449.9,10873.8,-13.4104],"Cap Zefyris",[18049.3,19186.6,-16.9618],"dump",[5887.13,20236.5,-214.292],"Aristi",[7914.05,21305.2,-83.2944],"Agia Triada",[16668.5,20487,-4.767],"Chalkeia Bay",[21859.6,12594.9,0.16228],"Selakano",[20769.8,6736.46,-37.9427],"Fotia",[2993.48,18517.4,-31.7708],"Krya Nera",[9681.58,22294.5,-2.82557],"Paros",[20885.4,16958.8,-49.8089],"Feres",[21640.7,7583.93,-14.1929],"Kalochori",[21351.6,16361.9,-20.5678],"Ammolofi Bay",[9525.44,22649,-0.00713642],"Trachia",[22128.1,8453.98,-5.96645],"Agios Georgios",[20296.3,18635.1,-49.9897],"Tonos Bay",[11988.3,22985.7,0.0140989],"Cap Kategidis",[22792,13638.4,-16.6444],"Nychi",[16837.4,21890,-9.70004],"Mazi",[21772.4,6014.53,-7.89761],"Oreokastro",[4560.45,21460.6,-302.575],"Faros",[6565.3,22639.1,-94.2945],"Mazi Bay",[22181.4,6154.23,-0.0281507],"Thelos Bay",[22979.7,14939,-0.0635247],"castle",[4802.99,21855.5,-320.955],"Agia Pelagia",[22707.6,6930.57,-14.5643],"Cap Agrios",[14688.2,23496.2,-22.4582],"Ochrolimni",[23650.1,16227.3,-5.27635],"Pefkas Bay",[21204.7,20464.6,0.0519068],"Cap Thelos",[24067.6,15560.3,-11.5846],"Atsalis",[8304.83,25081.2,-77.0965],"Bomos",[2307.31,22165.2,-94.7805],"Almyra",[23495.6,18392.6,-3.19],"Iraklia",[21628.3,21274.9,-21.5588],"Ioannina",[23199.7,19986.6,-14.2541],"Delfinaki",[23908.6,20144.7,-14.0692],"military",[23533.2,21108,-92.5423],"Nidasos",[23662.9,21796.1,-52.2432],"power plant",[25462.6,20357.7,-9.55156],"military",[25350.6,21790.9,-79.3826],"Sofia",[25680.5,21365.1,-20.7333],"Sideras",[23274.5,24198.3,0.0333603],"Gatolia",[26723,21230.3,-15.8345],"Galana Nera Bay",[24924.1,24206.6,-0.0445134],"Limnichori",[25703.7,23561.6,-4.22667],"Molos",[26943.9,23170.7,-18.0848],"Molos Airfield",[26939.8,24743.8,-20.3838],"Polemistia",[27998.6,23775.8,0.000439519],"Molos Bay",[27826.8,24244.4,0.0831464],"Cap Strigla",[28059.2,25626.4,-33.4305]]
If you really need to use the name then:
_nearbyLocations = nearestLocations [getPos player, _locTypeArr, 100000]; _location = _nearbyLocations select 0; _locationName = text _location; if (_locationName == "Marina Bay") then {hint "you are at Marina Bay";};
-
skins for the mh-9:
//null = [this] execVM "heliSkins.sqf"; waituntil {!isnull player}; sleep 1; _heli = _this select 0; _skins = [ "A3\Air_F\Heli_Light_01\Data\Heli_Light_01_ext_Blufor_CO.paa", "A3\Air_F\Heli_Light_01\Data\heli_light_01_ext_uni_mc.paa", "A3\Air_F\Heli_Light_01\Data\heli_light_01_ext_indp_co.paa", "A3\Air_F\Heli_Light_01\Data\heli_light_01_ext_co.paa", "A3\Air_F\Heli_Light_01\Data\heli_light_01_ext_blue_co.paa", "A3\Air_F\Heli_Light_01\Data\heli_light_01_ext_ion_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_blueline_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_digital_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_elliptical_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_graywatcher_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_jeans_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_shadow_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_sheriff_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_furious_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_speedy_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_sunset_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_vrana_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_wasp_co.paa", "A3\Air_F\Heli_Light_01\Data\Skins\heli_light_01_ext_wave_co.paa" ]; for "_i" from 0 to (count _skins)-1 do { _skin = _skins select _i; player sidechat str _skin; _heli setObjectTexture [0,_skin]; sleep 5; };
-
placed 6 different types with hunting backpack furthest distance from AI, - this works:
_unit = _this select 0; _array = nearestObjects [_unit, ["WeaponHolder"], 25]; for "_i" from 0 to (count _array)-1 do { _wh = _array select _i; if ((typeOf (firstBackpack _wh)) == "B_HuntingBackpack") then { _bp = firstBackpack _wh; _unit action ["AddBag", _wh, typeOf _bp]; }; };
(it checks a radius of 25m so change that if you need a wider search)
-
player action ["getInCargo", heli1, 0];
If you put that in the onAct of the waypoint and place the waypoint on the left side of the Mh9 it's reasonably good.
http://community.bistudio.com/wiki/ArmA_3:_Actions#GetInCargo
-
This works, it's the same backpack - contents are stored correctly:
http://community.bistudio.com/wiki/ArmA_3:_Actions#AddBag
gunner1 action ["AddBag", (nearestObject [gunner1, "WeaponHolder"]), typeOf firstBackpack (nearestObject [gunner1, "WeaponHolder"])];
or a sqf
_handle = [gunner1] execVM "findBagAddBag.sqf";
_unit = _this select 0; _array = nearestObjects [_unit, ["WeaponHolder"], 25]; for "_i" from 0 to (count _array)-1 do { _wh = _array select _i; if (!isNull (firstBackpack _wh)) then { _bp = firstBackpack _wh; _unit action ["AddBag", _wh, typeOf _bp]; }; };
-
You can add the actions back and just live with the glitches, script here for GhostHawk? The same thing can be done for all helicopters and possibly the vehicles.
(that script I wrote locks the cargo space when the doors are shut - just remove the lockCargo lines if you don't need that.)
http://forums.bistudio.com/showthread.php?169533-Ghost-Hawk-Door-Animation-Functionality
-
alternate method:
_table = "Land_CampingTable_F" createVehicle getPos player; _wh = createVehicle ["groundWeaponHolder", getPos _table, [], 0, "can_collide"]; _wh addWeaponCargo ["H_PilotHelmetHeli_B", 1]; _wh setPos (_table modelToWorld [0,-0.5,-0.87]); [_wh, 90, 0] call BIS_fnc_setPitchBank;
updated
-
There are many posts in the editing section about backpacks and this mission may help somewhat.
With this you can browse through all 144 backpacks currently in the game, try them out, view contents, use a 3dText class hint, copy className to clipboard, fill them from ammo boxes, copy loadouts to clipboard, create arrays, assemble/disassemble static weapons, fly UAVs etc.
VAS is included as are all ammo boxes and static weapons. Full instructions in the briefing.
Installation:
Place the .pbo in your \Program Files (x86)\Steam\SteamApps\common\Arma 3\Missions folder
Play from scenarios or DePbo and open in the editor.
Unzip the 7zip folder and place in \Documents\Arma 3 - Other Profiles\PlayerName\missions
Images:
Layout:
http://31.media.tumblr.com/befec2ffbc8ed2475b9842b656c10f7f/tumblr_mxf1g4AKws1sneir7o1_1280.jpg
Info Displays:
http://24.media.tumblr.com/567970201b5133fe40545c0817015545/tumblr_mxf1g4AKws1sneir7o2_1280.jpg
Output:
PLAYER BACKPACK:Name: Carryall Backpack (MTP) Class: "B_AssaultPack_mcamo_Ammo" Load: 320 | Max: 320 | 100% Full ITEMS:[["FirstAidKit"],[4]] WEAPS:[[],[]] MAGS:[["30Rnd_65x39_caseless_mag","NLAW_F","HandGrenade","SmokeShell","SmokeShellGreen","SmokeShellBlue","SmokeShellOrange","Chemlight_green"],[14,1,4,4,4,4,4,4]] scope:1
All weapons/items/mags in the backpack and amount in order.
or use the cursor target 3dText class hint to copy class names into an array e.g:
["B_Carryall_oucamo_AAT","B_Carryall_oucamo_AAA","B_FieldPack_oucamo_Ammo","B_Carryall_oucamo_Exp","B_Carryall_oucamo_Eng"]
Download .pbo:
https://dl.dropboxusercontent.com/u/37698503/BackPack_Browser_lite.Altis.pbo
Download .7z
https://dl.dropboxusercontent.com/u/37698503/BackPack_Browser_lite.Altis.7z
Armaholic mirror:
-
if (vehicleVarName player == "CAS1" || vehicleVarName player == "CAS2" || vehicleVarName player == "CAS3") then {
-
Bottom right:
[[ ["Coast of South ALTIS","<t align = 'right' shadow = '1' size = '0.7' font='PuristaBold'>%1</t><br/>"] ],-safezoneX,1.1] spawn BIS_fnc_typeText;
Top right:
[[ ["Coast of South ALTIS","<t align = 'right' shadow = '1' size = '0.7' font='PuristaBold'>%1</t><br/>"] ],-safezoneX,-0.2] spawn BIS_fnc_typeText;
-
What happens if you delete and replace them? Obviously it's a problem if there are a lot but for a few groups just swap them out at the time of the explosion? Or if the player hasn't yet seen them - spawn them after.
-
RIP it's a shame none of those who followed in his footsteps could fill a cm³ of his shoes.
-
If you want to test it put this in an empty heli init field and copy the script into an sqf:
_hdl = [this] execVM "heliDoors.sqf";
-
-
I think the use of map locations is decreasing (there were less in A2OA than A2), empty arrays because there aren't any logics there. If you use the function in debug mode it doesn't place any markers:
[["FlatArea","FlatAreaCity","FlatAreaCitySmall"],[],true] call bis_fnc_locations;
These are the few that work (anything with a name on the map):
[["NameCityCapital","NameCity","Mount","NameMarine"],[],true] call bis_fnc_locations;
-
So it has an AI pilot? <<--- that's ur problem? It would work much better as a missile with velocity/pitch/bank changes. Check out the guided missile script on Kylanias website. You could probably use the AI to fly it to the target, delete the pilot for the last 500m and use a guidance script for the terminal phase?
-
units groupname just creates an array and is the most common used. You just need an array there - could also be [unit1,unit2.unit3];
or
_array = nearestObjects [[2716,2949,0], ["B_Soldier_base_F"], 100];
to find all the Blufor soldiers 100m from a position. Look in the Splendid Config viewer for more options.
-
Have a look at the functions viewer, note at the top of each function that indicates use, you don't need the functions module any longer - that was only for A2.
Scenes Functions
UnitCapture "Records movement data of input unit over a specified period of time. If the 4th parameter set to true, will record weapons fire data as well."
UnitCaptureFiring "Records weapon fire data of input unit over a specified period of time.";
UnitCaptureSimple "(Simplified) Records only movement and dir data of input unit. If the 4th parameter set to true, will record weapons fire data as well."
UnitPlay "Plays back input movement data on input unit. The data can be pre-recorded using the UnitCapture script."
UnitPlaySimple "(Simplified) Plays back input movement and dir data on input unit. The data can be pre-recorded using the UnitCaptureSimple script."
UnitPlayFiring "Plays back input weapon fire data on input unit. The data can be pre-recorded using the UnitCapture or UnitCaptureFiring script."
-
/*Script for "B_Heli_Transport_01_F" - "UH-80 Ghost Hawk" allows only pilot/ copilot to operate doors, locks cargo if doors closed. usage: _hdl = [this] execVM "heliDoors.sqf"; _hdl = [heliName] execVM "heliDoors.sqf"; */ _vcl = _this select 0; {_vcl animateDoor [_x, 1];} forEach ["door_L","door_R"]; _vcl addAction ["<t color='#FF0000'>[Open Doors]</t>", { {(_this select 0) animateDoor [_x, 1];} forEach ["door_L","door_R"]; (_this select 0) lockCargo false; },"",0.1,false,true,"","(driver _target == _this || _target turretUnit [0] == _this) && ((_target doorPhase 'door_R') < 1)"]; _vcl addAction ["<t color='#FF0000'>[Close Doors]</t>", { {(_this select 0) animateDoor [_x, 0];} forEach ["door_L","door_R"]; (_this select 0) lockCargo true; },"",0.1,false,true,"","(driver _target == _this || _target turretUnit [0] == _this) && ((_target doorPhase 'door_R') > 0)"];
-
search for BIS_fnc_typeText
Help with Artillery Script
in ARMA 3 - MISSION EDITING & SCRIPTING
Posted · Edited by Mattar_Tharkari
^ noticed what Ryd said so was re-writing it:
Note - the vehicle has limited ammo eg only x4 "2Rnd_155mm_Mo_guided" - so will stop firing after 4 shots with that ammo type, so I added a reload. It will also pause to reload as the magazine only has 2 rounds. In effect you are asking it to fire more rounds than are in the magazine. So also got the magazine contents and used that for _chances.