Hard Light Productions Forums
General FreeSpace => FreeSpace & FreeSpace Open Support => Topic started by: Trivial Psychic on January 14, 2012, 08:54:07 am
-
I'm currently FREDing a mission for Inferno, but I'm running into an issue where friendly pilots appear to be disregarding event-triggered orders to ignore a certain target, (using either ai-ignore or ai-ignore-new). On top of that, I had to give the ignore orders because the AI pilots in question were attacking the target despite the fact that it is flagged as protected. I flagged it that way in the initial status window, and I even added in further protect-ship instances when that was being ignored. What would cause the AI to disregard ignore orders and protection flags? Can multiple instances of these flags cause blanket confusion and insubordination among the AI pilots? At one point in my mission design, I gave those fighters and a cap-ship orders to attack that target so they would move towards it, but I hoped they would just approach and not attack. I removed these attack orders from the mission, but could they have left some kind of a ghost order to attack against all orders to the contrary?
-
Is the ship getting disabled at any point? That can cause several issues although I'd expect protect to survive that if it was already set.
-
The target is not a ship, but an installation... which has no engines to disable.
-
If you add too many ai-ignore orders, I think it eventually overrides all the others - I had a very similar problem not long ago
-
Actually, I had only one instance of AI-Ignore(-New). I only added that in because they were ignoring the protection flag. I then added in additional protection instances through the mission, in case they were being overridden at some point. I think that I even gave player commands (in mission) to ignore the target and even THAT didn't stick. Sure, they switched targets at first, but then soon after went right back to the protected target.
Anyway, I've tried something a little more complex with regards to adaptive orders, ensuring that they always have specific targets to go after. For each wing, I used a when-argument instance, so that when the last ordered targets are destroyed the wing gets orders to attack the six remaining targets, with an embedded conditional to invalidate the argument corresponding to any target already destroyed. The event has a repeat count of six and invalidates the succeeded argument, which became target for the new ai-attack order.