HyperPlay API Docs
  • đŸŸŖHyperPlay
  • 🎮Overview
  • âŦ‡ī¸Install HyperPlay
  • ❓FAQ
  • Developer Docs
    • 📜Publish / List a Game
      • âš’ī¸Building with HyperPlay
      • 📃Publishing Your Game
      • đŸ›ŗī¸CI/CD Automation
      • đŸ–Ĩī¸Developer Portal
      • 📛HyperPlay Store Badges
      • 🎨HyperPlay Hex Codes
      • 🆘Feedback & Developer Support
      • 🩹[Beta] Patching
    • âŒ¨ī¸Design Considerations
      • Unreal Engine Integration
      • Unity Integration
    • đŸ•šī¸API for Native Games (EVM)
      • Get Accounts
      • Sign-in With Ethereum
      • Get Balance
      • Call Contract Example
      • Send Transaction
      • Send Contract
      • Personal Sign
      • Sign Typed Data v3
      • Sign Typed Data v4
      • Add or Switch Network
      • Add Token
      • RPC Raw
    • 🎱API for Native Games (Non-EVM)
      • Sui Blockchain
        • Get Accounts
        • Get Balance
        • Get Object
        • Send Transaction
        • Send Contract
        • Personal Sign
    • 🌐API for Browser Games (EVM)
    • 🚀Quests
      • How to Create a Quest
    • đŸĒStore APIs
      • Listings by Popularity
    • 🍷Compatibility Layer
      • Benefits of using a Compatibility Layer
      • Downsides and Limitations of the Compatibility Layer
      • FAQ
  • 🔑Access Configs
    • How to create Access Codes
    • How to token gate a Release Branch
Powered by GitBook
On this page
  • What is patching?
  • How do I join the beta test?
  • Best Practices
  • Estimating Patch Size
  1. Developer Docs
  2. Publish / List a Game

[Beta] Patching

PreviousFeedback & Developer SupportNextDesign Considerations

Last updated 6 months ago

What is patching?

HyperPlay supports differential updates where users only have to download new content when a game is updated.

How do I join the beta test?

As a developer, you can request to join in the beta test of this feature by reaching out to the team directly.

For developers participating in the program, you can continue to publish your builds the same way you have already been publishing them, and HyperPlay will handle the rest.

Best Practices

There are some general guidelines you can follow to optimize your patch size.

In particular for Unreal Engine games:

  • Avoid switching the build you submit back and forth between build targets (i.e. Production, Testing, Debug, etc.)

  • Group assets into separate PAK files

    • Here is the official guide:

    • An effective strategy can be to group assets by level or area into their own pak files. New content can be added to new pak files instead of modifying existing ones as well.

Estimating Patch Size

To get an estimate of the patch size, you will need to first get the project_meta_id for two separate releases.

  1. Find the channel you are releasing on.

  2. Copy channels[i].release_meta.release_id to your records as oldReleaseMetaId

  3. Perform a new release on the channel

  4. Copy channels[i].release_meta.release_id to your records as newReleaseMetaId

  5. Make a note of the platform id from channels[i].release_meta.platforms to pass in the following url

  6. Go to https://developers.hyperplay.xyz/api/v1/patches/compare?old_release_id=<paste_oldReleasemetaId_here>&platform_name=<platform_name_here>&new_release_id=<paste_newReleasemetaId_here>

Here is a sample response:

{"differentBlockPercentage":85.08110505639335,"estimatedPatchSizeInKB":13749760}

The value for differentBlockPercentage is the amount of new data that was downloaded for the patch divided by the size of the new release on disk.

As a developer, you can use this tool to experiment with your build pipeline on private (i.e. gated) channels to optimize for patch size.

Go to in your browser and find your game

📜
🩹
https://dev.epicgames.com/documentation/de-de/unreal-engine/cooking-content-and-creating-chunks-in-unreal-engine
https://developers.hyperplay.xyz/api/v1/listings