Play
Dynamically assemble and match players
Dynamically assemble and match players
Connect cross-platform accounts & identity management
Grow and commercialize your game
Build a vibrant community
Track player progression and game state across platforms
Track, engage, and retain players
Make informed decisions
BuildInfo is a system that can be used to manage different build versions of a game. The term build in BuildInfo refers to a collection of a game's files (or binary chunks of file for legacy code) that is used to download a game according to its current version. Every detail of the build version is stored in the form of a build manifest.
There are two main components of the BuildInfo system:
The BuildInfo system comes with several high-level features, such as:
BuildUtil is used to upload game binaries to the cloud for further distribution. BuildUtil provides meta information that's recorded by BuildInfo during an uploading session. Currently, there are two versions of BuildUtil that differ in their treatment of files:
BuildInfo Service is the part of the system that's responsible for managing all functionalities related to the build process. It was developed using Java and Spring as its framework. BuildInfo Service supports the use of MongoDB and DynamoDB databases to store file manifests (binary files). As for object storage, BuildInfo uses Amazon Web Service (AWS) S3.
Before using BuildUtil Service to upload a build manifest, make sure you have the following requirements:
Once you have collected the required items, you can start uploading your game using BuildUtil. There are two ways to upload a game using BuildUtil:
- Absolute directory of the build output
Input the absolute path directory where your game resides.
- Relative path to main executable
Input the relative path to your game. The file could be an .exe, .msi, .sh or another type of file. Relative path means that a full path is not required, but only the main path of the folder where the game resides. When you input the path, the Player client application can directly run the game. For example: other/otherexe.exe.
7. The other lines that require information beside the directories are as follows:
- AppId (unique title) of the game
- Version of the game
The version must be the same as the game version in Admin Portal.
- Version of BuildInfo endpoint (1 or 2) [2]
Input the Buildinfo version you're using, either version 1 or 2. The default value is version 2.
- Platform ID for the game [win32 win64 windows linux darwin]
Input the platform ID for the platform the game will be uploaded to.
- Preferred chunk size (OPTIONAL) [in bytes]
The chunk size means the game binary wil be uploaded in chunks.
The default value is in bites. You can leave this field blank.
- ignoreconfig file absolute path (OPTIONAL)
Input the path for any config that you want to be ignored.
- Log level (OPTIONAL)
The uploading steps in terminal or command line will look like this:
When you finish inputting the data, there will be a summary where you can see the values you have input.
Input “y” to proceed or “n” to cancel the process. In this example, we input “y” and the game begins uploading.
Your game will be successfully uploaded when you see the “Resultant BUILDID…”. Your uploaded game will be available in the Admin Portal in the Apps menu.
5. Then, run the Upload command. Please use the note below for more information:
Here is the syntax for the upload command:
./build-util-v3.3.1-linux_amd64 upload -u <base_url> -n <publisher_namespace> -a <game_appid> -v <game_version> -e <entrypoint_file> -f <absolute_path_to_sdk_config> -d <absolute_path_to_game_directory> -p <game_ platformid>
For example:
./build-util-v3.3.1-linux_amd64 upload -u https://alpha.accelbyte.net -n accelbyte -a other123 -v 1.0 -e "otherexe.exe" -f "/home/taufiqi/Downloads/UnitySDKConfig.json" -d "/home/taufiqi/Documents/samplegame" -p win64
Most of the BuildInfo Service system can be used by calling or consuming the endpoint that is provided by providing a specified parameter, like the uploaded build. BuildInfo Service currently provides two versions that differ in how BuildInfo keeps the build file in the S3 bucket. In the first version, BuildInfo stores the binary file in chunks of 1 MB each. In the second version, BuildInfo stores the binary file as a single file with its control file.
Service flow in BuildInfo starts from:
Update per October 2020:
We've introduced more features by October including the game subscription plan, which now lets you set and manage BuildInfo Service for your subscribed players to download and update a game when they don't "own" the base game.
Contact us at support@accelbyte.io if you'd like to know more about how this service can be used with your game.
Reach out to the AccelByte team to learn more.