Deinon
  • Deinon
  • 50.25% (Neutral)
  • Captain Topic Starter
8 years ago
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?
Sponsor
Unknown Editor
8 years ago
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 ...
Asking is Not a Problem , Problem is Not to Know Something .
Operation : Dark Angel
Static : Launch Delayed
Reason : Uncool Terrain - Old Logic in use - Lack of Performance
Status : Applying new Terrain - Applying new Logic - Increasing Performance by 300%
Deinon
  • Deinon
  • 50.25% (Neutral)
  • Captain Topic Starter
8 years ago
OK, I figured this out. Ended up using multiple scripts. Even added different taunts which the enemy General uses each time it works.

ArtilleryOnDoorstep

*** 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'.


CounterArtilleryMiGNewTarget

*** 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'.


NoCampingTauntIncrement

*** 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'


Taunts

*** IF ***
Counter 'CounterArtilleryKillCount' IS Equal To 1
*** THEN ***
Show military briefing String: 'CounterArtillery:1' for 5500 milliseconds.

*** IF ***
Counter 'CounterArtilleryKillCount' IS Equal To 2
*** THEN ***
Show military briefing String: 'CounterArtillery:2' for 6000 milliseconds.

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.