Jump to content

nomadd

Member
  • Content Count

    371
  • Joined

  • Last visited

  • Medals

Posts posted by nomadd


  1. These are a couple of scripts I made for some of my missions. Going to post them here is case anyone finds them useful. They have been tested on MP hosted and dedicated. Everything seems to work. Any scripting gurus want to improve them please feel free. 

     

    Put a unit(s) down in the editor and name them  whatever you want ex: obj_HVT  , Obj_hostage , Boo_Boo , whatever

    In init.sqf 

    //prepare HVT and hostage
    obj_hostage execvm "Hostage_setup.sqf";
    obj_HVT execvm "Hvt_setup.sqf";

    The HVT script will make the unit do a "surrender" animation when a player gets close, from there you will get the option to escort the HVT. HVT will attach to that player in front off to the left with hands on head. HVT is attached to player so it will not collide with anything and feet do not move but better than having a hostile HVT join your group and run around free (imo).

    Player will get the option to "stop" escort , meaning HVT will be left on the spot. Another player can then pick up the HVT and escort. When escorting the HVT, players near vehicles get the option to "load in vehicle". The HVT will then get in what ever vehicle is close to the player under player's cursor. Once the HVT is loaded in a vehicle any player can "unload HVT".

    Once  the HVT is captured , it can be killed at any time. Until HVT is captured they are invulnerable, plus dumb as a rock. I had to disable just about everything on the AI to make them play nice.

     

    The Hostage script works much the same way. Except hostage is on the ground tied up.. Player has to free the hostage using a holdaction. (Once freed hostage can be killed)  Hostage will go into a wounded on the ground animation. Player has to pickup and carry hostage. When carrying the hostage player is forced to walk, you can set the hostage down at any time and another player can then pick up the hostage. You also will get the option to "load in Vehicle" when carrying the  hostage. Same as HVT script, you have to be close to a vehicle and vehicle under player's cursor. Once hostage is loaded anyone can unload the hostage.

     

    The test mission linked does require CUP, was testing different vehicles, not just BIS vehicles. You can still extract the .sqfs and put them in a mission that does not require CUP to test it.

     

    I know i need to do some more polishing but it works. I would like to add "grabcarried" and "grabcarry" to the hostage, just to make it look a bit nicer when player is picking the hostage up but working with animations just sucks. 

    Right now there can only be one HVT and one Hostage in any given mission. Will try and maybe change things so there can be multiple hostages that need to be rescued or HVTs to be captured

     

     

    HVT capture script

     

     

    Hostage rescue script

     

     

    update: v1.3 02-25-19

    https://www.dropbox.com/s/fb52hxbrhvwbvp7/HVT%26Hostage test1.3.Stratis.7z?dl=0

     

    any problems just post them up, i will try and get to it as soon as  I can

     

    edit: 02-08-19

    fixed some bugs

    changed some animations

    cleaned up some code

     

    edit: 02-16-19 v1.2

    removed CUP dependency

     

    edit 02-16-19 v1.2

    uploaded wrong version

     

    edit 02-25-19 v1.3

    fixed potential problem(s) on dedicated 

     

     

    • Like 7
    • Thanks 3

  2. Had a chance to try this out on dedicated with some friends. Ran into a few problems but did some testing and think I figured out what is causing them.

     

    1:  Fastroping will completely bug out on dedicated, if you try and use any helo with units in  FFV positions,  including gunner seats. Units will stand up in the helo but then just lock in that position. I tested this with CUP helos and the default BIS helos with FFV. 

       Didn't not have any problems with any type of helo with just landing, ie CUP or BIS. Also did not have any problems with fastroping with any type of helo as long as it did not have FFV positions.

     

    2: First player that gets in the helo gets the actions, no one else gets them. I want to limit who can call/access the helo. Mainly to team leader and FAC. So I tried to set "RYD_HAS_whenInside = false;" and then limit who can control helo with  the variables you created "unit1 setVariable ["RYD_HAS_canCall",false]; and unit1 setVariable ["RYD_HAS_canCall",true]; "

       Problem is outside the helo, support menu is accessible , inside the helo support menu goes away. Maybe apply the actions to all players that get in the helo. Whoever uses the actions first gets to order the helo. I  can still control who can call the helo with  the variables. Ran into a problem playing on my server with a new player to arma , he jumped in the helo and got the actions . luckily we  had voice comms and I was able to explain to him what to do. Any of the other guys playing would have been fine, they knew what to do.

     

    First problem is mission breaking. second problem is just an inconvenience. 

     

    • Thanks 1

  3. My game drive , not only for ARMA is an SSD.  It was fine. Was  my drive with operating system.Since I had to do a drive swap and pretty much full wipe , I went ahead and took the time to throw a testing server back up.

    I have HAS 1.4  in about 4-5 of my missions. Local hosted everything seems to be working fine. Will try with some friends on dedicated and see what happens

    • Like 2

  4. Wow Rydygier you are a machine making changes that fast. I was able to test (not fully)  the HAS 1.4 wip1  and looks like you fixed the errors with naming the units. 

    The variable is an excellent idea you had. That way as a mission designer I can basically turn HAS on and off during the mission. 

    I really haven't found anything major, ie script errors in the .rpt.

    One thing I did notice. One test was just with AI, I ordered them on the helo. I was probably standing(in game)  15-20 meters away from the helo and got the action for "Transport to another location".

    Maybe need a check in the addaction to make sure unit(caller)  is in the helo before they can get the "Transport to another location".


  5. Been playing around with the script version and mod version of this. It is a wonderful addition to the community and very much appreciated. Thanks for all your hard work.

     

    Few things I have noticed in multiplayer.

    using RYD_HAS_STT = []; in multiplayer is a problem. Say you have 10 playableunits named s1-s10 and all 10 are in game no problem, but if only 5 slots have players and you disable the AI in the lobby. Your script throws errors looking for units that are not there. The mod version does not have this problem ( I know they are two different threads so will try and keep anything about the mod out of this one.)

     

    if you only name one unit in RYD_HAS_STT = []; So only one person can control the helo. Fastroping will eject the unit named in RYD_HAS_STT = []; but not any other units in the cargo. Same with landing. Even if you turn off the auto-disembark feature. If the unit(player) that is named in RYD_HAS_STT = []; gets out of the helo. The helo will immediately take off even if other units are still in the cargo area. 

    Not sure how to work around this. I tired different ways to check for alive or !isnull units and add them to the [newUnit1,newUnit2,newUnit3] call RYD_HAS_NewUnits; but with no success. Also need a way to grab JIP and add them unless your can change the way the RYD_HAS_STT = []; array works. Maybe name the group  that is being transported or possible add a variable to each unit to be transported.

     

    Couple of quality of life features, not necessary but just suggestions

    -ability to cancel an order while you are flying. Ex: you pick a destination but half way there you decide to change it

    -ability to tell the pilot either landing (insertion) or fast-rope (insertion) when you choose a destination. Right now is it hard coded in the userconfig to one or the other 

    -ability to set up more that one helo for fast roping, this way can have different helos to choose from and the rope attachments points will be correct even if they are different helos. 

    RYD_HAS_RopeAttachPoints =
    
        [
        //[-1,0,0],
        //[1,0,0]
        ];
    
    maybe something like
    RYD_HAS_RopeAttachPoints =
       [
    		["CUP_Uh60_Base",[1.47,1.93,-0.47],[-1.47,1.93,-0.47]],
     or even the name of the helo
    		[Helo1,[1.47,1.93,-0.47],[-1.47,1.93,-0.47]],
    	];

    -option in the config to lock out not just the pilot seat, which i believe is done but also the gunner seats if there are any. The reason is playing with other humans, they love to get in the gunner seats during flight but once the AI is out of the gunner seat and switches to a cargo seat the AI will never get back in the gunners seat. So you get dropped off do your mission call helo for a extraction while taking fire and helo comes in sans gunners because the AI gunners are still sitting in the cargo area.


  6. @Lucky44

     

     It may be easier , if it is just a few things, to use the EH "arsenal closed" and remove items from players inventory. They can see it in arsenal but once they leave arsenal, what ever items you choose will be deleted from their inventory. I have some MP missions with the option of no NV. Found it is just easier to delete the NV goggles from inventory. 

     

    BIS page 

    https://community.bistudio.com/wiki/BIS_fnc_addScriptedEventHandler

     

    BIS example

    [ missionNamespace, "arsenalOpened", {
    	hint "Player opened the Arsenal"; //Hint message to the player when he opens the Arsenal
    }] call BIS_fnc_addScriptedEventHandler;

    I run it from initplayerlocal.  Works great on hosted but to be honest have not tried it on dedicated


  7. may or may not be the problem but it looks like you are missing a closing bracket

    {	
    	_x addMPEventHandler 
    	[ "MPHit", 
    		{
    			"popup first condition EH before CBA" remoteExec ["systemChat"];
    			(_this select 0) animateSource ["terc",1];
    		[  //whats this ?
    			{
    				(_this select 0) animateSource ["terc",0];
    				"popup first condition EH in CBA" remoteExec ["systemChat"];
    			},
    				_this, 2 + (random 3)] call CBA_fnc_waitAndExecute;
    		}
    	] 
    } forEach _targets;

     


  8. https://www.dropbox.com/s/rp13gysmzr8o6k1/Operation%20SnakeBite[VCOM].Altis.7z?dl=0

     

    Well I had the time so linked it now. Couple of things, I don't have a briefing of any type.The guys I make missions for never read the briefing so I stopped making them.  Mission is simple, destroy some stolen missiles and take out a Cartel Boss, then evac. Goto map in game and look at the tasks. Also play this from the MP lobby, in the parameters you can change quite a few things like AI hearing and vision also the turn the lights of the town off and on. The lights make a big difference in how tough it is to not get detected.  I have played this with a few friends and the AI seem to play nice being a stealth mission, but it is not perfect. You are welcome to tear it apart and see if anything helps you out.

    -no mods should be required 

        -dont use ASR or VCOM. I have the script version of VCOM in the mission just for testing purposes (it can be turned off/on in the parameters) default is off

    -dont play this with friendly AI in your squad, they will blow the mission, it is designed for human players

    -if the AI see you alarm will sound and reinforcements will come

    -if the AI see a dead body, in the mission you have to hide dead bodies, alarm will sound and reinforcements will come (this is changeable in the parameters)

    -if you or any player is unsuppressed, alarm will sound and reinforcements will come

    -if the AI fires a weapon, alarm will sound and reinforcements will come

    -if anyone throws a grenade,smoke or sets off an explosive, alarm will sound and reinforcements will come 

    -if you shoot an AI and do not kill it...guess what

    if the reinforcements show up it is pretty much over

     

    in the MP parameters is one called "debug", enable it and you can teleport around and be invulnerable also will enable some  radio triggers that can make you setcaptive, destory missiles, kill HVT ect,  I use it to check AI patrols and mission flow. 

    if you have any questions feel free to ask, my scripting is a learn as i go , so I know there are more elegant/better ways to do some of the things I have done.

     

    last thing

    any script I am using  the original author is listed in the script. I haven't released this to steam or anywhere else so haven't made a readme giving credit to my sources

    • Like 2

  9. @JohnKalo

     

     I have made a couple of stealth missions and the AI is a pain in the backside. Couple of things I have found don't group enemy AI units together, they have some weird hive mind thing going, but even singles can still react if an AI unit is killed even though they did not see it or hear it. Also I tend not to use any type of AI mods when doing a stealth mission, ie ASR,VCOM etc. I will try and link a mission I made in my  dropbox. You are welcome to tear into it and see if anything I have done helps you out. I am using scripts from other authors and alot of scripting I came up with, some of it is more brute force to make the AI behave correctly. It is "hollywood" stealth, basically if you have a suppressor AI can't hear you, I know this is not realistic but makes for a fun mission. It has only been tested on hosted server with friends, not sure how it will play on a dedicated (i am pretty sure things will break). 

    • Like 1

  10. @HazJ

     

    I may have missed something, but I was following the readme in v2.1

     

    ///////
    //Explosive Breaching
    //By: Millenwise (beno_83au)
    ///////
    //Use and abuse as required. Please just give credit to those deserving.
    ///////
    //Credit also to zorilya, who's code for aligning a bomb against a Explosive was offered up for use (in one of his replies in this video):
    //https://www.youtube.com/watch?v=c2kxwrcmB3g&t=3s
    ///////
    
    MIL_ExplosiveBreaching is a set of scripts that allows designated players to breach urban walls, fences and building doors using vanilla Explosive Charges.
    
    Features:
    
    - Easy-to-use GUI system for managing breaching charges.
    - Uses explosive charges as breaching charges.
    - Optional Red/Green indicator on each charge to indicate a player's safe distance from a charge.
    - Specific players can be used as designated breachers.
    - All players (including non-breachers) can see effects/features of the system.
    - Disorientating effects for anyone, human or AI, caught by the explosive breach.
    - Single/Multiple charges can be used together.
    
    ***Mission makers***
    - Two variables to check if a unit's lifeState == "INCAPACITATED" have been added to account for conflicts with other lifeState checks that may be in use on other scripts.
        - e.g. Running custom revive scripts when lifeState == "INCAPACITATED".
        - In this case, it would be wrong to run the custom revive if a player was a bit too close to the breaching charge and got knocked out.
    - When being affected by breaching, a unit's lifeState will return "INCAPACITATED" for a few seconds.
    - This system makes use of publicVariables to return if a unit has been scripted into being unconscious.
    - The variables are:
        - MIL_ExplosiveBreaching_Stunned_Player & MIL_ExplosiveBreaching_Stunned_AI.
        - Each variable is a 4 index array:
            - _array select 0/1/2/3 will return number of unconscious units for BLUFOR/OPFOR/INDI/CIV
    Example:
    - If a BluFor player stands too close to a door on breaching, and there's 2 AI OpFor on the other side and close enough to get knocked down the returns would be:
        - MIL_ExplosiveBreaching_Stunned_Player - [1,0,0,0];
        - MIL_ExplosiveBreaching_Stunned_AI ----- [0,2,0,0];
    - This might take some tweaking, but suits my purpose for what this breaching function was originally being made for, and so that's where it stands for now unless someone needs it changed/improved.
    
    To use:    
    
        - Copy the folder MIL_ExplosiveBreaching to your mission folder.
        - Anyone assigned as a breacher will require Explosive Charges ("DemoCharge_Remote_Mag") to breach.
        
        - For MP use:
            - In your initServer.sqf add:
                nul = [_indicator] execVM "MIL_ExplosiveBreaching\initialiseServer.sqf";
    
            - In your initPlayerLocal.sqf add:
                nul = [] execVM "MIL_ExplosiveBreaching\initialiseClient.sqf";
                
            - _indicator - boolean (optional - default: true)
                         - true - a safe distance indicator will spawn with the charge
                         - false - no safe distance indicator will spawn
        
        - For SP use:
            - In your init.sqf add:
                nul = [_indicator] execVM "MIL_ExplosiveBreaching\initialiseServer.sqf";
                nul = [] execVM "MIL_ExplosiveBreaching\initialiseClient.sqf";
            
        - initialiseClient.sqf is used to designate who can breach, so use a true/false gate to set specific breachers. Example:
            //This will set any group leaders as breachers
            if (player == (leader (group player))) then {
                nul = [] execVM "MIL_ExplosiveBreaching\initialiseClient.sqf";
            };
            
            //This will set player4/8/12 as breachers
            _allBreachers = ["player4","player8","player12"];
            if !(_allBreachers find (str player)) then {
                nul = [] execVM "MIL_ExplosiveBreaching\initialiseClient.sqf";
            };

     I can blame the rum being consumed but I didn't see any thing about description.ext


  11. @beno_83au

     

     Been using your script  in quite a few of my mission but just tried it and it is not working. I am not sure if the lastest update from BIS broke something or not. I am getting this error with the v2.1

    Resource MIL_ExplosiveBreaching_Dialog not found

    I tried to roll back to 2.0 and it does not seem to load. I also tried one of the demo mission from the v2.0 and nothing works with the breaching 

     

    Great script btw. The group I play with loves it.


  12. Thanks for this Gunter. Will be trying it out. The old helo script I have been using as gotten very hit or miss with it working. 

    I do have a question. When using the helo to do an insertion can it be set to kick  players and AI (everyone not part of the crew) out on landing and automatically RTB, 

     

    Edit:

    Nevermind I just tried it out. Works beautifully. Nicely done

    • Haha 1

  13. I am stuck on this. I am making a stealth coop mission. (Making the AI play nice for a stealth mission has been a real challenge). At the moment, using EventHandlers I have the area of operations pretty well covered. If a player throws a grenade, or smoke or fires an un-suppressed weapon(yes, this is "Hollywood" style silenced weapons) it will alert the enemy kick the AI out of safe mode spawn reinforcements and everything goes sideways. When testing I found I could detonate any type of explosive and the AI goes about their day like nothing happened. I have looked at the explosion EH but it needs to be attached to an object to detect damage. I need to be able to detect any explosion with in the AO then execute code that will sound the alarm.

    Quote

    Triggered when a vehicle or unit is damaged by a nearby explosion. It can be assigned to a remote unit or vehicle but will only fire on the PC where EH is added and explosion is local, i.e. it really needs to be added on every PC and JIP and will fire only where the explosion is originated.

     

    this is the code I use to detect silencers and thrown weapons ie. grenades, smoke etc. the inarea is a trigger covering the the AO

    Fnc_Nearbase = {
    
    private ["_eh_1"];
    
    _eh_1 = player addEventHandler ["firedman",{ 
    									params ["_unit","_weapon","_muzzle","_mode","_ammo","_magazine","_projectile","_vehicle","_hassilencer"];
    									
    							if (_unit inArea trg_NB) then 
    							{
    									_hassilencer = (_this select 0) call Hassilencer;
    									if !(_hassilencer) then 
    									{										
    										[format ["%1 did not equip a silencer and just alerted the enemy",name _unit]] remoteExec ["hint",[0,-2] select isDedicated];
    										if (isnil {obj_alarm getvariable "alarm"}) then 
    										{
    											if (isnil {obj_alarm getvariable "alarm"}) then 
    											{
    												obj_alarm setvariable ["alarm",true,true];
    													
    											};
    										};
    									};
    								if (configname (inheritsFrom (configFile >> "cfgWeapons" >> "throw" >>(_this select 2) )) isEqualTo "ThrowMuzzle") then 
    									{
    										[_unit,_ammo] spawn 
    										{
    											params ["_unit","_ammo"];
    											sleep 6;
    											[format ["%1 just threw a %2 and has alerted the enemy", name _unit, _ammo]] remoteExec ["hint",[0,-2] select isDedicated];	
    											if (isnil {obj_alarm getvariable "alarm"}) then 
    											{
    											if (isnil {obj_alarm getvariable "alarm"}) then 
    											{
    												obj_alarm setvariable ["alarm",true,true];
    													
    											};
    											};
    										}; 
    									};	
    							};		
    				}];
    
    };

    I know this is probably simple but for some reason I just cannot find a solution that works


  14. Leopard20

     

     Well the good news is I dont think my problem with AIO had anything to do with your mod. I started to notice some other glitches, then arma began crashing for no apparent reason. I went into Steam and did a verify local game files. It didn't go well, so ended up removing Arma3 and letting Steam reinstall it. Problems have gone away. 

    Last test I just did with AIO, AI is responding to all commands. No idea what happened to my Arma3 files. Sorry to have bothered you, problem appears to have been on my end the whole time.

     

    Nomad

    • Thanks 1

  15. @Leopard20

     

     I thought I would try this out but so far I am having no luck getting it to work. I  have the same issue @Dallas Medina posted about a couple of months ago. I can get AIO to load. I even the the pop-up error you mentioned

    15:06:32 Error in expression <};
    _leader = _possibleLeaders select 0;
    _leader setvariable ["BIS_HC_scope",_log>
    15:06:32   Error position: <_leader setvariable ["BIS_HC_scope",_log>
    15:06:32   Error Undefined variable in expression: _leader
    15:06:32 File A3\modules_f\HC\data\scripts\hc.sqf, line 71

    I get absolutely no other error messages in .rpt. On screen I wait until i see "AIO initialized" in side chat. I press "Y" and get the menu but AI does nothing no matter what I choose, defense, weapon management etc. The AI does not respond in any way. I dropped all mods except CBA and AIO. I even tried it in single player and multiplayer just to see if somehow that was the problem. Other than @Dallas Medina i found no other posts detailing my problem. I wish I had at least an error to send you but .RPT is clean(other than already mentioned hc.sqf error). CBA and AIO are both latest versions.

     

    Nomad

     

    edit: When I issue any command I get the message in side chat, but AI does nothing. Will continue to test it.

×