Posted by: Deinon - Saturday, September 9, 2017 2:26:48 PM
I want an AI opponent to be able to send a specific air wing to hunt for any airfields the player builds. I'm putting together a Generals Challenge mission, and I've found this general to be particularly vulnerable to aerial attacks, ESPECIALLY from the Aurora Alpha, so thinking like a person, they'd want to try and target the planes before they ever leave the ground.
Where and how do I define attack priority lists?
Well , as I think this is going to be so much DIFFICULT !
1. Priority list to make the airfields the most important Targets ...
2. Make Areas ... You'll need to make many Areas ; The more Smaller Areas , The more Efficient Work .
3. Just a couple of Testfor Conditions for each Area .
4. Good Luck !
5. Have Fun ...
6. Rule 5
7. Sorry ... Nothing ...
Posted by: Deinon - Saturday, September 16, 2017 1:28:40 PM
OK, I figured this out. Ended up using multiple scripts. Even added different taunts which the enemy General uses each time it works.
[b]ArtilleryOnDoorstep[/b]
[quote]*** IF ***
Player 'ThePlayer' has Greater Than 0 unit or structure of type 'LongRangeBallistics' in the area 'WestGateReactionZone'
*AND* Team 'AirCounterArtilleryJet' has one or more units.
*** OR ***
Player 'ThePlayer' has Greater Than 0 unit or structure of type 'LongRangeBallistics' in the area 'SouthGateReactionZone'
*AND* Team 'AirCounterArtilleryJet' has one or more units.
*** THEN ***
Team 'AirCounterArtilleryJet' begins hunting.
Enable Script 'CounterArtilleryMiGNewTarget'.[/quote]
[b]CounterArtilleryMiGNewTarget[/b]
[quote]*** IF ***
Player 'ThePlayer' has Equal To 0 unit or structure of type 'LongRangeBallistics' in the area 'WestGateReactionZone'
*AND* Player 'ThePlayer' has Equal To 0 unit or structure of type 'LongRangeBallistics' in the area 'SouthGateReactionZone'
*** THEN ***
Team 'AirCounterArtilleryJet' stops.
Enable Script 'ArtilleryOnDoorstep'.[/quote]
[b]NoCampingTauntIncrement[/b]
[quote]*** IF ***
Player 'ThePlayer' has lost an object of type 'LongRangeBallistics' (can be an object type list).
*AND* Team 'AirCounterArtilleryJet' is completely outside area 'SyriaBasePerimeter' (Surfaces Allowed: Ground or Air).
*** THEN ***
Add 1 to counter 'CounterArtilleryKillCount'[/quote]
[b]Taunts[/b]
[quote]*** IF ***
Counter 'CounterArtilleryKillCount' IS Equal To 1
*** THEN ***
Show military briefing String: 'CounterArtillery:1' for 5500 milliseconds.[/quote][quote]*** IF ***
Counter 'CounterArtilleryKillCount' IS Equal To 2
*** THEN ***
Show military briefing String: 'CounterArtillery:2' for 6000 milliseconds.[/quote]etc.
I defined the Object List 'LongRangeBallistics' to include rocket buggies, scud launchers, inferno cannons, tomahawks, etc. - anything the player would normally just park outside the range of a fixed defensive structure and chip away at it.