Community-A-4E / community-a4e-c

The Community Repo for A-4E-C and its Official Submods
598 stars 87 forks source link

AN/ASN-41 Navigation Computer produces drift during active pause #627

Open LT-Rusty opened 1 year ago

LT-Rusty commented 1 year ago

During active pause, the aircraft's navigation system continues to tick over, showing the position changing as if the aircraft was still moving. When active pause is in effect, although systems continue to function, the aircraft itself is at rest compared to the world, and the position display on the ASN-41 panel should be frozen along with the plane.

Other aircraft with INS systems do not, so far as I can tell, behave the same way. (Viggen, for one, does not: I went supersonic over the ocean in order to prevent the terrain matching system from functioning, and the INS readout stayed steady during active pause.) Aircraft with GPS, obviously, wouldn't behave that way.

Moreover, a real-life inertial navigation system would not behave that way, in the unlikely event that an aircraft going 400 kts were suddenly frozen in mid-air: it would observe a sudden deceleration and understand that it was at rest compared to its frame of reference, and updates to its position readout would reflect being at rest.

Finally, active pause is intended to give newer and slower players a chance to catch their breath while figuring out controls and finding switches, and this behavior from the navigation system undermines that by making what is frequently a confusing situation for new players even more unnecessarily confusing.

callmepartario commented 1 year ago

should be doable to bypass the entire system update function when the active pause is engaged, the question is how to detect the active pause state. i'll have to do some research.

JDeeth commented 1 year ago

Just a point of order - the AN/ASN-41 isn't an INS - it's essentially dead-reckoning navigation system. Given a start position and a heading, speed, and drift angle, it continuously updates an estimate of your current position, basically a two-dimensional version of a car's odometer. It can use a Doppler radar to get an accurate groundspeed and drift angle, or the pilot can input an estimate.

It should still cease to update the position while in Active Pause though!

I've got a tangential question... does the Doppler radar lock on too easily? In other systems (e.g. Decca Doppler 72) it wouldn't get a lock while on the ground and would only get a lock while airborne if you manually dial in a groundspeed and drift angle that aren't hugely inaccurate - e.g. navigator dials in 170kts groundspeed and turns the radar on once airborne and doing 170kts +/- 25kts - not sure of the exact limits. Likewise, lose lock in a steep manouever and it won't regain lock if the new groundspeed and drift angle are hugely different to what it remembers. Not sure if this is in scope for this module or should be a separate ticket!

08jne01 commented 1 year ago

Just a point of order - the AN/ASN-41 isn't an INS - it's essentially dead-reckoning navigation system. Given a start position and a heading, speed, and drift angle, it continuously updates an estimate of your current position, basically a two-dimensional version of a car's odometer. It can use a Doppler radar to get an accurate groundspeed and drift angle, or the pilot can input an estimate.

It should still cease to update the position while in Active Pause though!

I've got a tangential question... does the Doppler radar lock on too easily? In other systems (e.g. Decca Doppler 72) it wouldn't get a lock while on the ground and would only get a lock while airborne if you manually dial in a groundspeed and drift angle that aren't hugely inaccurate - e.g. navigator dials in 170kts groundspeed and turns the radar on once airborne and doing 170kts +/- 25kts - not sure of the exact limits. Likewise, lose lock in a steep manouever and it won't regain lock if the new groundspeed and drift angle are hugely different to what it remembers. Not sure if this is in scope for this module or should be a separate ticket!

Yes nav computer is too accurate in general, it only gets about .5 nmi per hour drift where realistically it should be closer to 2+nmi per hour. It needs to be remodelled a bit better.

That aside the issue here is that in active pause all the inputs to the aircraft are still showing movement over the ground. So the system does not see the same velocity as what the player sees. The reason it wasn't implemented is there is no obvious non-hacky way to see if the aircraft is active paused.

callmepartario commented 1 year ago

maybe we just change how error/drift is accrued: instead of dead reckoning, we could use the actual position + error (which is increased over mission time, each increment of error should be some function of the alignment of the (AN/AJB-3?) ADI gyros, etc.)

JDeeth commented 1 year ago

Can you detect active pause by the in-game clock ceasing to update, perhaps? I'm not sure if it'd make much of a difference to the user, but it seems nicer for the nav computer to faithfully count the miles moved north/south and east/west, and the errors to come naturally from the compass system and from Doppler groundspeed and drift measurements.

(On a bit of a tangent again - the UK's V-Bomber fleet's Dopper nav system, the weak link was the compass. It was accurate to about ±1°, which was much more significant source of error than any inaccuracy from the radar.)

callmepartario commented 1 year ago

yeah, that's why i suggested to look at mission time -- question is does mission time advance during active pause? it very well might; i have not had a moment to test.

nadav-yo commented 11 months ago

Mission time is advancing in pause.

nadav-yo commented 11 months ago

@callmepartario AFAIK, the command for Active Pause is 816 in the mission editor. can we maybe use that?