Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

Everything posted by mikey74

  1. mikey74

    LAMBS Improved Danger.fsm

    @nkenny yes it does do some anims. its based on morale of units within a certain range and distance. If it gets to low. They drop their weapons and surrender at this point. update: Had another mod running I over looked that does effect AI. Thanks for the compliment. 🙂
  2. mikey74

    LAMBS Improved Danger.fsm

    @nkenny No ACE. Just your mod, a few islands, unit mods like CUP, JSRS, CBA, and my surrender script. 🙂 Thanks for the reply.
  3. mikey74

    LAMBS Improved Danger.fsm

    mkenny. Looks very well done congrats! Just one question/ Is there anyway to turn it off for certain units. Example. I have a surrender script running, when I see the morale of certain groups break, and they go to surrender when vastly outgunned and pretty much no hope. They start to drop their weapons, buttt lol they go into what looks like a healing animation state and then pick back up there weapons and go back to fighting. Yes Its your mod. 😉 With AISS and FOA I put in a setvariable so that mission makers can turn off the AI scripts when needed. I was wondering if you have added something like this into LAMBS Improved Danger.fsm? Other than that. The AI look and respond very well. 🙂
  4. mikey74

    MBG Aliens Ground Forces

    That's a separate Addon.
  5. Wow... Glad I missed you leaving! I would have had to crack some heads to get you back. 😄 Glad youre back Jarhead. You're actually one of the best in the whole of the Arma modding community! Glad youre back. Hope youre here for a long time into Arma 4,5,6,7...….
  6. mikey74

    MBG Aliens Ground Forces

    added forcefields to your aliens... Place this script in Init.sqf of mission, or call in a config for addon. They admit a small glow until field is depleted by hits. When hit the glow grows brighter for a short time. They do not take damage till after field is depleted. I may rework it later to take into account kinetic energy, and explosive damage to effect the shields. Used Damage taken instead. Works just as well with less works and less FPS hits. This version has some particle effects: shield pic.... Video would be better though. The blur is something else unrelated to the alien shields. https://steamuserimages-a.akamaihd.net/ugc/798739516680410435/5C7074EDCBE8B2EAC6F7A5A4EE31970AA987F0EE/ https://youtu.be/dndWv6gfvF4
  7. Ambient battle sounds Module WIP Hi this is a new module for Arma 3. I've been using the triggers to give me some ambient combat sounds for missions. SO I create a module so I didn't have to through up several triggers to get a good back ground noise. lol Basically is a module found in the effects category of the module section. What it does is a loop of ambient battle sounds that's already built into arma 3. Its all random. You can set the size of the battle and intensity. Give it a try and let me know if you have suggestions. Ignorant and mean suggestions will be ignored! :p Thanks to Jigsor for a good script to start with. It started on this thread.:) 7/3/15 The new and improved AMBS. changes: Edited distant explosions added Categories for: Volume Pitch and Battle radius 7/14/15 This is a good video of the differences between different selections for AMBS. It still has old sounds, but GREAT presentation. :)
  8. I noticed if you place artillery on map they use it! But why have them kill each others HQ's right at the beginning of a mission? I replayed the mission I've been goofing with. Put HQ's in several different locations with same result. Shouldn't scouts find the HQ 1st then blow it to smithereens at least? Thanks in advance. :)
  9. Hi Never saw a throwable Satchel charge for arma 3. If so my apologies. lol Here it is Tsach v 0.01. Instructions: You can find a demolitions specialist in blufor units men. You will have to scroll through grenades. Then simply throw it, and run for your life. You have approx 14 seconds to get clear. Good for clearing mine fields and good for destroying or disabling vehicles. enjoy! Future updates: Add to Opfor and Independent units. Add groups with demo spec in it. Figure out how to link throwable with bis satchel so you can set timer. Recruit some one who does animations and create an under handed through. Have no clue how to do this. :(
  10. mikey74

    Standalone JTAC Script

    Maybe try this? _designatedPos = position laserTarget player; https://community.bistudio.com/wiki/laserTarget Brian I am also working on a script involving the USS Freedom AI taking off and landing. I finally got it working again. Would you be able to use this in with your Jtac script? I've still got things I'm working out, but was going to use it to make a support type script for Missions off the Freedom and Liberty. Time probably will not be kind to me. lol anywho same offer I make to others. if you need help give me a shout. If I can I will. :)
  11. GEORGE FLOROS GR I havnt and wont be able to have a look at your scripts for a few days, but looks interesting. I'm sure you are way more advanced at coding than I am, but let me know if you need help or some scripts. May be I have some or have started a few. ;) I'd be more than happy to contribute to your scripts or make a script pack for/with you if your interested and time permits.
  12. You can use stock Bis Scripts for that. ;) If you go into function in the editor the select Jets in one of the categories. Bis has some farely decent scripts. Yes. I've been considering it. Pretty sure as soon as I post it someone else will post one that's better. ;) lol If I get time and nothing pops up I may work on script packs and maybe modules. Been very busy in my life so all my mods have been neglected or plain abandoned.
  13. This is the Launch code I use to Launch the planes. params ["_plane","_dirCatapult","_velocityLaunch","_velocityIncrease","_accelerationStep","_posCatapult"]; _dirCatapult = (_dirCatapult - 0.3); _plane allowDamage false; _plane setAirplaneThrottle 1; _plane setPosWorld _posCatapult; private _velocity = 0; private _timeStart = time - 1.75; private _timeDelta = 0; _plane setVectorDir (surfaceNormal (getPosASL _plane)); _plane setDir _dirCatapult; [_plane, 0, 0] call BIS_fnc_setPitchBank; while { (speed _plane < (_velocityLaunch + 210) && {isEngineOn _plane && {((getPos _plane) param [2,0]) < 7}}) || _plane distance _posCatapult <= 140 } do { _plane setAirplaneThrottle 1; _timeDelta = (time - _timeStart); _velocity = _velocityIncrease * _timeDelta; _plane setVelocity [sin _dirCatapult * _velocity,cos _dirCatapult * _velocity,(velocity _plane select 2)]; if (_plane distance _posCatapult < 121 && (istouchingGround _plane)) then {[_plane, 0, 0] call BIS_fnc_setPitchBank} else {[_plane, -2, 0] call BIS_fnc_setPitchBank}; sleep _accelerationStep; }; This is Deck control script for Launching: _plane = param [0,objNull,[objNull]]; _hulls = param [1,["Land_Carrier_01_hull_04_1_F","Land_Carrier_01_hull_04_F","Land_Carrier_01_hull_07_1_F","Land_Carrier_01_hull_07_F"],[[]]]; _carrier = param [2,objNull,[objNull]]; _pos = param [3,(getPosWorld _plane),[[]]]; private _dir = getDir _plane; private _height = _pos select 2; _car_dir = getdir _carrier; _plane_dir = _plane getdir _carrier; //private _hull = selectRandom _hulls; private _partClass = ""; _partClass = switch (true) do { case ((_plane distance _carrier) < 100 && "Land_Carrier_01_hull_04_1_F" in _hulls): {"Land_Carrier_01_hull_04_1_F"}; case ((_plane distance _carrier) < 100 && "Land_Carrier_01_hull_04_F" in _hulls): {"Land_Carrier_01_hull_04_F"}; case ((_plane distance _carrier) > 100 && "Land_Carrier_01_hull_07_1_F" in _hulls): {"Land_Carrier_01_hull_07_1_F"}; case ((_plane distance _carrier) > 100 && "Land_Carrier_01_hull_07_F" in _hulls): {"Land_Carrier_01_hull_07_F"}; default { Nil }; }; if (isNil "_partClass") exitWith {hint "No carrier hull parts found"}; _catapult = switch (true) do { case (_partClass isEqualTo "Land_Carrier_01_hull_04_1_F"): {selectRandom ["Catapult1","Catapult1"]}; case (_partClass isEqualTo "Land_Carrier_01_hull_04_F"): {selectRandom ["Catapult1","Catapult2"]}; case (_partClass isEqualTo "Land_Carrier_01_hull_07_1_F"): {selectRandom ["Catapult3","Catapult4"]}; case (_partClass isEqualTo "Land_Carrier_01_hull_07_F"): {selectRandom ["Catapult3","Catapult4"]}; default { Nil }; }; if (isNil "_catapult") exitWith {hint "No catapults found"}; private _carrierObjects = _carrier nearObjects [_partClass , 200]; private _part = _carrierObjects param [0, objNull]; private _configPath = configfile >> "CfgVehicles" >> _partClass >> "Catapults" >> _catapult; private _animations = getArray (_configPath >> "animations"); private _memPoint = getText (_configPath >> "memoryPoint"); private _dirOffset = getNumber (_configPath >> "dirOffset"); private _posCatapult = _part modelToWorld (_part selectionPosition _memPoint); _posCatapult set [2, _height]; private _dirCatapult = (getDir _part - _dirOffset - 180) % 360; private _configPlane = configFile >> "CfgVehicles" >> typeOf _plane; private _velocityLaunch = getNumber (_configPlane >> "CarrierOpsCompatability" >> "LaunchVelocity") max 210; private _velocityIncrease = getNumber (_configPlane >> "CarrierOpsCompatability" >> "LaunchVelocityIncrease") max 35; private _accelerationStep = getNumber (_configPlane >> "CarrierOpsCompatability" >> "LaunchAccelerationStep") max 0.09; private _launchBar = getText (_configPlane >> "CarrierOpsCompatability" >> "LaunchBarMemoryPoint"); _car_dir = getdir _carrier; _plane_dir = _plane getdir _carrier; _dir_setting = if ((((_car_dir - _plane_dir) + 360) mod 360) <180) then { [_plane,(_car_dir - 90)] call UssF_fnc_USS_Freedom_AP_turn; } else { [_plane,(_car_dir + 90)] call UssF_fnc_USS_Freedom_AP_turn; }; [_plane,_part,_configPath,_memPoint,_posCatapult,_carrier] call UssF_fnc_USS_Freedom_GoCat; [_plane,_dirCatapult] call UssF_fnc_USS_Freedom_AP_turn; _plane setVariable ["Stayput",true,true]; [_plane,10] spawn UssF_fnc_USS_Freedom_Brakes; _plane animate ["wing_fold_l", 0]; _plane animate ["wing_fold_r", 0]; sleep 10; _plane setVariable ["Stayput",false,true]; waitUntil {_plane getVariable "BrakesRon"}; [_plane,_dirCatapult,_velocityLaunch,_velocityIncrease,_accelerationStep,_posCatapult] call UssF_fnc_USS_Freedom_Luanch; This is for Braking the plane so it doesn't drive off while you are trying to Launch it. params ["_plane","_howlong"]; private _howlong = if (isNil "_howlong") then {86400} else {_howlong}; private _pos = GetPosASL _plane; (vehicle _plane) forceSpeed 0; (vehicle _plane) disableAI "MOVE"; _timer = time + _howlong; _plane setVariable ["BrakesRon",true,true]; private _stay = true; while { _stay && (time < _timer) } do { _plane setPosASL _pos; _plane setVelocity [0,0,0]; doStop _plane; _plane stop true; _plane forceSpeed 0; _plane disableAI "MOVE"; sleep .001; _stay = if (!(_plane getVariable "Stayput") || (player in _plane)) then {false} else {true}; }; _plane setVariable ["BrakesRon",false,true]; _plane setVariable ["Stayput",false,true]; (vehicle _plane) forceSpeed -1; (vehicle _plane) enableAI "MOVE"; This is for Turning the plane on deck to taxi to launching spot: params ["_plane","_dir"]; if (_dir < 0) then { _dir = _dir + 360; } else { if (_dir >= 360) then {_dir = _dir - 360;}; }; private _turning = true; while {_turning} do { private _planeDir = (round _dir - round (getDir _plane)); if (_planeDir < 0) then { _planeDir = _planeDir + 360; } else { if (_planeDir >= 360) then {_planeDir = _planeDir - 360;}; }; if (speed _plane > 0) then {_plane setVelocity [0,0,0]}; private _dirAdj = if (_planeDir < 180) then {1} else {-1}; private _speedturn = if (_planeDir >= 5) then {3} else {1}; private _dirSet = ((getDir _plane) + (_dirAdj * _speedturn)); if (_dirSet < 0) then { _dirSet = _dirSet + 360; } else { if (_dirSet >= 360) then {_dirSet = _dirSet - 360;}; }; _plane setDir _dirSet; _turning = if (ceil (getDir _plane) == ceil _dir || floor (getDir _plane) == floor _dir) then {false} else {true}; sleep .001; }; This script sends the plane to Launch position: params ["_plane","_CarrierPart","_CarrierPartCfgCatapult","_mCfgCatapultMemPnt","_Catapult_pos","_carrier"]; (vehicle _plane) forceSpeed 0; (vehicle _plane) disableAI "ALL"; _pos = (ATLtoASL (_plane getPos [24,getDir _plane])); _reldirC = _plane getDir _pos; [_plane,_reldirC] call UssF_fnc_USS_Freedom_AP_turn; [_plane,_pos,_CarrierPart,_reldirC] call UssF_fnc_USS_Freedom_GoPark; _reldir = _plane getDir _Catapult_pos; [_plane,_reldir] call UssF_fnc_USS_Freedom_AP_turn; [_plane,_CarrierPart,_mCfgCatapultMemPnt,_reldir] call UssF_fnc_USS_Freedom_Go_attach_Cat; waitUntil {_plane distance2D _Catapult_pos < 3}; _plane setPosWorld _Catapult_pos; (vehicle _plane) forceSpeed -1; (vehicle _plane) enableAI "ALL"; _CarrierPartanimations = getArray (_CarrierPartCfgCatapult >> "animations"); [_CarrierPart, _CarrierPartanimations, 10] spawn BIS_fnc_Carrier01AnimateDeflectors; [_plane,_Catapult_pos,_CarrierPart,_CarrierPartanimations] spawn { params ["_plane","_Catapult_pos","_CarrierPart","_CarrierPartanimations"]; waitUntil {!(isTouchingGround _plane)}; [_CarrierPart, _CarrierPartanimations, 0] spawn BIS_fnc_Carrier01AnimateDeflectors; }; This is the init that gets it started: if !(isServer) exitWith {hint"notServer"}; UssF_fnc_USS_Freedom_Brakes = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_Brakes.sqf"; publicVariable "UssF_fnc_USS_Freedom_Brakes"; UssF_fnc_USS_Freedom_AP_turn = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_AP_turn.sqf"; publicVariable "UssF_fnc_USS_Freedom_AP_turn"; UssF_fnc_USS_Freedom_Go_attach_Cat = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_Go_attach_Cat.sqf"; publicVariable "UssF_fnc_USS_Freedom_Go_attach_Cat"; UssF_fnc_USS_Freedom_GoCat = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_GoCat.sqf"; publicVariable "UssF_fnc_USS_Freedom_GoCat"; UssF_fnc_USS_Freedom_Luanch = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_Luanch.sqf"; publicVariable "UssF_fnc_USS_Freedom_Luanch"; UssF_fnc_USS_Freedom_Luanch_Prep = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_Luanch_Prep.sqf"; publicVariable "UssF_fnc_USS_Freedom_Luanch_Prep"; UssF_fnc_USS_Freedom_GoPark = compile preprocessFileLineNumbers "CarCom\fn_USS_Freedom_GoPark.sqf"; publicVariable "UssF_fnc_USS_Freedom_GoPark"; UssF_fnc_USS_Freedom_Deck_control = compile preprocessFileLineNumbers "CarCom\fn_USSFreedom_Deckcontrol.sqf"; publicVariable "UssF_fnc_USS_Freedom_Deck_control"; hint "please wait"; waitUntil {time > 1}; _allAirports = allAirports; _airport = ((_allAirports select 1) select 0); _planes = nearestObjects [carrier1, ["Plane"], 500]; _hulls = nearestObjects [carrier1, ["Land_Carrier_01_hull_04_1_F","Land_Carrier_01_hull_04_F","Land_Carrier_01_hull_07_1_F","Land_Carrier_01_hull_07_F"], 500]; _hullsTypes = []; { _hullsTypes pushBack (typeOf _x); } forEach _hulls; _planesFront = []; _frontParking = []; _planesBack = []; _backParking = []; { private _plane = _x; _plane animate ["wing_fold_l", 1]; _plane animate ["wing_fold_r", 1]; if ((_plane distance carrier1) < 100) then { _planesFront pushBack _plane; _frontParking pushBack (getPosWorld _plane); } else { _planesBack pushBack _plane; _backParking pushBack (getPosWorld _plane); }; } forEach _planes; sleep 4; [_planesFront,_hullsTypes,carrier1,_airport] spawn { params ["_planesFront","_hullsTypes","_carrier","_airport"]; { _plane = vehicle _x; if ({alive _x}count (crew _plane) == 0) then {createVehicleCrew _x}; _plane engineOn false; _plane setVariable ["Stayput",true,true]; [_plane,4] spawn UssF_fnc_USS_Freedom_Brakes; sleep 4; [_plane,_hullsTypes,_carrier] call UssF_fnc_USS_Freedom_Deck_control; sleep 11 + (round (random 21)); _plane assignToAirport _airport; } forEach _planesFront; }; sleep 3 + random 4; [_planesBack,_hullsTypes,carrier1,_airport] spawn { params ["_planesBack","_hullsTypes","_carrier","_airport"]; { _plane = vehicle _x; if ({alive _x}count (crew _plane) == 0) then {createVehicleCrew _x}; _plane engineOn false; _plane setVariable ["Stayput",true,true]; [_plane,4] spawn UssF_fnc_USS_Freedom_Brakes; sleep 4; [_plane,_hullsTypes,_carrier] call UssF_fnc_USS_Freedom_Deck_control; sleep 14 + (round (random 18)); _plane assignToAirport _airport; } forEach _planesBack; }; sleep 240; { player setPosWorld _x; sleep 14; } forEach (_frontParking + _backParking); This is the mission I use for the scripts: Testing AI Launching and taxiing Still haven't worked on Landing and taxiing to parking spots, but smoothed up the Taxiing and Launching a good bit. It also Launches 2 planes at staggered time intervals. Feel free to use, edit, and share how you want. My only stipulation is. If you find a better way, or something that will help other learn. SHARE your findings here. So that others may be able to learn and help the community. Some of the scripts above are edited from BIS original scripts.
  14. Does anybody know how to make AI pilots level out Flaps, rudders and anything else on the jets so it will take off straight?
  15. Looks like we are working through the next few weekends. So progress will be slowed down. :/
  16. AI Taxi and taking off... No landing yet. I haven't messed with this sense idk end of may or June. An update broke most of my scripts so I'm rewriting this. The link above has a sample mission for planes taxiing and taking off. No landings or taxiing for landing in it yet. If I get more spare time I'll see what I can do.
  17. https://www.dropbox.com/s/cfhhjuysh6672ud/FreedomnewlaunchCarCom.Tanoa.rar?dl=0 This is a sample mission for planes taxiing and taking off. NO Taxiing for landings yet. The old scripts I had is either broken on dev branch or broken from updates. So I'm rewriting.
  18. There are several mods that do this, AISS, FOA, ASR, Bcombat(I Think),Gods of War, hetman and Vcom. Gods of War and Hetman probably are the top tier. Its been a while sense I've made or messed with any mods. Maybe someone else will comment that's been using these the last year or so.
  19. I'm not sure if its useful, But if you guys want to use my Airborne scripts from my airborne mod for this. Feel free. Not that you need any help, but thought I'd offer incase. ;)
  20. Thanks. Didn't think of using a cone. Nice one! I'd bet there is much easier ways to get them to land and park than I have written too. lol
  21. Disabling AI didn't seem to work. Had to write my own stopplane script to make them do what you see in this video. I'm sharing.
  22. mikey74

    AI Discussion (dev branch)

    Yes without mods, in both stable and dev branch. Wasn't sure if it was just me. All this once worked. But yeh retested few more times wrote a few more scripts. I can make them spawn at points in buildings, but AI path finding usually gets stuck at bottom of stairs, or doing circles in the bottom of building. I tried the bug report once. Didn't pan out to well. But I'll give it another try. Thanks. Probably shouldn't have posted all this here. My apologies.
  23. mikey74

    AI Discussion (dev branch)

    Is it me or has AI pathfinding in buildings gotten worse? Example I place a wp on top floor last room 2 story building. The unit only goes to end of hallway on bottom floor. So outta curiosity I pulled out one of my old garrison scripts. Basically they would only stay on bottom floor. So I tried spawning units in every position I could gather using buildingpos and a find finding windows and doors script.... They all spawned on bottom floor. Not sure if you guys are aware of this. But figured I'd bring it to your attention. If its only me please ignore and/or delete this post with my humble apology.