Player Groups #

Player groups support live ops and shard management features.

Groups can be created and managed through the web portal, either by selecting individual players or through various filter and random selection options. The bulk management features can be used to create cohorts for alpha/beta launches and A-B testing. Individually managed groups can be used to manage employee accounts, publisher demos, and QA groups after patch deploys.

Quick Guides #

Create a Player Group in Portal #

  1. Log into Pragma Engine’s Social Portal. If you are running Pragma locally, you can access the Social Portal at http://localhost:11200.

  2. Click Groups in the Accounts menu on the left, then click the Add group button.

If you don’t see the Accounts menu, click the Services menu at the top, then click Accounts.

Player Groups

  1. Enter a name and optional description for the Player Group, then click Create Group.

Create a new Player Group

  1. View the newly created Player Group in Pragma Portal. Click Add Player.

Newly created group

  1. Add the test01 account to the group by clicking the Add button.

Add the player to the group

  1. Click Groups in the Accounts menu on the left-hand side and verify that your group now has one player added.

Player group is no longer empty

View existing Player Groups in Portal #

  1. Log into Pragma Engine’s Social Portal. If you are running Pragma locally, you can access the Social Portal at http://localhost:11200.
  2. Navigate to the Accounts service if necessary, then click on Groups in the left sidebar to view the existing player groups.

Create a Player Group #

Send CreatePlayerGroupOperatorV1 with a name and description:

{
  "requestId": 1,
  "type": "AccountRpc.CreatePlayerGroupOperatorV1Request",
  "payload": {
    "name": "group-name-1",
    "description": "some description about the group"
  }
}

Sample response with Player Group data including a group ID and player count.

{
  "sequenceNumber": 0,
  "response": {
    "requestId": 1,
    "type": "AccountRpc.CreatePlayerGroupOperatorV1Response",
    "payload": {
      "playerGroup": {
        "playerGroupId": "3eed7645-8a46-497f-a60f-611df63cd4dd",
        "name": "group-name-1",
        "description": "some description about the group",
        "playerCount": "0"
      }
    }
  }
}

View existing Player Groups #

Send ViewPlayerGroupsOperatorV1 with the following payload:

{
  "requestId": 1,
  "type": "AccountRpc.ViewPlayerGroupsOperatorV1Request",
  "payload": {}
}

Remove existing Player Groups #

Send RemovePlayerGroupOperatorV1 with the following payload:

{
    "requestId": 1,
    "type": "AccountRpc.RemovePlayerGroupOperatorV1Request",
    "payload": {
        "playerGroupId": "PLAYER_GROUP_ID"
    }
}

Send ViewPlayerGroupsOperatorV1 to get a list of all existing player groups and their respective playerGroupIds.