Pragma Engine 0.0.54

February 8th, 2022

  • Added bulk action account plugin.
  • Added new type of item grant to crafting calls to allow for randomized rewards.
  • Game Shard Access Mode is now live.
  • Required integrations:
    • You will need to update your crafting plugin to integrate with the new crafting system.

Features #

  • Added bulk action account plugin.

    • Description: We’ve added a BulkActionPlugin that lets users perform customer-defined actions leveraging our account searching functionality.
    • Reference: Pragma.Account.BulkActionPlugin
  • Added new type of item grant to crafting calls to allow for randomized rewards.

    • Description: We’ve added a rewardGrants option into the crafting class so players can receive a RewardGrant in addition to instancedItems and stackableItems. A RewardGrant maps to a RewardTable that can result in a set of guaranteed rewards items and/or random rewards by using RewardSlots.
    • Related notes: Integration required. See content system note below.
    • Reference:
    data class CraftResult(
      val instancedItemGrants: List<InstancedItemServerGrant>,
      val stackableItemGrants: List<StackableItemGrant></StackableItemGrant>,
      val rewardGrants: List<RewardGrant> = listOf()
    )
    
  • Game Shard Access Mode is now live.

    • Description: shardAccessMode is now enforced on authenticateOrCreate. Authentication will respect the set shardAccessMode and deny access to users not in approved player groups on active limited access events. Default access is set to everyone.
    • Postman path:
      • Social → RPC - Operator → Game Management → SetShardAccessModeV1

Integrations #

  • Update crafting plugin with new content map.
    • Description: You will need to update your crafting plugin to integrate with the new crafting system.

    • Integration step:

      • In the craft() method, replace the catalog parameter with inventoryContent:
      OriginalReplacement
      catalog: InventoryCataloginventoryContent: InventoryServiceContent
    • Reference:

      • inventoryContent.instancedSpecs[<CATALOG_ID>] returns the InstancedSpec proto.
      • View 4-demo’s CookingCrafter.completeCooking() or Quests.complete() for an example of the InventoryContentService and how to properly add a rewardGrant to the CraftResult.
      • Check this pull request or contact us for additional information or assistance.
    • Related notes: New related feature. See rewards feature note above.

Deprecations #

  • AddAccountsToPlayerGroupOperatorV1 has been replaced by BulkActionOperatorV1.
    • See the Postman collection for an example of the payload.
OriginalReplacement
AddAccountsToPlayerGroupOperatorV1BulkActionOperatorV1
  • StackableSpecs and InstancedSpecs are now accessed as maps instead of lists in code.
    • There are no changes to the formatting of StackableSpecs and InstancedSpecs in content or protos. InstancedSpecs.json and StackableSpecs.json still consist of arrays of objects.
OriginalReplacement
List<StackableSpec>Map<String, StackableSpec>
List<InstancedSpec>Map<String, InstancedSpec>