o3de-multiplayersample
o3de-multiplayersample copied to clipboard
GameLift: Connect button does not become active after entering the requested Player Session Token
Describe the bug This issue should be considered as Blocker.
Entering the requested Player Session Token in JSON format inside the MultiplayerSample.GameLauncher connecting to the GameLift (with --loadlevel="mpsgamelift/prefabs/GameLiftConnectJsonMenu.spawnable"
argument) does not make the "Connect" button active, effectively blocking from testing GameLift Anywhere and GameLift.
Prerequisites
- MultiplayerSample Project setup from Github, built and run using the https://github.com/o3de/o3de-multiplayersample/blob/development/README.md instructions.
- Follow GameLift Anywhere or GameLift instructions from https://github.com/o3de/o3de-multiplayersample/blob/development/MPSGameLift/Documentation/GameLift.md until running the MultiplayerSample.GameLauncher is required.
Steps to reproduce
- Run the Client with:
<path-to-multiplayer-sample>\build\windows_mono\bin\profile\MultiplayerSample.GameLauncher.exe -bg_ConnectToAssetProcessor=0 --loadlevel="mpsgamelift/prefabs/GameLiftConnectJsonMenu.spawnable"
- Enter the required Player Session Token in JSON format.
Expected behavior Connect button becomes green and clickable. User can join the GameLift Game session.
Actual behavior Connect button stays gray and unclickable. User cannot join the GameLift Game session.
Screenshots/Video
Found in Branch O3DE: Development - (925172c) MultiplayerSample: Development (07ea3d0) MultiplayerSample-Assets: (c6f23db)
Desktop/Device
- Device: PC
- OS: Windows
- Version: 11 Pro
- CPU: CPU: Intel Core i7-11700F
- GPU: NVIDIA GeForce RTX 3070
- Memory: 32GB
I think there's a bug with newlines? Could you try entering the Json all in one line?
{ "GameSessionId": "arn:aws:gamelift:us-west-2::gamesession/fleet-651fc984-3904-4767-83c3-fe970073c0e7/gsess-df11326d-7cb8-4481-bca9-6f4dc69af780", "PlayerId": "Player1", "PlayerSessionId": "psess-7b28c6b5-632c-4a43-a0c8-e75129894e60" }
+1
Unfortunately providing Player Session Token in one line does not solve the issue. The Connect button remains unresponsive.
Could you paste the string here? The Ui is claiming it’s not a valid json format
Sure thing. Here is the entire string which was used in the picture above:
{ "GameSessionId": "arn:aws:gamelift:us-west-2::gamesession/fleet-c657b473-a34b-41ff-99ba-e4e3dcaa76b3/custom-location-1-KB/gsess-4b4f1d34-acae-4da3-8d57-8f1a6418f0c6", "PlayerId": "Player1", "PlayerSessionId": "psess-89be0141-0dfe-41cc-823a-3869c8ca33ef" }
I had the same issue, and it was due to the MPSGameLift
Gem not being enabled in project.json
. Make sure MPSGameLift
is in the gem_names
list in project.json
for o3de-multiplayersample
(it's not enabled by default), then re-configure and re-build.
(Thank Gene :D)
I can confirm that enabling the MPSGameLift
Gem for the project solved the issue. Also, the updated MultiplayerSample Project with Amazon GameLift README now asks the user to provide a player session JSON table when connecting instead.
I believe it would be a good idea to mention the requirement of enabling the MPSGameLift
Gem at the beginning of the MultiplayerSample Project with Amazon GameLift README, or the option to enable it either at the beginning of Step 3. Configure and build, or before 3rd step of Build Using the Project Manager.