What are the AI issues, specifically?
Moderator: Moderators for English X Forum
Re: What are the AI issues, specifically?
An I's optimal firing position puts it below its target, and it uses the same L graviton turrets, so in theory it can cause the same issues as the K. But the I is much slower and less maneuverable than a K, so it doesn't create the issues as often in practice.
If you watch a K and I attack the same station, at the same, from roughly the same starting position, you'll see the K fly above the station while the I flies below it
If you watch a K and I attack the same station, at the same, from roughly the same starting position, you'll see the K fly above the station while the I flies below it
Admitting you have a problem is the first step in figuring out how to make it worse.
Re: What are the AI issues, specifically?
This is not my Rattlesnake; it belongs to ZYA, and it's not an ambush.GCU Grey Area wrote: ↑Sun, 28. Jan 24, 15:13Not sure what you're trying to demonstrate with that video. Your Rattler ambushed a Behemoth from astern. First couple of volleys missed or were slightly out of range. When it did land a hit Behemoth turned hostile & manoeuvred to bring it's main guns to bear. However it was unable to fire back before it was destroyed. Sure, I'd agree a ship being shot from astern by a ship with superior firepower will struggle, but that's hardly a profound revelation.
The firing range of the Rattlesnake is considerably shorter than that of the Behemoth, so the Rattlesnake attempts to close the distance. When it gets too close for the Behemoth to fire, the Behemoth tries to move away.
This is precisely the situation that occurs when the K moves too close, which is triggered by the min-max firing range.
GCU Grey Area wrote: ↑Sun, 28. Jan 24, 22:06Claiming (incorrectly) that the undesirable behaviour exhibited by destroyers when faced by Xenon K also extends to combat against Rattlesnakes just wastes everyone's time.
Code: Select all
<!-- STATE 1: big movement needed if:
you are too far away,
or you are too close. -->
<do_if value="$distance gt $movethreshold_max or $distance lt $movethreshold_min">
Last edited by flywlyx on Mon, 29. Jan 24, 05:57, edited 2 times in total.
Re: What are the AI issues, specifically?
Yes it is :https://youtu.be/9m8XJ9GngW0
And this is the rattlesnake version:https://youtu.be/4EJ2b-wxXmo
Because the rattlesnake's weapon range is shorter, so it is very obvious it starts running away way later.
Re: What are the AI issues, specifically?
Fleet AI for destroyers is broken, because of formations.
Here you can watch 5x Odysseus E perform well without fleet, and bad in fleet. Same happened with other destroyers:
https://youtu.be/GNauP14x-qY?si=KqpyOUQbtkkJIpbw
https://youtu.be/GQsnYfIpG5s?si=0DivQO7bDGBonAXc
I did it witch a lot more destroyers IS, mostly they did not use the maingun.
Here you can watch 5x Odysseus E perform well without fleet, and bad in fleet. Same happened with other destroyers:
https://youtu.be/GNauP14x-qY?si=KqpyOUQbtkkJIpbw
https://youtu.be/GQsnYfIpG5s?si=0DivQO7bDGBonAXc
I did it witch a lot more destroyers IS, mostly they did not use the maingun.
Re: What are the AI issues, specifically?
As I have shown in my videos, there are also issues without fleet, but its true that it causes less trouble overall.EGO_Aut wrote: ↑Mon, 29. Jan 24, 09:02Fleet AI for destroyers is broken, because of formations.
Here you can watch 5x Odysseus E perform well without fleet, and bad in fleet. Same happened with other destroyers:
https://youtu.be/GNauP14x-qY?si=KqpyOUQbtkkJIpbw
https://youtu.be/GQsnYfIpG5s?si=0DivQO7bDGBonAXc
I did it witch a lot more destroyers IS, mostly they did not use the maingun.
The best results I got with small groups of 3-5 Dumbstroyers in a fleet, where the fleet leader has shorter range than the ships that follow him. (e.g. Rattlesnake + Syn, Osaka + Ray etc.)
This causes the "followers" to be in weapons range when the leader is, and then actually fire while being able to stay in formation etc.
But I am still investigating this as I play.
So, as I expected - the K is the reason for the "hugging" happening, since they dont do it to the I.flywlyx wrote: ↑Mon, 29. Jan 24, 05:49Yes it is :https://youtu.be/9m8XJ9GngW0
And this is the rattlesnake version:https://youtu.be/4EJ2b-wxXmo
Because the rattlesnake's weapon range is shorter, so it is very obvious it starts running away way later.
I observed the same yesterday with my Rays (at least some fired their laser), when I accidently jumped into a xenon sector while the xenon wanted to go out and found myself in the middle of 5K, 1I and hundreds of M/S, but the Rays did use their Main guns at distance against the I.
-
- Posts: 7842
- Joined: Sat, 14. Feb 04, 23:07
Re: What are the AI issues, specifically?
Don't believe you. Suspect you turned off the HUD before starting the recording specifically to hide factional allegiance. Also fought enough Behemoths during my Spear of the Patriarch game to know how they react to the presence of a hostile Rattlesnake - they fly towards it & shoot first using their range advantage, rather than meekly flying away, oblivious to the pursuing Rattler until they are shot. Latter behaviour is much more characteristic of a ship from a neutral or friendly faction that's being ambushed (done sufficient piracy to know what that looks like too).
Yet your own video proves this is a false assertion. Behemoth clearly stops & turns to face it's attacker after being shot, rather than moving away: https://youtu.be/CGpTq8XTZjA?t=57The firing range of the Rattlesnake is considerably shorter than that of the Behemoth, so the Rattlesnake attempts to close the distance. When it gets too close for the Behemoth to fire, the Behemoth tries to move away.
Please stop spreading misinformation, it helps no one.
Re: What are the AI issues, specifically?
Well it's bright red and has the ZYA logo visible on the side. Do you really think it's more likely he bothered to set all that up to trick you, rather than just recorded a ZYA ship attacking something in a way you aren't personally used to?GCU Grey Area wrote: ↑Mon, 29. Jan 24, 17:16Don't believe you. Suspect you turned off the HUD before starting the recording specifically to hide factional allegiance
***modified***
Re: What are the AI issues, specifically?
I is slower and has stronger firepower, so ships don't have a chance to get as close as K.Yaeko wrote: ↑Mon, 29. Jan 24, 16:49So, as I expected - the K is the reason for the "hugging" happening, since they dont do it to the I.
I observed the same yesterday with my Rays (at least some fired their laser), when I accidently jumped into a xenon sector while the xenon wanted to go out and found myself in the middle of 5K, 1I and hundreds of M/S, but the Rays did use their Main guns at distance against the I.
Ray will use their main weapon to freeze K too:
https://youtu.be/sU1crz8I9-o?si=j9uPOmo20x2339I1
I'm uncertain why individuals like yourself persist in holding onto your unfounded beliefs when the code clearly reveals what's happening behind the scenes, but you do as you please.
I don't require your belief, and I'm not interested in your hypotheses.
To substantiate your arguments, read the script and reference the relevant details.
Once the attack command is assigned, the fleet's involvement diminishes significantly; it may influence the initial position, but the ship's actual attack behavior remains largely autonomous.EGO_Aut wrote: ↑Mon, 29. Jan 24, 09:02Fleet AI for destroyers is broken, because of formations.
Here you can watch 5x Odysseus E perform well without fleet, and bad in fleet. Same happened with other destroyers:
https://youtu.be/GNauP14x-qY?si=KqpyOUQbtkkJIpbw
https://youtu.be/GQsnYfIpG5s?si=0DivQO7bDGBonAXc
I did it witch a lot more destroyers IS, mostly they did not use the maingun.
Given that AI capital ships primarily assume defensive roles, I'll endeavor to create more test showcasing that setup.
-
- Posts: 7842
- Joined: Sat, 14. Feb 04, 23:07
Re: What are the AI issues, specifically?
Trick me specifically? No. Video was created 10 months ago for some other purpose, but he neglected to check whether it refuted his entire point (i.e. Behemoth turns to fight after being shot rather than running away) before posting the link here. However think the point has been made. Hopefully devs won't waste their time trying to fix misinformation.
Re: What are the AI issues, specifically?
Ks (usually) are hugged by any destroyer, unless it already is static - so the issue seems to be the K moving. (I once called in a single Ray to a K, which I already wrecked mostly with my chimera, and it did not hug the K since it was static.)flywlyx wrote: ↑Mon, 29. Jan 24, 17:56
I is slower and has stronger firepower, so ships don't have a chance to get as close as K.
Ray will use their main weapon to freeze K too:
https://youtu.be/sU1crz8I9-o?si=j9uPOmo20x2339I1
See here, on a static K the Ray just did what it was supposed to do: https://imgur.com/a/IYk9wTs (But a moving one, it would go and hug - idk, guess it has to do with the Ks weird shape or so. Isnt the Ks "center of mass" aka: pivot/target point in the void below the ship - that might be the cause of the trouble?)
Also, the Rays dont really care about the Firepower of an I, they would be able to go just as close if they wanted to (those Rays have 275k shield after all, they are tanky.), especially given how many of them I have - but they dont, they behave differently than they do when Attacking a K. (but I need to put more effort into this, but Is are less common than Ks -.-)
See, the actually Point their nose towards the I and shoot, despite everything around them being a complete mess - which they dont do with a K, even in empty space: https://imgur.com/a/oFeU6Cq (yeah, later they got a bit confused by the mess, but thats fine I guess, I got myself into an awkward situation anyway xD)
EDIT: Dumbstroyer AI is complete "something else"... I just lost: 2 Rattlesnake, 2 Odysseus E - against a single K, OOS. (None of this makes *any* sense whatsoever, given the amount of L plasma at display here, the K would get popped - gg, reload, 1 hour of my life wasted.)
Re: What are the AI issues, specifically?
Yeah, the moving target is another problem, X4 AI has problems tracking moving targets, their target position is not updating every frame so it has a lagging issue.Yaeko wrote: ↑Mon, 29. Jan 24, 19:11Ks (usually) are hugged by any destroyer, unless it already is static - so the issue seems to be the K moving. (I once called in a single Ray to a K, which I already wrecked mostly with my chimera, and it did not hug the K since it was static.)
See here, on a static K the Ray just did what it was supposed to do: https://imgur.com/a/IYk9wTs (But a moving one, it would go and hug - idk, guess it has to do with the Ks weird shape or so. Isnt the Ks "center of mass" aka: pivot/target point in the void below the ship - that might be the cause of the trouble?)
So it is not the destroyers hugging the K, it is the K hugging the destroyers
The behavior of AI destroyers is influenced by various factors, but if I were to pinpoint the most critical one, it would be the interval at which they acquire targets. However, addressing this issue is also the most challenging because it requires a substantial allocation of system resources.Yaeko wrote: ↑Mon, 29. Jan 24, 19:11Also, the Rays dont really care about the Firepower of an I, they would be able to go just as close if they wanted to (those Rays have 275k shield after all, they are tanky.), especially given how many of them I have - but they dont, they behave differently than they do when Attacking a K. (but I need to put more effort into this, but Is are less common than Ks -.-)
See, the actually Point their nose towards the I and shoot, despite everything around them being a complete mess - which they dont do with a K, even in empty space: https://imgur.com/a/oFeU6Cq (yeah, later they got a bit confused by the mess, but thats fine I guess, I got myself into an awkward situation anyway xD)
EDIT: Dumbstroyer AI is complete "something else"... I just lost: 2 Rattlesnake, 2 Odysseus E - against a single K, OOS. (None of this makes *any* sense whatsoever, given the amount of L plasma at display here, the K would get popped - gg, reload, 1 hour of my life wasted.)
Acknowledging that AI may not achieve the level of proficiency seen in traditional RTS games could be necessary. The exact requirements for AI performance remain uncertain, and perhaps initially, the expectations for a challenging AI don't exist at all.
Re: What are the AI issues, specifically?
Tbh, the "AI" (and pathfinding) for L/XL/M0 needs a full rewrite for X5 the latest.
Thinking about all the things it cant do, and how limited it is in capabilities... lets say: it makes me wonder why it wasnt rewritten already.
I mean, here a quick list of all the things I know it cant reliably/properly do:
- Go from point A to B without flying into stuff (seen ships fly straight through stations - Idk what physics was doint at that moment, but I guess it had taken a day off.)
- Docking (they just crash into each other for no good reason)
- using destroyers front guns
- keeping reasonable attack distances
- not suiciding into stations because of situational unawareness
- flee properly
- stand still when shooting with main guns (dumbstroyers just splort their load somewhere, if they use their guns... if..)
- not brawl a K (allthough that might be a K-issue)
- not-realign to the plane in combat, especially if its a ship with more turrets below than above (Odysseus for example)
- reverse
- strafe instead of rotating for minutes just to move left 20 meters when attacking a station
- properly use traveldrive (there is some bug with traveldrive being activated/deactivated all the time)
- Actually traveldrive to the location it was ordered to and not fly 100km without traveldrive instead
- maybe not bounce into other ships when attacking (S/M especially)
And if we go one step further and consider the Factions also AI:
- factions having *zero* awareness of what happens in their territory (oh hey, a K is turning Family Zhin upside down, but no one ever came up with the Idea to send the 4 Rattlesnakes, Argus and Raptor from Family Kritt there... despite them being already at the southern gate.)
- Factions (especialy ZYA and PAR top left) sending Construction ships into xenon sector just to get them blown up.
- defense stations being built in the most useless locations, like far behind gates...
- factions building a dozen completely useless medical factories that never manage to sell their products to anyone because no one needs them to begin with. (I currently have that with ZYA)
- factions not fully equipping their destroyers? (Have seen some with missing turrets for some reason.)
- ARG regularly sending a lonely behemoth to ZYA to contest it... through a xenon sector. (as if a lone behemoth will cause any harm -.-... assuming it even makes it through the xenon sector)
All of those things combined, ship and faction AI lead to some very weird and "static" universes, where nothing really ever changes. Even the xenon are 100% predictable: when I attack their stations, after a while they will send a K.
Xenon never go and build like 2 I and 10K to send them into some system, no, its always the 2K1I combination and maybe another K that just happens to be there for some reason but doesnt belong to that group. (How about sending 500 S/M ships at once, or 20 Ks - especially in more advanced savegames? Or take those 500 S/M I mentioned and try to get to the highway-ring, and then leave the highway in argon prime or so, some random and unexpected place - cause trouble, unpredictable trouble.)
I think, the AIs (both of them, ships and factions) would be better if it had more room to actually make decisions, and not just follow some script -> behaviour tree, randomization etc.
Too many things in this game are "hardcoded" in one way or another - at least thats what it looks like to me.
I actually have to be careful to not slap the xenon too hard, otherwise they (predictable) faction AI of them will never ever recover, and I might have no more xenon at some point to play with.
Thinking about all the things it cant do, and how limited it is in capabilities... lets say: it makes me wonder why it wasnt rewritten already.
I mean, here a quick list of all the things I know it cant reliably/properly do:
- Go from point A to B without flying into stuff (seen ships fly straight through stations - Idk what physics was doint at that moment, but I guess it had taken a day off.)
- Docking (they just crash into each other for no good reason)
- using destroyers front guns
- keeping reasonable attack distances
- not suiciding into stations because of situational unawareness
- flee properly
- stand still when shooting with main guns (dumbstroyers just splort their load somewhere, if they use their guns... if..)
- not brawl a K (allthough that might be a K-issue)
- not-realign to the plane in combat, especially if its a ship with more turrets below than above (Odysseus for example)
- reverse
- strafe instead of rotating for minutes just to move left 20 meters when attacking a station
- properly use traveldrive (there is some bug with traveldrive being activated/deactivated all the time)
- Actually traveldrive to the location it was ordered to and not fly 100km without traveldrive instead
- maybe not bounce into other ships when attacking (S/M especially)
And if we go one step further and consider the Factions also AI:
- factions having *zero* awareness of what happens in their territory (oh hey, a K is turning Family Zhin upside down, but no one ever came up with the Idea to send the 4 Rattlesnakes, Argus and Raptor from Family Kritt there... despite them being already at the southern gate.)
- Factions (especialy ZYA and PAR top left) sending Construction ships into xenon sector just to get them blown up.
- defense stations being built in the most useless locations, like far behind gates...
- factions building a dozen completely useless medical factories that never manage to sell their products to anyone because no one needs them to begin with. (I currently have that with ZYA)
- factions not fully equipping their destroyers? (Have seen some with missing turrets for some reason.)
- ARG regularly sending a lonely behemoth to ZYA to contest it... through a xenon sector. (as if a lone behemoth will cause any harm -.-... assuming it even makes it through the xenon sector)
All of those things combined, ship and faction AI lead to some very weird and "static" universes, where nothing really ever changes. Even the xenon are 100% predictable: when I attack their stations, after a while they will send a K.
Xenon never go and build like 2 I and 10K to send them into some system, no, its always the 2K1I combination and maybe another K that just happens to be there for some reason but doesnt belong to that group. (How about sending 500 S/M ships at once, or 20 Ks - especially in more advanced savegames? Or take those 500 S/M I mentioned and try to get to the highway-ring, and then leave the highway in argon prime or so, some random and unexpected place - cause trouble, unpredictable trouble.)
I think, the AIs (both of them, ships and factions) would be better if it had more room to actually make decisions, and not just follow some script -> behaviour tree, randomization etc.
Too many things in this game are "hardcoded" in one way or another - at least thats what it looks like to me.
I actually have to be careful to not slap the xenon too hard, otherwise they (predictable) faction AI of them will never ever recover, and I might have no more xenon at some point to play with.
Re: What are the AI issues, specifically?
There was a brief time around 3.0 when Xenon could actually take sectors off the the other factions and HOP could do some serious damage as well. People complained and the universe became a lot more static as a result.Yaeko wrote: ↑Tue, 30. Jan 24, 00:35
I think, the AIs (both of them, ships and factions) would be better if it had more room to actually make decisions, and not just follow some script -> behaviour tree, randomization etc.
Too many things in this game are "hardcoded" in one way or another - at least thats what it looks like to me.
I actually have to be careful to not slap the xenon too hard, otherwise they (predictable) faction AI of them will never ever recover, and I might have no more xenon at some point to play with.
So unfortunately it seems some of that is by design.
-
- Posts: 7842
- Joined: Sat, 14. Feb 04, 23:07
Re: What are the AI issues, specifically?
Agree with that assessment. As an example this was the sort of fleet HOP was using back in 3.0:adeine wrote: ↑Tue, 30. Jan 24, 10:54There was a brief time around 3.0 when Xenon could actually take sectors off the the other factions and HOP could do some serious damage as well. People complained and the universe became a lot more static as a result.
So unfortunately it seems some of that is by design.
https://www.dropbox.com/scl/fi/ez5m0kw7 ... 3p3z0&dl=0
Haven't seen anything remotely like that in recent versions. In my past few games HOP have not even been able to clear their local Xenon sectors, which had previously been a consistent feature of the first few days of each new game. Think it's a real pity, HOP used to be a really fun faction to fight.
Re: What are the AI issues, specifically?
Bad design I would argue.
The universe should be more lively. (especially the basic factions, since the xenon will eventually overrun ZYA etc. - which causes me headache because I like my split ships etc., so I cant afford to lose them.)
For anything to actually pop off in the universe, you need an accident to happen (Example: you tricking the TER intervention fleet to disappear an ARG station etc. - eventually they will fight each other, aka: TER will roflstomp ARG)
================
Maybe we should add AI subroutines to the game that are "event based" and make them do stuff aside from the "basic functions". (If necessary, those need to cheat - no one will ever notice, but having all of that depending on the universe economy is just not a good idea and makes things uncontrollable.)
Let the pirates create a "harrassment fleet" and actually use it on the other factions instead of stacking up 200 ships and keeping them near the earlking at all times. (it just gets more and more -.-)
The split, for example, should (once economy recovered) start to send fleets to the borons and argons to kill them, they are at war after all. (It makes sense that the borons are defensive only, but ARG only sending a single behemoth is pathetic...)
And maybe TER should get really annoyed that the other factions are only fighting each other instead of the xenon and chime in on this, to bring them back to their senses -> proper diplomatic things happening etc.
Meh, "faction AI" (yes, I consider that AI) is way too rudimentary currently.
Of course, the issues with the AI-Destroyers tie into this, they just "evaporate" all the time due to their "limited" capabilities.
I have seen this at the start of the game, when HOP went after ARG and more or less just went through the gate and waited to be killed, which eventually happened. (They got like 1 station destroyed with their entire fleet)
Re: What are the AI issues, specifically?
Oh, I completely agree. But at the time, the consensus seemed to be the opposite. Lots of complaints about TEL struggling with XEN and HOP being out of control.Yaeko wrote: ↑Tue, 30. Jan 24, 20:11Bad design I would argue.
The universe should be more lively. (especially the basic factions, since the xenon will eventually overrun ZYA etc. - which causes me headache because I like my split ships etc., so I cant afford to lose them.)
For anything to actually pop off in the universe, you need an accident to happen (Example: you tricking the TER intervention fleet to disappear an ARG station etc. - eventually they will fight each other, aka: TER will roflstomp ARG)
Since I like to trade with NPC factions, the Xenon don't even make any headway with ZYA in my games. They just stall out in that quadrant. The only 'natural' faction changes I generally see in my games is Xenon being gradually wiped out across the universe.
Re: What are the AI issues, specifically?
I think Homeworld nailed the design of nose weapon mid-sized ships with the Ion frigates. I wonder how much better the fixed weapon destroyers would perform if we doubled their maneuverability. They still wouldn't be agile, just less awful.S!rAssassin wrote: ↑Sat, 27. Jan 24, 08:31Egosoft maked mistake on it. If ship have front guns, it should also have hight agility for aiming to enemy. Egosoft should gives nose weapons to ships, smaller than L destroyer, but bigger than M frigate. Destroyers should be bigger and turret-based, like XEN K.
Also I missing heaviest missiles for L/XL ships and heaviest torpedoes for L nose weapon as alternative.
-
- Posts: 362
- Joined: Sat, 7. Aug 10, 10:31
Re: What are the AI issues, specifically?
That's a point! That ships aren't big and not so slowpokes. X3 gives to us perfectly balance between speed of light frigate M7 with powerful nose weapons and slow tanky M2 with round firing arcs. X4 gives to us defenseless L destroyers and true destroyer for Xenon... No AI tweaks can fix that. Maybe, increasing maneuverability can do, but it could break balance...
And factions without XL battleships definitively needs own battleships (without analog of Asgard's XL-battery) as true destroyers.
Re: What are the AI issues, specifically?
The VRO mod does it right. Proper battleships for each faction, and the Asgard's beam of death is nerfed so as to not be so extremely overpowered. In VRO, the Asgard is a good battleship, but not something that instant wins over other battleships simply because of its front mounted laser beam. It relies more on its L sized turrets for damage.S!rAssassin wrote: ↑Fri, 2. Feb 24, 07:13That's a point! That ships aren't big and not so slowpokes. X3 gives to us perfectly balance between speed of light frigate M7 with powerful nose weapons and slow tanky M2 with round firing arcs. X4 gives to us defenseless L destroyers and true destroyer for Xenon... No AI tweaks can fix that. Maybe, increasing maneuverability can do, but it could break balance...
And factions without XL battleships definitively needs own battleships (without analog of Asgard's XL-battery) as true destroyers.
A lot of the AI issues in X4 would go away if the ships and weapons stats were properly balanced.
Re: What are the AI issues, specifically?
So this made me decide to compare them.S!rAssassin wrote: ↑Fri, 2. Feb 24, 07:13That's a point! That ships aren't big and not so slowpokes. X3 gives to us perfectly balance between speed of light frigate M7 with powerful nose weapons and slow tanky M2 with round firing arcs. X4 gives to us defenseless L destroyers and true destroyer for Xenon... No AI tweaks can fix that. Maybe, increasing maneuverability can do, but it could break balance...
And factions without XL battleships definitively needs own battleships (without analog of Asgard's XL-battery) as true destroyers.
The original homeworld Ion Cannon Frigates and the Cataclysm Ion Array Frigates were 120/134 meters long, moved at 300/245 m/s and had 75/50 m/s/s acceleration.
This puts them in the exact same size class as the larger M class ships in X4 and quite close to M class ship speed too.
Now Homeworld did put the frontal Ion Cannon on some bigger ships too. The Homeworld destroyers were up to 300m long which can be compared to X4 L class ships which start at 575 for the Behemoth and then just goes up from there with the Syn clocking it at 920. Homeworld 2 had the 1000 meter Battlecruisers with their trinity cannons, however they were deliberately designed around being very hard to hit anything but a stationary target with.
So as you and others have mentioned, what X4 appears to be missing are a class between M and L that allows ships to be big enough to mount heavy frontal weapons but remain small enough to actually be able to aim them while L and XL ships that are not quest related ships (and thus intended to be piloted by the player) should probably be turret only.
In terms of all factions needing battleships. I don't think I agree. I think it makes more sense to keep the XL category of ships focused on being support ships, while the actual fighting is done by more agile weapons platforms.