beyond-all-reason / beyond-all-reason/RecoilEngine
Bugger-off lingers even if its source is gone
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
See https://github.com/beyond-all-reason/Beyond-All-Reason/issues/3464
Bugger-off lingers intentionally, so that accidentally stopping a unit doesn't make it block the area forever. Solving this would require one of:
* some tracking between the build order that triggered the bugger-off, and the units affected (to cancel their bugger-off state if the order is cancelled). Sounds like this would require something very overengineered (with potential for inflicting overhead upon all order processing) for such relatively unimportant issue.
* reduce duration of the bugger-off state and make it reapplied more often accordingly. Pedestrian solution, may have unwanted side effects.
* change bugger-off from being applied once as a status effect with a duration, into being a semi-persistent [aura](https://github.com/beyond-all-reason/spring/issues/1508). Still requires linking something to the order but at least now it's a single aura instead of arbitrarily many units.
Contributor guide
Research direction
Start with the linked issue #3464 and trace how bugger-off is applied after a build order and how its duration is cleared. The issue names no files, tests, or entry point, so first establish a reproducible case and identify the relevant order and status-effect code. Done requires preventing bugger-off from lingering when its source order is gone without breaking intentional persistence.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100