GEM Experience Command Line Arguments
For ease of use during development and in venues, there are a handful of command line arguments that can be used for any experience using GEM.
-DeviceID="some string" Used when launching Clients only. Overrides the DeviceID. If not specified on command line, the DeviceID will be pulled from UserGEMSettings.ini, or be set from GetDeviceId(). For Windows builds the DeviceID MUST be specified on command line, or set in UserGEMSettings.ini with an "_", as GetDeviceID returns an empty string on Windows.
-GemAddress="IP address string" Sets the IP address of the GEM Server. Overrides the address specified in UserGEMSettings.ini.
-GemPort=Port Integer Sets the port for the GEM Server. Overrides the port specified in the UserGEMSettings.ini
-GemGroupId=Integer Sets the Group ID for the game server.
-GemGroupSize=Integer Sets the maximum number of players for the game server.
-StageOffsetLocation="(x=OffsetInCentimeters, y=OffsetInCentimeters)" Sets the initial offset to use for the pawns for the experience. Used to fine-tune positioning of the players when the stage calibration may not be spot on, or for testing on stage layouts smaller than the target.
-StartingSection=Integer (EXPERIMENTAL) Sets the section index (as defined in the Experience Manager Component) to start the experience at. Allows for starting an experience at a more or less arbitrary point. This is an experimental feature and is not exposed to the GEM Dashboard GUI, but can be added to the 'extra args' section of a Show Definition yaml. Correctly handling the state of the experience when starting at arbitrary points is up to the experience developer.
When testing with the Online Subsystem set to Null, the game server must still be launched with the GemGroupId and GemGroupSize arguments.