feat(network): Add debug command-line automated match startup - #3111
Draft
bobtista wants to merge 2 commits into
Draft
feat(network): Add debug command-line automated match startup#3111bobtista wants to merge 2 commits into
bobtista wants to merge 2 commits into
Conversation
|
I'm working on a related networking refactor in feature/modernize-networking that removes networking settings from the client entirely (splitting it into smaller PRs against TSH). Might be worth syncing so this doesn't need rework once that lands. |
Author
I reviewed your related work, these will go well together. Whichever is merged first just needs to account for differences in prefs.getLANIPAddress() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #3092
The existing debug multi-instance support can run multiple clients on one machine, but each client must still be navigated through the Direct Connect menus, joined, accepted and started manually. This makes repeatable live network testing, particularly at the eight-player limit, difficult to automate.
Now debug builds can use
-autoNetworkMode directwith either-autoNetworkHost <player-count>or-autoNetworkJoin <host-address>to form and start a match through the existing LAN state machine. Optional arguments select the bound local IPv4 address, player name, map cache path and timeout. Joining clients retry while the host starts, report map availability and accept the authoritative options. The host waits for the exact expected number of human players before invoking the normal start validation andLANAPI::OnGameStartpath. Process spawning and supervision remain external.This does not change simulation commands, CRC calculations or replay data. Normal startup is unchanged when the arguments are absent.
Todo:
Notes: