question

Derek Fluker avatar image
Derek Fluker asked

MockVmAgent crash with unhandled ArgumentNullException before custom server runs

Trying to get my initial custom server running locally using the latest release of MockVmAgent, version .7, and I get the following error:

C:\Work\PlayFabLocalVM>mockvmagent
TitleId: 3B405060
BuildId: 99551a0d-41f6-475d-ac37-a09517225dc4
VmId: xcloudwusu4uyz5daouzl:WestUs:bd144196-e322-4d5c-aadb-55d2d0d2d84c:tvmps_2af4b6314975432b92e106df5f4ea473fbb21438805044eb98133263dfc44767_d
Mock Agent is listening on port 56001


Unhandled Exception: System.ArgumentNullException: Value cannot be null.
Parameter name: values
   at System.String.Join(String separator, IEnumerable`1 values)
   at Microsoft.Azure.Gaming.MockVmAgent.Program.Main(String[] args) in D:\t2\src\VmAgent\MockVmAgent\Program.cs:line 66
   at Microsoft.Azure.Gaming.MockVmAgent.Program.<Main>(String[] args)
I have tried to modify various values in the MultiplayerSettings.json file to see if I can figure out what it doesn't like. But nothing seems to cause the error to not occur. Here is my settings:
{
    "RunContainer": false,
    "OutputFolder": "C:\\Work\\PlayFabLocalOut",
    "NumHeartBeatsForActivateResponse": 10,
    "NumHeartBeatsForTerminateResponse": 60,
    "TitleId": "3B405060",
    "BuildId": "00000000-0000-0000-0000-000000000000",
    "Region": "WestUs",
    "AgentListeningPort": 56001,
    "ServerStartParameters": {
        "ImageDetails": {
            "Registry": "mcr.microsoft.com",
            "ImageName": "playfab/multiplayer",
            "ImageTag": "wsc-10.0.17134.285",
            "Username": "myUsername",
            "Password": "myPassword"
        },
        "AssetDetails": [
            {
                "MountPath": "C:\\Assets",
                "SasTokens": null,
                "LocalFilePath": "C:\\Work\\MLAPI.Relay.zip"
            }
        ],
        "StartGameCommand": "C:\\Assets\\PlayFabRelayServer.exe",
        "PortMappingsList": [
            [
                {
                    "NodePort": 56100,
                    "GamePort": {
                        "Name": "game_port",
                        "Number": 8888,
                        "Protocol": "UDP"
                    }
                }
            ]
        ]
    },
    "SessionConfig": {
        "SessionId": "ba67d671-512a-4e7d-a38c-2329ce181946",
        "SessionCookie": "MySessionCookieChocolateChip"
    }
}
The OutputFolder has items under it but no actual logs that would help.
I'm stuck now so any ideas on what to look at would be appreciated.
I wish the source code for mockvmagent was public so I could just see what it is expecting and move forward bothering people here. Please post it.
1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Derek Fluker avatar image Derek Fluker commented ·

... move forward without bothering people...

0 Likes 0 ·

1 Answer

·
Sarah Zhang avatar image
Sarah Zhang answered

A workaround is adding "InitialPlayers": [ ] under "SessionCookie": "MySessionCookieChocolateChip", parameter “InitialPlayers” shouldn’t be removed.

 "SessionConfig": {
        "SessionId": "ba67d671-512a-4e7d-a38c-2329ce181946",
        "SessionCookie": "MySessionCookieChocolateChip",
        "InitialPlayers": [ ]
    }
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.