Fractal Softworks Forum

Please login or register.

Login with username, password and session length

Author Topic: Modifying Missile Avoidance.  (Read 1862 times)

Reshy

  • Admiral
  • *****
  • Posts: 1100
  • White
    • View Profile
Modifying Missile Avoidance.
« on: June 08, 2013, 10:17:11 PM »

Right now there are a few problems with how ships handle missiles.  First is that they will aim their shields at them regardless of the missile's strength or the unguided projectile flying towards them.  Second even after a missile is no longer tracking the ship will still act like it's tracking them and raise shield even if it's floating harmlessly.  Third, this also applies to missiles without tracking of any description.  So to fix that I have a few suggestions.



The AI treats missiles based on their damage type.  Fragmentation being the weakest gets little to no preference when compared to other damage types.  (Eg. Salamander VS Pilum)  Specifically it calculates damage based on their damage to the hull.  A 50 explosive damage missile vs a 500 damage fragmentation missile would preference the fragmentation.

AI will prefer to take Kinetic Missiles on it's hull if it's armor is in reasonable shape and the missile's damage would cause a significant amount of hard flux (Eg. Sabot shot at Enforcer)  In this case it'd calculate the damage that would be taken on the shield vs the hull and whatever would be in better shape takes the hit.  This is important for low-tech ships as they have weak shields and bulky armor, they need to utilize it better.

The AI will treat unguided and expended missiles as projectiles based on their current velocity.  So even if the missile is facing the ship it'll be ignored because it's flying away from it.

AI will prioritize what to protect from based on the potential damage to the hull.  A Helbore VS an Annihilator Missile will prefer to block the Helbore first because despite them both having explosive damage Helbore rounds deal 750 versus annihilator's 200.

Against large unguided missiles like Reapers the AI will try to strafe around it rather than retreat in a near straight line from it.


The reason why I think using damage calculations would be best is that with mods weapons can have all sorts of weird effects so having it be based on an algorithm rather than black and white typing would be best.
Logged

Silver Silence

  • Admiral
  • *****
  • Posts: 980
    • View Profile
Re: Modifying Missile Avoidance.
« Reply #1 on: June 08, 2013, 11:55:25 PM »

Second even after a missile is no longer tracking the ship will still act like it's tracking them and raise shield even if it's floating harmlessly.
Ah, but it's not floating harmlessly. That's the thing. The missile has simply run out of fuel. Until the point that it fades out of existence, that missile can still smack a ship and do damage. Another thing to note is that these "dead" missiles no longer differentiate between friend or foe and explode on the first thing they hit. A Reaper will still rip you a new one, Sabots will still fire their charge, Hurricanes will still split into a MIRV. Things like Annihilators have a range much higher than the one listed as they spend several seconds in this inert out-of-fuel state before fading. The Neutrino Corp's Piledriver-class with it's Unstable Photon Cannon is practically built upon this idea. The single missile it fires will split in flight into about 30 missiles that is an absolute nightmare for non-flak style PD. But those 30 missiles become inert maybe half a second after they split, so -anything- in the way that might normally be fine if it was a wave of Pilums will likely take some serious damage from the Photon Cannon.
Logged

Reshy

  • Admiral
  • *****
  • Posts: 1100
  • White
    • View Profile
Re: Modifying Missile Avoidance.
« Reply #2 on: June 09, 2013, 12:59:38 AM »

Second even after a missile is no longer tracking the ship will still act like it's tracking them and raise shield even if it's floating harmlessly.
Ah, but it's not floating harmlessly. That's the thing. The missile has simply run out of fuel. Until the point that it fades out of existence, that missile can still smack a ship and do damage. Another thing to note is that these "dead" missiles no longer differentiate between friend or foe and explode on the first thing they hit. A Reaper will still rip you a new one, Sabots will still fire their charge, Hurricanes will still split into a MIRV. Things like Annihilators have a range much higher than the one listed as they spend several seconds in this inert out-of-fuel state before fading. The Neutrino Corp's Piledriver-class with it's Unstable Photon Cannon is practically built upon this idea. The single missile it fires will split in flight into about 30 missiles that is an absolute nightmare for non-flak style PD. But those 30 missiles become inert maybe half a second after they split, so -anything- in the way that might normally be fine if it was a wave of Pilums will likely take some serious damage from the Photon Cannon.


I know it's not 'floating harmlessly' but it has become little more than a glorified projectile.  If it's not even possible for it to hit the ship it will still raise shields towards it simply because it's near by.  If a MIRV is capable of splitting it's probably because it's still flying towards the ship.  Otherwise it wouldn't because it'd be flying further away and not facing the right direction.  I'm not saying for the AI to ignore them but to treat them as a projectile.  I really like it when someone actually reads past the first paragraph before posting.  Otherwise people leap on the first thing they see without understanding the context in which it is said.


Also, again, we cannot balance around mods.  Second, even in that case because the missile is still on a collision course with the ship it'd still have it's shields raised. 
Logged

Thaago

  • Global Moderator
  • Admiral
  • *****
  • Posts: 7220
  • Harpoon Affectionado
    • View Profile
Re: Modifying Missile Avoidance.
« Reply #3 on: June 10, 2013, 09:35:12 AM »

A quick note on MIRV's -if you dodge sideways they will fly past you, then split into their burst of death (I've been killed by this way too many times, its kind of embarrassing :P). They usually have fuel left so this isn't an issue with your suggestion, but I guess it could happen in an edge case?

Quote
AI will prefer to take Kinetic Missiles on it's hull if it's armor is in reasonable shape and the missile's damage would cause a significant amount of hard flux (Eg. Sabot shot at Enforcer)  In this case it'd calculate the damage that would be taken on the shield vs the hull and whatever would be in better shape takes the hit.  This is important for low-tech ships as they have weak shields and bulky armor, they need to utilize it better.

Don't they already do this? Maybe I'm misremembering, but I think I've seen low tech ships like the enforcer doing this when there isn't significant HE damage also inbound.
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24125
    • View Profile
Re: Modifying Missile Avoidance.
« Reply #4 on: June 10, 2013, 09:53:39 AM »

Don't they already do this? Maybe I'm misremembering, but I think I've seen low tech ships like the enforcer doing this when there isn't significant HE damage also inbound.

Indeed. The AI already does virtually everything that's suggested in the OP. The difference in interpretation, I suspect, is because it doesn't do it perfectly; it's not all as simple as it might sound - real life is messy :)

(Different damage types coming in at the same time, only using approximate bounds for detecting potential collision danger, etc.)
Logged

Reshy

  • Admiral
  • *****
  • Posts: 1100
  • White
    • View Profile
Re: Modifying Missile Avoidance.
« Reply #5 on: June 12, 2013, 03:13:33 PM »

Don't they already do this? Maybe I'm misremembering, but I think I've seen low tech ships like the enforcer doing this when there isn't significant HE damage also inbound.

Indeed. The AI already does virtually everything that's suggested in the OP. The difference in interpretation, I suspect, is because it doesn't do it perfectly; it's not all as simple as it might sound - real life is messy :)

(Different damage types coming in at the same time, only using approximate bounds for detecting potential collision danger, etc.)


It still has flaws like treating all missiles as a higher threat than projectile or beam weapon, most noticeable with annihilator and swarmers, the AI just doesn't know how to deal with missile spam and 'decoy' missiles.  In this case however the enforcer may take the kinetic missile on the shield even if they're being shot at by a HE from the other side which makes the AI look kind of dumb.
Logged