Jump to content

[Release] Wicked AI 2.2.0


f3cuk

Recommended Posts

if(isServer) then {


		//Custom Spawns file//
		/*
		Custom group spawns Eg.

		[
			[953.237,4486.48,0.001],			// Position
			4,									// Number Of units
			"Random",							// Skill level of unit (easy, medium, hard, extreme, Random)
			"Random",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			4,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random",							// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set
			"Bandit"							// AI Type, "Hero" or "Bandit".
		] call spawn_group;

		Place your custom group spawns below
		*/
			[
			[3136.98,2509.89,0.001],			// Position
			20,									// Number Of units
			"extreme",							// Skill level of unit (easy, medium, hard, extreme, Random)
			"Random",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			5,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random",							// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set
			"Bandit"							// AI Type, "Hero" or "Bandit".
			] call spawn_group;
		
			[
			[3051.39,2468.94,0.001],			// Position
			25,									// Number Of units
			"hard",							// Skill level of unit (easy, medium, hard, extreme, Random)
			"Random",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			5,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random",							// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set
			"Bandit"							// AI Type, "Hero" or "Bandit".
			] call spawn_group;
		
			[
			[3136.83,2417,0.001],			// Position
			20,									// Number Of units
			"extreme",							// Skill level of unit (easy, medium, hard, extreme, Random)
			"Random",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			5,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random",							// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set
			"Bandit"							// AI Type, "Hero" or "Bandit".
			] call spawn_group;
		
			[
			[3052.94,2592.26,0.001],			// Position
			5,									// Number Of units
			"hard",							// Skill level of unit (easy, medium, hard, extreme, Random)
			"Random,"aa",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			5,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random",							// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set
			"Bandit"							// AI Type, "Hero" or "Bandit".
			] call spawn_group;

		/*
		Custom static weapon spawns Eg. (with mutiple positions)

		[
			[									// Position(s) (can be multiple)
				[911.21,4532.76,2.62],
				[921.21,4542.76,2.62]
			],
			"M2StaticMG",						// Classname of turret
			"easy",								// Skill level of unit (easy, medium, hard, extreme, Random)
			"Bandit2_DZ",						// Skin classname, use "Random" or classname here
			"Bandit",							// AI Type, "Hero" or "Bandit".
			"Random",							// Primary gun set number. "Random" for random weapon set
			2,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random"							// Gearset classname, use "Random" or classname here
		] call spawn_static;

		Place your custom static weapon spawns below
		*/

		[
			[									// Position(s) (can be multiple)
				[3146.5,2456.14,0],
				[3103.45,2430.56,0],
				[3059.09,2454.18,0],
				[3101.69,2516.4,0]
			],
			"M2StaticMG",						// Classname of turret
			"hard",								// Skill level of unit (easy, medium, hard, extreme, Random)
			"Bandit2_DZ",						// Skin classname, use "Random" or classname here
			"Bandit",							// AI Type, "Hero" or "Bandit".
			"Random",							// Primary gun set number. "Random" for random weapon set
			6,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Random"							// Gearset classname, use "Random" or classname here
		] call spawn_static;
		
		/*
		Custom Chopper Patrol spawn Eg.

		[
			[725.391,4526.06,0],				// Position to patrol
			[0,0,0],							// Position to spawn chopper at
			2000,								// Radius of patrol
			10,									// Number of waypoints to give
			"UH1H_DZ",							// Classname of vehicle (make sure it has driver and two gunners)
			"hard",							// Skill level of units (easy, medium, hard, extreme, Random)
			"Random",							// Skin classname, use "Random" or classname here
			"Bandit"							// AI Type, "Hero" or "Bandit".
		] spawn heli_patrol;

		Place your heli patrols below
		*/
		
			[
			[14477.8,14124.845,0],				// Position to patrol
			[0,0,0],							// Position to spawn chopper at
			2000,								// Radius of patrol
			10,									// Number of waypoints to give
			"UH1H_DZ",							// Classname of vehicle (make sure it has driver and two gunners)
			"extreme",							// Skill level of units (easy, medium, hard, extreme, Random)
			"Random",							// Skin classname, use "Random" or classname here
			"Bandit"							// AI Type, "Hero" or "Bandit".
			] spawn heli_patrol;
		
			[
			[16207.406,13676.38,0],				// Position to patrol
			[0,0,0],							// Position to spawn chopper at
			2000,								// Radius of patrol
			10,									// Number of waypoints to give
			"UH1H_DZ",							// Classname of vehicle (make sure it has driver and two gunners)
			"hard",							// Skill level of units (easy, medium, hard, extreme, Random)
			"Random",							// Skin classname, use "Random" or classname here
			"Bandit"							// AI Type, "Hero" or "Bandit".
			] spawn heli_patrol;




		/* 
		Custom Vehicle patrol spawns Eg. (Watch out they are stupid)

		[
			[725.391,4526.06,0],				// Position to patrol
			[725.391,4526.06,0],				// Position to spawn at
			200,								// Radius of patrol
			10,									// Number of waypoints to give
			"HMMWV_Armored",					// Classname of vehicle (make sure it has driver and gunner)
			"Random",							// Skill level of units (easy, medium, hard, extreme, Random)
			"Random",							// Skin classname, use "Random" or classname here
			"Bandit"							// AI Type, "Hero" or "Bandit".
		] spawn vehicle_patrol;

		Place your vehicle patrols below this line
		*/





		/*
		Paradropped unit custom spawn Eg.

			[
			[911.21545,4532.7612,2.6292224],	// Position that units will be dropped by
			[0,0,0],							// Starting position of the heli
			400,								// Radius from drop position a player has to be to spawn chopper
			"UH1H_DZ",							// Classname of chopper (Make sure it has 2 gunner seats!)
			5,									// Number of units to be para dropped
			"Random",							// Skill level of units (easy, medium, hard, extreme, Random)
			"Random",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			4,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Bandit2_DZ",						// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set.
			"Bandit",							// AI Type, "Hero" or "Bandit".
			true								// true: Aircraft will stay at position and fight. false: Heli will leave if not under fire. 
			] spawn heli_para;

		Place your paradrop spawns under this line
		*/
		
			[
			[3052.94,2592.26,2.6292224],	// Position that units will be dropped by
			[0,0,0],							// Starting position of the heli
			400,								// Radius from drop position a player has to be to spawn chopper
			"UH1H_DZ",							// Classname of chopper (Make sure it has 2 gunner seats!)
			10,									// Number of units to be para dropped
			"hard",							// Skill level of units (easy, medium, hard, extreme, Random)
			"Random",			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
			5,									// Number of magazines
			"Random",							// Backpack classname, use "Random" or classname here
			"Bandit2_DZ",						// Skin classname, use "Random" or classname here
			"Random",							// Gearset number. "Random" for random gear set.
			"Bandit",							// AI Type, "Hero" or "Bandit".
			true								// true: Aircraft will stay at position and fight. false: Heli will leave if not under fire. 
			] spawn heli_para;

	diag_log "WAI: Static mission loaded";
};

Yeah mate I trying to do an AI island on the version before the latest update it worked fine no I can't get it to spawn at all.

I show you my static spawn file, sorry not know how to put it in a little scroll box as I old man learning new tricks.

Link to comment
Share on other sites

 

Yeah mate I trying to do an AI island on the version before the latest update it worked fine no I can't get it to spawn at all.

I show you my static spawn file, sorry not know how to put it in a little scroll box as I old man learning new tricks.

 

line 62

"Random,"aa", // Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher

should be

["Random","aa"],			// Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher

and to put text inside is just (spoiler) (/spoiler) using square brackets

 

my bad, it has to be an array also

Edited by Jossy
Link to comment
Share on other sites

Ok mate fixed that bit now, with the WAI\static\init.sqf  the latest one has

ExecVM format ["z\addons\dayz_server\WAI\static\1%.sqf",toLower (worldName) ];

where the previous one I was using had  (missionName) ];

so this is correct I leave it wordName ?

Link to comment
Share on other sites

Ok mate fixed that bit now, with the WAI\static\init.sqf  the latest one has

ExecVM format ["z\addons\dayz_server\WAI\static\1%.sqf",toLower (worldName) ];

where the previous one I was using had  (missionName) ];

so this is correct I leave it wordName ?

yes you would leave it, and use the filename which is the same as the worldname (chernarus.sqf)

Link to comment
Share on other sites

Ok so this is what I have done,

in the WAI\config.sqf

static_missions          =true;

custom_per_world    =false;

 

the WAI\static\init.sqf is the same only thing I have changed is the file name it calls  ExecVM "\z\addons\dayz_server\WAI\static\taviana.sqf

 

As I just renamed the default.sqf to taviana.sqf

 

And fixed the typo in the taviana.sqf line 62 that you pointed out to me.

so it should work all ok now ?

Link to comment
Share on other sites

uh no, but thanks for pointing out my typo   :lol:

 

it should just be _mayor =[_position,1,"Hard","Random",4,"Random","Special","Random",["Bandit",500],_mission] call spawn_group;

Ahh thanks.

 

I have a couple of mission ideas.

 

Hostage rescue missions.

Missions with a second wave of AI.

Link to comment
Share on other sites

Ok so this is what I have done,

in the WAI\config.sqf

static_missions          =true;

custom_per_world    =false;

 

the WAI\static\init.sqf is the same only thing I have changed is the file name it calls  ExecVM "\z\addons\dayz_server\WAI\static\taviana.sqf

 

As I just renamed the default.sqf to taviana.sqf

 

And fixed the typo in the taviana.sqf line 62 that you pointed out to me.

so it should work all ok now ?

 

If custom_per_world is false it will use the default.sqf. Either switch it to true or put your static mission inside default.sqf

Link to comment
Share on other sites

You're very welcome! Hope you enjoy Wicked AI :)

 

Ahh thanks.

 

I have a couple of mission ideas.

 

Hostage rescue missions.

Missions with a second wave of AI.

 

I like the hostage rescue mission, this is actually something i have seen done before in Foamy Missions and should be something we could accomplish. The second wave of AI is something already achieved in the Ikea missions, the president mission and the bandit/hero base.

Link to comment
Share on other sites

"WAI: Spawned a group of 20 AI (Bandit) at [3136.83,2417,0.001]"
 9:48:19 Error in expression <anity", _gain]; };

call {
if(_backpack == "random") 	exitWith { _aipack = ai_pa>
 9:48:19   Error position: <== "random") 	exitWith { _aipack = ai_pa>
 9:48:19   Error Generic error in expression
 9:48:19 File z\addons\dayz_server\WAI\compile\spawn_group.sqf, line 117

line 116 call {
			line 117 if(_backpack == "random") 	exitWith { _aipack = ai_packs call BIS_fnc_selectRandom; };
			line 118 if(_backpack == "none") 	exitWith { };
			line 119 _aipack = _backpack;
		line 120 };

Sorry but my copy and paste just won't work on this website .

Ah bugger I may have been a premature on my excitement only 3 groups of Ai spawned on the island I checked the rpt and I got.

So It stoped loading after the 3 group of ai

Link to comment
Share on other sites

Use this

 

if(isServer) then {

            [
                [3136.98,2509.89,0.001],            // Position
                20,                                    // Number Of units
                "extreme",                            // Skill level of unit (easy, medium, hard, extreme, Random)
                "Random",            // Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
                5,                                    // Number of magazines
                "Random",                            // Backpack classname, use "Random" or classname here
                "Random",                            // Skin classname, use "Random" or classname here
                "Random",                            // Gearset number. "Random" for random gear set
                "Bandit"                            // AI Type, "Hero" or "Bandit".
            ] call spawn_group;
        
            [
                [3051.39,2468.94,0.001],            // Position
                25,                                    // Number Of units
                "hard",                            // Skill level of unit (easy, medium, hard, extreme, Random)
                "Random",            // Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
                5,                                    // Number of magazines
                "Random",                            // Backpack classname, use "Random" or classname here
                "Random",                            // Skin classname, use "Random" or classname here
                "Random",                            // Gearset number. "Random" for random gear set
                "Bandit"                            // AI Type, "Hero" or "Bandit".
            ] call spawn_group;
        
            [
                [3136.83,2417,0.001],            // Position
                20,                                    // Number Of units
                "extreme",                            // Skill level of unit (easy, medium, hard, extreme, Random)
                "Random",            // Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
                5,                                    // Number of magazines
                "Random",                            // Backpack classname, use "Random" or classname here
                "Random",                            // Skin classname, use "Random" or classname here
                "Random",                            // Gearset number. "Random" for random gear set
                "Bandit"                            // AI Type, "Hero" or "Bandit".
            ] call spawn_group;
        
            [
                [3052.94,2592.26,0.001],            // Position
                5,                                    // Number Of units
                "hard",                                // Skill level of unit (easy, medium, hard, extreme, Random)
                ["Random","aa"],                        // Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
                5,                                    // Number of magazines
                "Random",                            // Backpack classname, use "Random" or classname here
                "Random",                            // Skin classname, use "Random" or classname here
                "Random",                            // Gearset number. "Random" for random gear set
                "Bandit"                            // AI Type, "Hero" or "Bandit".
            ] call spawn_group;

            [
                [                                    // Position(s) (can be multiple)
                    [3146.5,2456.14,0],
                    [3103.45,2430.56,0],
                    [3059.09,2454.18,0],
                    [3101.69,2516.4,0]
                ],
                "M2StaticMG",                        // Classname of turret
                "hard",                                // Skill level of unit (easy, medium, hard, extreme, Random)
                "Bandit2_DZ",                        // Skin classname, use "Random" or classname here
                "Bandit",                            // AI Type, "Hero" or "Bandit".
                "Random",                            // Primary gun set number. "Random" for random weapon set
                6,                                    // Number of magazines
                "Random",                            // Backpack classname, use "Random" or classname here
                "Random"                            // Gearset classname, use "Random" or classname here
            ] call spawn_static;

            [
                [14477.8,14124.845,0],                // Position to patrol
                [0,0,0],                            // Position to spawn chopper at
                2000,                                // Radius of patrol
                10,                                    // Number of waypoints to give
                "UH1H_DZ",                            // Classname of vehicle (make sure it has driver and two gunners)
                "extreme",                            // Skill level of units (easy, medium, hard, extreme, Random)
                "Random",                            // Skin classname, use "Random" or classname here
                "Bandit"                            // AI Type, "Hero" or "Bandit".
            ] spawn heli_patrol;
        
            [
                [16207.406,13676.38,0],                // Position to patrol
                [0,0,0],                            // Position to spawn chopper at
                2000,                                // Radius of patrol
                10,                                    // Number of waypoints to give
                "UH1H_DZ",                            // Classname of vehicle (make sure it has driver and two gunners)
                "hard",                            // Skill level of units (easy, medium, hard, extreme, Random)
                "Random",                            // Skin classname, use "Random" or classname here
                "Bandit"                            // AI Type, "Hero" or "Bandit".
            ] spawn heli_patrol;

        
            [
                [3052.94,2592.26,2.6292224],    // Position that units will be dropped by
                [0,0,0],                            // Starting position of the heli
                400,                                // Radius from drop position a player has to be to spawn chopper
                "UH1H_DZ",                            // Classname of chopper (Make sure it has 2 gunner seats!)
                10,                                    // Number of units to be para dropped
                "hard",                            // Skill level of units (easy, medium, hard, extreme, Random)
                "Random",            // Primary gun set number and rocket launcher. "Random" for random weapon set, "at" for anti-tank, "aa" for anti-air launcher
                5,                                    // Number of magazines
                "Random",                            // Backpack classname, use "Random" or classname here
                "Bandit2_DZ",                        // Skin classname, use "Random" or classname here
                "Random",                            // Gearset number. "Random" for random gear set.
                "Bandit",                            // AI Type, "Hero" or "Bandit".
                true                                // true: Aircraft will stay at position and fight. false: Heli will leave if not under fire.
            ] spawn heli_para;

    diag_log "WAI: Static mission loaded";
};

Link to comment
Share on other sites

Awesome thank you very much will try it now.

Absolutely brilliant worked a treat thank you very much, love the WAI system great work indeed.

I can confirm it worked and you made an old dog very happy. 

Edited by wizznall
Link to comment
Share on other sites

The second wave of AI is something already achieved in the Ikea missions, the president mission and the bandit/hero base.

Do you mean the paratroopers?

 

I was thinking a second objective with its own separate call for the troops, patrol vehicle and para drops. Then you could rescue the hostage at which point he gives you info about a weapons stash guarded my AI, can you script a message to only players in x range?

 

Also a mission type where you have to activate the AI. e.g. You approach an informant, who double crosses you, radios for troops that then come out from hiding (spawn from thin air in front of your eyes). or You approach the box only to find the mission information was dodgy, then the AI come out from hiding.

 

I am spending alot of time thinking about this. :unsure:

Link to comment
Share on other sites

Do you mean the paratroopers?

 

I was thinking a second objective with its own separate call for the troops, patrol vehicle and para drops. Then you could rescue the hostage at which point he gives you info about a weapons stash guarded my AI, can you script a message to only players in x range?

 

Also a mission type where you have to activate the AI. e.g. You approach an informant, who double crosses you, radios for troops that then come out from hiding (spawn from thin air in front of your eyes). or You approach the box only to find the mission information was dodgy, then the AI come out from hiding.

 

I am spending alot of time thinking about this. :unsure:

try this

{
	if((isPlayer _x) && ((_x distance _position) <= 500)) then {
		[nil,_x,rTitleText,"You're within 500m.","PLAIN",10] call RE;
	};
} forEach playableUnits;
Link to comment
Share on other sites

I'm trying to work out the blacklist system.

 

blacklist = [
[[5533.00,8445.00],[6911.00,7063.00]], // Stary
[[0,16000,0],[1000,-0,0]], // Left
[[0,16000,0],[16000.0,14580.3,0]] // Top
];
 
Normally the coords system is [x,y,z] or [x,z,y] depending which part of the server files you're editing, for example why is there two sets of coords for Stary in that example? It is like a box drawn from bottom left to top right or something?
 
I thought it'd be a distance from a point at position [x,y] rather than a box?
Link to comment
Share on other sites

Just some suggestions for new missions:

 

Defuse a bomb

Secure a NPC from AI

 

Secure an item and deliver it to a NPC

 

Convoy Mission -> using this should be cool -> LINK (you just need to create the convoy vehicles and call the creator, there are also some other scripts for that)

Non Vehicle Convoy for a not that static mission (AI patrol to another town or something)

 

Stop a C130J from starting (static for airfield, AI waiting to put loot into the C130J then it flys away with the loot, cool addition: loot reduces over time cuz of the load in progress, as soon as shots are fired the C130 will fly away)

 

 

Just some ideas, hope you like them :)

 

If you PM me the way to add markers to certain objects like vehicles and update them for a while, I could work on the convoy stuff

Link to comment
Share on other sites

 

I'm trying to work out the blacklist system.

 

blacklist = [
[[5533.00,8445.00],[6911.00,7063.00]], // Stary
[[0,16000,0],[1000,-0,0]], // Left
[[0,16000,0],[16000.0,14580.3,0]] // Top
];
 
Normally the coords system is [x,y,z] or [x,z,y] depending which part of the server files you're editing, for example why is there two sets of coords for Stary in that example? It is like a box drawn from bottom left to top right or something?
 
I thought it'd be a distance from a point at position [x,y] rather than a box?

 

 

Yes it is a box drawn. Top left to bottom right to be precize. There is also an option (wai_avoid_traders) that prevents missions from spawning x(wai_avoid_traders) meters around trader cities. It is on by default and it kinda renders the stary coordinates on the blacklist useless.

 

--

 

@Creep: Thanks, those sound like awesome ideas. I've already started working on a convoy mission and that might prove very handy indead. Keep them coming!

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Advertisement
×
×
  • Create New...