Hi BuildMeister, I just ran into the same issue.
The hardcoded pause is a separate problem, but I just took a look in UnrealVersionSelector.cpp (\Engine\Source\Programs\UnrealVersionSelector\Private\UnrealVersionSelector.cpp)
and found a list of parameters.
If you change Setup.bat to call UnrealVersionSelector with /register /unattended (in that specific order), it should skip the prompt and register automatically.
In terms of solutions, I think Epic could add a parameter check like they do at the top of Setup.bat for --prompt or --force for GitDependencies. Would like to see Epic add that at some point but it wouldn’t be a priority.
For now, I’m probably going to use a find and replace tool (something like like fnr.exe) as part of my automated build process that finds the line ‘.\Engine\Binaries\Win64\UnrealVersionSelector-Win64-Shipping.exe /register’ in Setup.bat and appends /unattended as well.
Alternatively you could make your own copy of Setup.bat, and swap the pushd at the top with your engine path if running from another folder, then remove the pause and add the unattended command yourself.
Hope this helps,
David Smith
Archway Interactive