beyond-all-reason / beyond-all-reason/RecoilEngine
Handle fixed-wing airplane `turnRadius`
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
`turnRadius` seems to control two behaviours in fixed-wing airplanes.
One is the tolerance for reaching its move goal. For example, the aircraft is considered good enough for move orders marked `X` in the picture below (since they're in the circle of `TurnRadius` radius), so these move orders would be considered done. (In particular, giving such order without SHIFT immediately finishes it and thus lands the plane.)

The other is the minimum distance to start a turning maneuver after passing a target. In the picture below, the aircraft will first fly straight to leave the circle of radius `turnRadius` from its attack target, and only then will it start turning.

These behaviours are good to control separately (because a large circle might be needed when passing a target, but this makes repositioning a plane to an adjacent spot feel terrible because it drops those orders).
The first task is to check whether some interface to control those behaviours separately already exists, whether via Lua or unit defs. I could swear there was something but I can't locate it at the moment so maybe I hallucinated it.
The second task would be to make them controllable separately if they aren't already, ideally by just splitting them into two parameters (the new one defaulting to the existing `turnRadius` field if not provided, for backward compatibility).
Contributor guide
Research direction
No files, tests, or entry points are named. Trace how fixed-wing `turnRadius` is handled, then check whether Lua or unit definitions already expose separate controls; done means confirming the existing interface or defining separate behaviors with the new parameter defaulting to `turnRadius` for compatibility.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, lua
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100