View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0006387 | Spring engine | General | public | 2020-05-05 23:51 | 2020-07-04 17:31 | ||||
Reporter | raaar | ||||||||
Assigned To | |||||||||
Priority | normal | Severity | major | Reproducibility | sometimes | ||||
Status | closed | Resolution | no change required | ||||||
Product Version | 104.0 +git | ||||||||
Target Version | Fixed in Version | 104.0 +git | |||||||
Summary | 0006387: 104.0+ | fighter aircraft attack runs sometime go way past the target and even refuse to turn if ordered to move | ||||||||
Description | Fighter aircraft are hard to control even if given high maneuverability attributes. One of the main reasons for this is that when they're doing an attack run they'll often keep going past the target and refuse to turn even if manually ordered to move somewhere else. this is a very old problem. It makes controlling "strafeairmovetype" aircraft a pain and often developers won't even maneuverable add high weight ones to their games. | ||||||||
Steps To Reproduce | spawn a series of spaced "target" units along a direction, then spawn "aven_falcon" fighter and order it to attack the closest "target" along that same direction. It has a belly turret that keeps firing its lasers at the targets as they come into range and may refuse to turn when ordered and just prolong his attack run way past the original target. | ||||||||
Additional Information | There's a place on the code here where the unlocking of maneuvers seems tied to the passing of time since the frame where the fighter last fired its weapon https://github.com/spring/spring/blob/develop/rts/Sim/MoveTypes/StrafeAirMoveType.cpp#L824 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | Irrelevant | ||||||||
Attached Files |
|
![]() |
|
Kloot (developer) 2020-07-04 17:31 |
the very line of source code that you quoted references a variable called "maneuverBlockTime", and guess how you can change its value? could it be that you just have to use Lua? also: read the changelog (https://github.com/spring/spring/blob/develop/doc/changelog.txt#L278) before creating a duplicate issue (0005652) next time. |