beyond-all-reason / beyond-all-reason/RecoilEngine
There are undocumented synced actions
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
See GameServer hardcoded action handling [here](https://github.com/beyond-all-reason/spring/blob/master/rts/Net/GameServer.cpp#L2446-L2449).
Some have documentation as Synced Commands, such as [cheat](https://github.com/beyond-all-reason/spring/blob/master/rts/Game/SyncedGameCommands.cpp#L44), a lot don't though.
There's even one of them bound as part of the default keybindings, `forcestart`, this one is undocumented and how I discovered this issue.
Proposal is to maybe refactor these as synced commands, that are automatically documented. If the refactor not feasible, find another way to get these documented, e.g. dummy synced command that still allows the hardcoded handling?
Contributor guide
Research direction
Read the hardcoded action handling in rts/Net/GameServer.cpp around lines 2446-2449 and compare it with the synced command handling in rts/Game/SyncedGameCommands.cpp around line 44. Trace the default keybinding for forcestart and determine how all such actions should become documented; done means the previously undocumented synced actions, including forcestart, are covered by the chosen approach.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100