beyond-all-reason / beyond-all-reason/RecoilEngine

Bugger-off lingers even if its source is gone

Open
#1,616 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.