Jump to content

Recommended Posts

I got a question about this line :

(group this) setVariable ["VCM_TOUGHSQUAD",true]; //This command will stop the AI squad from calling for backup.

 

The AI will stop calling artilery too ?

Share this post


Link to post
Share on other sites

In my previous post I'd mentioned hierarchy of AI skill settings, and it's not as hoped. In the userconfig it states that using side specific skills overwrites classname specific, which it does. If this were reversed, it would give the mission maker a lot more flexibility. Currently you can set unit skills to  one size fits all/universal, everyon's skills = X, OR you can define classnames, and all undefined will be the universal value, OR with side specific you can give all on each side the same skill (All BLUFOR = X, all OPFOR = Y) . 

 

If classname specific skill was applied last, then we can still have the "everyone else" be different per side. To do that now, you have to define every single class, as all undefined classes will revert to the same single/universal setting. Example, with side specific you can set all BLUFOR to 0.6, all OPFOR to 0.4. But if you want to do that except to have snipers and machinegunners be 0.8, you have to define every single classes on both sides, as undefined classes regardless of which side will revert to the same universal skill. 

 

Skill settings currently go (Side >  Classname > universal), so side is only value used.  ideally it would go (Classname > Side > Universal) , so it will be side unless a specified classname.

 

*edit* fiddled with it and this can be accomplished easily enough, swapping the order in the VCM_AIDIFSET portion of the user config, so the side entry is before the classname entry. Imagine having that as default behavior would be desirable, as the only change to behavior is added flexibility when using classnames, but remaining the same if not using them. 

 

Default

Spoiler

	VCM_AIDIFSET =
	{
		{
			private _unit = _x;
			_unit setSkill 0.9;
			_unit allowFleeing 0;			
			{
				_unit setSkill _x;
			} forEach VCM_AIDIFA;
			
			
			if (VCM_CLASSNAMESPECIFIC && {count VCM_SKILL_CLASSNAMES > 0}) then
			{
				{
					if (typeOf _unit isEqualTo (_x select 0)) exitWith
					{
						_ClassnameSet = true;
						_unit setSkill ["aimingAccuracy",((_x select 1) select 0)];_unit setSkill ["aimingShake",((_x select 1) select 1)];_unit setSkill ["spotDistance",((_x select 1) select 2)];_unit setSkill ["spotTime",((_x select 1) select 3)];_unit setSkill ["courage",((_x select 1) select 4)];_unit setSkill ["commanding",((_x select 1) select 5)];	_unit setSkill ["aimingSpeed",((_x select 1) select 6)];_unit setSkill ["general",((_x select 1) select 7)];_unit setSkill ["endurance",((_x select 1) select 8)];_unit setSkill ["reloadSpeed",((_x select 1) select 9)];
					};
				} foreach VCM_SKILL_CLASSNAMES;
			};			
			
			if (VCM_SIDESPECIFICSKILL) then
			{
				_unit call VCM_AISIDESPEC;
			};
			
		} forEach (units _this);
	};

 

Changed to this 

Spoiler

VCM_AIDIFSET =
{
	//Skip if Vcom Skillchange is disabled
	if (!VCM_SKILLCHANGE) exitWith {};
	{
		private _unit = _x;
		_unit setSkill 0.9;
		_unit allowFleeing 0;
		{
			_unit setSkill _x;
		} forEach VCM_AIDIFA;
		
		
		if (VCM_SIDESPECIFICSKILL) then
		{
			_unit call VCM_AISIDESPEC;
		};		

		if (VCM_CLASSNAMESPECIFIC && {count VCM_SKILL_CLASSNAMES > 0}) then
		{
			{
				if (typeOf _unit isEqualTo (_x select 0)) exitWith
				{
					_ClassnameSet = true;
					_unit setSkill ["aimingAccuracy",((_x select 1) select 0)];_unit setSkill ["aimingShake",((_x select 1) select 1)];_unit setSkill ["spotDistance",((_x select 1) select 2)];_unit setSkill ["spotTime",((_x select 1) select 3)];_unit setSkill ["courage",((_x select 1) select 4)];_unit setSkill ["commanding",((_x select 1) select 5)];	_unit setSkill ["aimingSpeed",((_x select 1) select 6)];_unit setSkill ["general",((_x select 1) select 7)];_unit setSkill ["endurance",((_x select 1) select 8)];_unit setSkill ["reloadSpeed",((_x select 1) select 9)];
				};
			} foreach VCM_SKILL_CLASSNAMES;
		};		


	} forEach (units _this);
};

 

 

  • Like 3

Share this post


Link to post
Share on other sites

This is cool, would make it easier to make (for instance) viper units scary good while regular CSAT remain at the same level.
 

  • Like 1

Share this post


Link to post
Share on other sites
On 5/8/2018 at 11:37 PM, genesis92x said:

-AI will steal empty or unlocked vehicles

How would one make them steal Helicopters and planes as well?

Share this post


Link to post
Share on other sites

I suggest leaving out the postInits in functions. Cfg so I, as a mission maker, have the flexibility to add enable/disable in mission parameters. Thanks@genesis92x and@Freddo3000. Love vcom

Sent from my SM-G930F using Tapatalk

Share this post


Link to post
Share on other sites
9 hours ago, o5_ said:

I suggest leaving out the postInits in functions. Cfg so I, as a mission maker, have the flexibility to add enable/disable in mission parameters. Thanks@genesis92x and@Freddo3000. Love vcom

Sent from my SM-G930F using Tapatalk
 


You can set this variable to accomplish that:

Quote

Vcm_ActivateAI = true; //Set this to false to disable VcomAI. It can be set to true at any time to re-enable Vcom AI


 

 

10 hours ago, jimbob6661 said:

How would one make them steal Helicopters and planes as well?

You cant right now without editing the mod, though I'll make an issue for it.

Share this post


Link to post
Share on other sites
6 hours ago, Freddo3000 said:

 

You cant right now without editing the mod, though I'll make an issue for it.

That's sort of what i'm requesting, I spent a few hours last night trying to add just Air vehicles to this line:

"    if (_x iskindof ""Air"" && {crew _x isEqualTo []} && {_x distance _Leader < VCM_AIDISTANCEVEHPATH} && {locked _x != 2}) then" \n

But all efforts fail me. I also tried part of Aussie's line from  quotes to && and that didn't work either, 

Also I was looking at ai steal all vehicles. Would this be the correct code?
" if ((_x isKindOf "LandVehicle") || (_x isKindOf "Air") || (_x isKindOf "Ship") && {crew _x isEqualTo []} && {_x distance _Leader < VCM_AIDISTANCEVEHPATH} && {!((locked _x) isEqualTo 2)}) then" \n

I also tried adding this before the line with your formatting:

_VehChoice =
	[
		["Air", "LandVehicle"]
	];

And replaced _x iskindOf  ""Landvehicle"" with _x iskindOf ""_vehChoice""  and got no love. 

Then again I'm no coder.

 

Thanks for all your work, it's been an interestingly fun evolution.

 

P.S. I understand if this functionality isn't something Genesis wants added, but nonetheless I wouldn't mind it in my insane mission, it would make players be aware of the lock state of their vehicles.

 

Also, I noticed that after ai steals a vehicle, if their enemies have been killed the units in the veh just stop and loiter in one place until others on their team call for help again, then they decide to start moving again.  Maybe make the loiter condition to circle? so they don't look asleep? 

Share this post


Link to post
Share on other sites
On 1/29/2019 at 3:56 PM, jimbob6661 said:

it would make players be aware of the lock state of their vehicles.


I know locking vehicles never used to make a difference, has that been fixed?
Is it time for me to start adding ACE keys and lockpicks? 

Share this post


Link to post
Share on other sites
On 1/30/2019 at 1:54 AM, JD Wang said:


I know locking vehicles never used to make a difference, has that been fixed?
Is it time for me to start adding ACE keys and lockpicks? 

So far they haven't  even attempted to get in a locked tank with an unlocked suv next to it, if I change it to air vehicles the same they ignore the locked ones. I just wish I could add air to it I've tried adding 

if ((_x iskindof "Air" || _x iskindof "Car") && (crew _x isEqualTo []) && (_x distance _Leader < VCM_AIDISTANCEVEHPATH) && (locked _x != 2})) then

and a few others but that fails, for now

Share this post


Link to post
Share on other sites

G'day @genesis92x

Love VCOM, but having a little trouble using it in a mission I'm making.

 

I have some units placed down and have given them move waypoints around a town, followed by a cycle waypoint. The players get parachuted in via an AI plane. The issue is when the planes fly overhead it triggers the AI to go all defensive. Then after the planes have passed the patrolling AI no longer move on their waypoints, rather they just stand around.

I don't mind them going defensive, but after I want them to continue moving on their patrol path.

 

Using the script version.

Share this post


Link to post
Share on other sites
3 hours ago, 1LT D. Repo said:

On the Github
"Hit reactions compatibility with ACE"

What does this refer to exactly?

Hit reactions don't occur when ACE is active, due to it breaking ACE unconsciousness.

Share this post


Link to post
Share on other sites

I use the latest stable, mod version of Vcom AI.

 

On my mission start the following scripts error pops up:

Error in expression <then
{
_ammoC = configfile >> "CfgAmmo" >> _subAmmo
};

_actHit = getNumber (_am>
22:47:36   Error position: <>> _subAmmo
};

_actHit = getNumber (_am>
Error >>: Type Config entry, expected String
File vcomai\Vcom\Functions\FFE_Functions\fn_AutoConfig.sqf [RYD_fnc_AutoConfig], line 120

How can i fix this error?

Share this post


Link to post
Share on other sites

Have anyone found a way to Zeus with VCOM without tearing your hair out because the AI doesn't listen?

Edit:

Just tested with 3.2 and a helicopter will still ignore the orders to move away and not engage enemies.

Share this post


Link to post
Share on other sites

I was under the impression that aircraft didn't get touched with VCOM?

Share this post


Link to post
Share on other sites

I have been looking at VCOM AI (mod) for our group and am overall really impressed with it. I've had a few bugs with 3.1 that are fixed according to the changelog for the 3.2 pre-release, so I was eager to give that a go. However, while a load of options appear in CBA's Addon Options with v3.1, none appear at all with v3.2 (in editor, single player or while running on a dedicated server). Is this a known bug with the pre-release? Thanks

Share this post


Link to post
Share on other sites
5 hours ago, fourjays said:

I have been looking at VCOM AI (mod) for our group and am overall really impressed with it. I've had a few bugs with 3.1 that are fixed according to the changelog for the 3.2 pre-release, so I was eager to give that a go. However, while a load of options appear in CBA's Addon Options with v3.1, none appear at all with v3.2 (in editor, single player or while running on a dedicated server). Is this a known bug with the pre-release? Thanks

Been having that issue as well and seems like others have had the issue as well.

Share this post


Link to post
Share on other sites

VCOM and FFE are working great in my current ALiVE Insurgency test scenario. I've added it via script version, modified it for ALiVE support assets to be excluded, as well as recruited AI units. There is only one thing I wish for FFE, if possible some time: Adding an array that can include exclusion markers for specific locations, such as towns and cities. In a asymetric warfare scenario including civilians, the spotters don't call off artillery strikes, which results in many killed civilians - and a bad reputation. Very noticeable with a growing amount of suiciders in a ongoing mission.

 

Excluding locations would be amazing!

  • Like 1

Share this post


Link to post
Share on other sites
On 2/9/2019 at 3:12 AM, Freddo3000 said:

Goodness Freddo, what have you gotten into. Look at all that works you have put into Vcom. 68 commits on Github since October 2018

 

 

On 2/9/2019 at 7:54 PM, Tyl3r99 said:

can you update main post and steam workshop mod 🙂

 

I can offer a rough ETA on this now. My current home is expected to sell in the next two weeks. Shortly after that I will be moving into my new home roughly 20 minutes away. Maybe then another week for internet. So hopefully by the end of February or the beginning of March I will have my PC back (I am using my work laptop right now).

 

One of the first things I will do will be to update the front page here and the steam workshop.

  • Thanks 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×