Author Topic: That delay before it is possible to shoot down bombs...  (Read 9506 times)

0 Members and 1 Guest are viewing this topic.

Offline Vrets

  • 27
That delay before it is possible to shoot down bombs...
1. Am I the only one that has noticed a slight 1-2 second delay between the AI launching a bomb, and the player's ability to intercept it with cannon fire? I swear that this has been the case for the 10+ years that I've played this game. I remember so distinctly that feeling when a Nahema launches a double "unknown bomb" at close range, and that instinctual, doomed knowledge that my lasers will not have time for the 1-2 second "grace period" to expire so I can save that transport.

2. If not, am I the only one to notice that this delay doesn't exist anymore, or at least is not as consistent? I was FREDing a quick escort mission (I know, I'm sorry) and I am able to intercept the AI's bombs (specifically, Cyclops) the moment they are launched. In fact, the Deimos that I am in charge of escorting is swatting down these bombs at point-blank range with blob turrets like I've never seen.  Nobody else is talking about this, but it looks so weird and unfamiliar that I have to mention something.

Perhaps it was only ever my crappy computer that granted bombs a 1-2 second "grace period" when launched. Or maybe I hallucinated the entire thing for all of these years.
« Last Edit: April 13, 2015, 09:15:52 am by Vrets »

 

Offline Goober5000

  • HLP Loremaster
  • Administrator
  • 214
    • Goober5000 Productions
Re: That delay before it is possible to shoot down bombs...
It's certainly possible.  There have been quite a few changes like this over the years, some intentional and some accidental.  But a change like this that affects balance should be optional.  Would you be able to test different builds to pin down when the behavior appears to have changed?

 

Offline Vrets

  • 27
Re: That delay before it is possible to shoot down bombs...
Yes, I could do that.

However, it would first be reassuring to have at least one other person that has noticed the 1-2 second "grace period" of bomb immortality, to validate my sanity before I jump into this.
« Last Edit: April 13, 2015, 12:35:21 am by Vrets »

 

Offline niffiwan

  • 211
  • Eluder Class
Re: That delay before it is possible to shoot down bombs...
to be honest, the only time I can recall that sort of grace period was when playing WCS:DD (and I found it damn annoying)
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline Goober5000

  • HLP Loremaster
  • Administrator
  • 214
    • Goober5000 Productions
Re: That delay before it is possible to shoot down bombs...
Yes, I could do that.

However, it would first be reassuring to have at least one other person that has noticed the 1-2 second "grace period" of bomb immortality, to validate my sanity before I jump into this.

If you can reproduce it, then I trust your judgement. :)

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: That delay before it is possible to shoot down bombs...
This delay should still be present as an AI profile flag which defaults to 1.5 seconds (matching the hardcoded BOMB_ARM_TIME #define in the Volition sources, it looks like).
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: That delay before it is possible to shoot down bombs...
That seems like it should still be destroyable, just not detonatable.

As in, the bombs won't go kaboom, merely fizzle out or fail to detonate on impact, if they are destroyed before the arm time.

My 2c (I think the arm time was more so you couldn't 'cheat' and point-blank fire into capships?  IRL, the reason would be so an accidental misfire/detonation or a hostile shootdown would not damage the bomber as much.)

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: That delay before it is possible to shoot down bombs...
That seems like it should still be destroyable, just not detonatable.

As in, the bombs won't go kaboom, merely fizzle out or fail to detonate on impact, if they are destroyed before the arm time.

My 2c (I think the arm time was more so you couldn't 'cheat' and point-blank fire into capships?  IRL, the reason would be so an accidental misfire/detonation or a hostile shootdown would not damage the bomber as much.)
That would be the weapons.tbl arm time, a separate value; the code for this one is in collideweaponweapon.cpp and clearly indicates that the collision will not happen during that grace period.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: That delay before it is possible to shoot down bombs...
Hmm.  What is the engine's purpose for making the bomb non-collideable at first?  :confused:

 

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
Re: That delay before it is possible to shoot down bombs...
I don't know, point is that it's retail behaviour which we need to preserve.
Let there be light
Let there be moon
Let there be stars and let there be you
Let there be monsters and let there be pain
Let us begin to feel again
--Devin Townsend, Genesis

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: That delay before it is possible to shoot down bombs...
Yeah, I realized that, just wondering what the :v: guys were reasoning.

Perhaps to give bombers a chance to successfully launch when being clobbered from behind by enemy interceptors?

 

Offline NGTM-1R

  • I reject your reality and substitute my own
  • 213
  • Syndral Active. 0410.
Re: That delay before it is possible to shoot down bombs...
Hmm.  What is the engine's purpose for making the bomb non-collideable at first?  :confused:

You can outrun a number of your bombs on afterburner; it's not even particularly hard. If you tap the burners at launch, you could run over your own bombs. In FS1, this would have killed you very quickly. In FS2, it'd be merely annoying.
"Load sabot. Target Zaku, direct front!"

A Feddie Story

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
Re: That delay before it is possible to shoot down bombs...
Hmm.  What is the engine's purpose for making the bomb non-collideable at first?  :confused:

You can outrun a number of your bombs on afterburner; it's not even particularly hard. If you tap the burners at launch, you could run over your own bombs. In FS1, this would have killed you very quickly. In FS2, it'd be merely annoying.
That seems like it should still be destroyable, just not detonatable.

As in, the bombs won't go kaboom, merely fizzle out or fail to detonate on impact, if they are destroyed before the arm time.

My 2c (I think the arm time was more so you couldn't 'cheat' and point-blank fire into capships?  IRL, the reason would be so an accidental misfire/detonation or a hostile shootdown would not damage the bomber as much.)
That would be the weapons.tbl arm time, a separate value; the code for this one is in collideweaponweapon.cpp and clearly indicates that the collision will not happen during that grace period.

 

Offline NGTM-1R

  • I reject your reality and substitute my own
  • 213
  • Syndral Active. 0410.
Re: That delay before it is possible to shoot down bombs...
missing the point

Arm time is a relatively recent addition and didn't exist in FS1. A Tsunami can, and will, blow up on you right out of the tube. And it does suck.

Also, l2r.

In FS2, it'd be merely annoying.

Just because they're not armed doesn't mean you couldn't run them over and get no bombs when you launched bombs. Simply being not-armed does not mean not-destructible.
"Load sabot. Target Zaku, direct front!"

A Feddie Story

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: That delay before it is possible to shoot down bombs...
Also, l2r.
Take thine own advice:
the code for this one is in collideweaponweapon.cpp and clearly indicates that the collision will not happen during that grace period.
This delay has absolutely no effect on ship/weapon collisions (which are handled by collideshipweapon.cpp); nothing stops you from colliding with your own bombs (unless you use collision groups and $Weapons inherit parent collision group:, but that's definitely not retail).
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline Vrets

  • 27
Re: That delay before it is possible to shoot down bombs...
Something is wrong, I can feel it; with every bomb interception mission, I am becoming more certain that the ~1-2 second bomb invulnerability "grace period" no longer exists. I was playing "Dunkerque" tonight and a pair of Nahemas launched bombs which appeared to instantly detonate...perhaps because either it, or the ship behind it, collided immediately ("instantaneously") with the bombs.

I should make a bomb testbench with a Fenris or something spamming bombs at an installation and just run through builds trying to shoot down the bombs. It's the ideal, sad project for a doomed saturday morning
« Last Edit: April 24, 2015, 12:21:18 am by Vrets »

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: That delay before it is possible to shoot down bombs...
Something is wrong, I can feel it; with every bomb interception mission, I am becoming more certain that the ~1-2 second bomb invulnerability "grace period" no longer exists. I was playing "Dunkerque" tonight and a pair of Nahemas launched bombs which appeared to instantly detonate...perhaps because either it, or the ship behind it, collided immediately ("instantaneously") with the bombs.
As already mentioned, the grace period doesn't apply to collisions with ships (and didn't in retail, either).
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline Vrets

  • 27
Re: That delay before it is possible to shoot down bombs...
That particular example may have been a red herring, but I still believe that something has changed from the retail experience. Bombs used to absorb incoming fire for ~1-2 seconds after being launched, which made bombers an actual danger when they were allowed to get too close to their targets. This experience is burned into my brain after what feels like a decade of playing this game.

I shall return with proof!

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: That delay before it is possible to shoot down bombs...
That particular example may have been a red herring, but I still believe that something has changed from the retail experience. Bombs used to absorb incoming fire for ~1-2 seconds after being launched, which made bombers an actual danger when they were allowed to get too close to their targets. This experience is burned into my brain after what feels like a decade of playing this game.

I shall return with proof!
1.5 seconds, and that's what it still defaults to.

If you can find proof that "$Delay Before Allowing Bombs to Be Shot Down:" is currently broken, though, I'd be very interested to see it!
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline Vrets

  • 27
Re: That delay before it is possible to shoot down bombs...
I have returned with proof of my accusations!

Step 1: download the mission "Bomb Testbench", contained in archive "bombtest.zip", from here.

Freespace2 mods has yet to verify my upload; thank you to Hunter from sectorgame for his simple upload process.

Step 2: follow my test plan exactly:

  • Load Fs2: SCP, build fs2_open_3_7_2_RC5 (I'm using NO_SSE), with the 2014 mediavps selected as your mod
  • Load mission with difficulty "medium"
  • Do not touch the controls. Time compression up to 4x is optional.
  • Observe as the alastor sentry guns successfully defend the Elysium transport, seemingly indefinitely*.
  • Close the game. Open Fs2 retail.
  • Repeat steps 2-3.
  • Observe as the sentry guns are not able to shoot down the bomb, and the Elysium transport is destroyed (usually on the very first bomb)

Further analysis is required, but the gameplay difference between retail and FSO is not subtle at all. Bombs are much more difficult to intercept in retail; it is highly likely that bombs have a far longer invulnerability period in Retail than in FSO.

EDIT: time compression is optional
« Last Edit: April 24, 2015, 09:57:43 pm by Vrets »