Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Test Builds => Topic started by: karajorma on February 19, 2010, 12:10:23 pm
-
Those of you without access to the internal won't know the history behind this but in July I agreed to add a hack to the engine to solve an issue WCS were facing under the condition that I would later return and replace it with a much better working version.
The basic issue is this. When issuing orders to disarm or disable to any fighter/bomber an enemy ship would become protected and all orders to attack it would be removed until the ship was disabled/disarmed. This was done in FS2 so that you could disable a ship and have something come in and capture it (otherwise you'd disable it only to watch the rest of the ships present blow it to bits). Problem was it meant you couldn't have your wing disable a ship to stop it getting away while having the rest of your team continue trying to kill it.
Anyway that issue should now be partially fixed in this build (http://www.fs2downloads.com/Misc-Downloads/Builds/Fixed_Disarm_Disable.7z). By default there should be no difference in the AI behaviour from normal. However you can alter behaviour using these objecttype.tbl settings.
$Beams Easily Hit: YES
$Protected on cripple: YES
$No Huge Beam Impact Effects: YES
By default all non huge ships are ship-protected as soon as you issue orders to disable/disarm them. Change this to NO if you want other ships to still be able to attack them.
$AI:
+Passive docks: ()
+Ignored on cripple by: (
"cruiser"
"corvette"
"capital"
"super cap" )
By default FS2 will remove attack goals from all ship classes as soon as anything has disarm/disable orders. With the settings above fighters and bombers would continue to follow attack orders for the ship but capships would lose theirs and only attack if they had no other orders (and the ship wasn't protected by the setting above).
An option to allow FREDders to change the behaviour from the default table setting is planned and will be added once I have some feedback on whether what I've done so far works properly.
If you've been using the $disarm or disable cause global ai goal effects: flag this has now been removed and will be ignored if you have in in your tables. It is highly advised you remove it now as there are plans to make FS2_open give Warnings on finding incorrect AI_Profiles settings.
EDIT : I really should point out that there is a good chance that any bug in this code is going to screw up ai behaviour on disarm/disable for all mods, not just WCS. So it really does need testing.
-
Build updated. I'll add this to trunk in a couple of days.
-
Could you post a patch file by itself?
-
It's actually in SVN now if you'd like to merge it in. Commit 5937 to my branch.
-
Wasn't this supposed to make it into 3.6.12?
-
It would be awesome if it did (though of course I understand if it doesn't.)
-
Interesting. Whenever I've had to shoot to kill, but prioritize engines (e.g. SD Beleth) I've just targeted the Engines and issued orders to Destroy Subsystem. What's the AI do in that situation?
-
I believe that in that situation the protect is not placed on the target ship. I could be wrong.
The disarm/disable protects ship thing is really annoying because it gives the player the power to totally break otherwise tightly balanced warship duels.
-
Man, what's the status of this?
-
Yeah I'd like to know too. This bug broke War in Heaven's biggest mission for many players. :nervous:
-
Uh, it's not a bug.
-
Uh, it's not a bug.
This FEATURE, then!
-
So we've broken retail capture missions by letting AI destroy the ship?
Or is this behavior not enabled by default in the objecttypes.tbl?
-
So we've broken retail capture missions by letting AI destroy the ship?
Or is this behavior not enabled by default in the objecttypes.tbl?
What? Retail behavior hasn't been changed - we're looking for a way to alter it with specific AI profiles flags or something.