beyond-all-reason / beyond-all-reason/RecoilEngine
Dynamically adding and removing callins can cause gadgets to be skipped
Open
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
Adding a new GameFrame to call while the gadget handler is iterating over GameFrame causes a gadget to be skipped. This is due to the simple way that callins are stored.
See https://github.com/ZeroK-RTS/Zero-K/issues/4917
Contributor guide
Research direction
Start by reading the callin storage and gadget-handler iteration code, then compare the behavior with the linked Zero-K issue #4917. Reproduce adding a GameFrame while iteration is in progress and define done as ensuring no gadget is skipped when callins are added or removed dynamically.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100