beyond-all-reason / beyond-all-reason/RecoilEngine
Headless local replays listen on the original game's port
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
Headless is in theory great for doing things like mass replay analysis, but apparently it still opens up whatever port was specified in the startscript as `HostPort=9999`. So if the original game was played such that players connected to `12.34.56.78 : 9999` then your local replay will also open up `localhost : 9999` for listening, same as the original host did. This makes parallel running much more difficult than it should be because the host could have had a very limited pool of ports and then the replays conflict with each other on a collision.
Note that listening for connections is a good feature (for MP replays), the request is to add a springsetting or somesuch to make it optionally possible to disable.
Contributor guide
Research direction
Trace how headless local replays consume the startscript HostPort=9999 value and how existing springsettings are defined and read. Verify the behavior with parallel headless replays; done means a setting can disable listening for local replays while preserving listening for multiplayer replays.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev, networking
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100