Quote:
Originally Posted by TheDarkWraith
Looking over the stock code the veterancy level is already accounted for.
This delay is basically already coded in. The signal strength returned from the function that checks to see if sensor detected any contacts is used in a random number generator. The value of the random number is the final decider as to whether or not unit detected any contacts. If they didn't then there's a game timer that has to expire before contacts are checked again to see if they are detected.
|
Yep, but if I got you correctly, the sensor whose detection strenght is currently taken in account (as far as magnetic detection is concerned), is a "boosted" hydrophone, which is not affected by external visibility anyway. What I am suggesting is: as soon as the loop detects a contact, get contact's range and calculate the visual detection time of an hypothetical surfaced contact at the same range (use a small surface vessel or a surfaced submarine as reference for detectable surface factor).
if, given the current external conditions, this time is shorter than loop's detection time, and the enemy contact is surfaced: take no action (the contact has already been detected and reported by the visual sensor probably);
if visual detection time is shorter than loop's detection time, and the enemy contact is submerged: send immediate contact report;
if visual detection time is longer than loop's detection time (no matter if the contact is surfaced or submerged): calculate the detection time difference among the two sensors, and apply an additional delay equal to it;
if, finally, the contact (submerged or not) is beyond loop station's max visual range (on moonless nights or with heavy fog), apply a veterancy related random delay, taking into account the investigations needed for avoiding a fake alarm.
Is this too complicated?