Xbox Live

Paid plans only The Xbox Live plugin allows access to Xbox Live services for Xbox One and Windows 10 games. These games must be published using the Universal Windows Platform (UWP) export option, which is named Windows & Xbox One (UWP) in Construct.

Using Xbox Live is a requirement to publish games to the Xbox One, either with the Xbox Live Creators Program, or with IDpud@Xbox.

Setting up Xbox Live services

For a guide on how to set up Xbox Live services, see the tutorial Using Xbox Live in UWP apps. This manual entry assumes you have already configured Xbox Live services.

Xbox Live properties

Title ID
The title ID for this game. The title must be created on the dashboard, which will then give you a value to use.
SCID
The Service Configuration ID (SCID) for this game. As with the title ID, this should be copied from the dashboard.
Xbox Live Creators Title
Enable this if you intend to publish via the Xbox Live Creators Program. Otherwise if you are publishing via ID@Xbox, disable this option.

Xbox Live conditions

On achievement list loaded
On achievement list error
Triggered after Get achievement list depending on whether it completed successfully or not. If successful, the achievement list expressions can be used.
On achievement update error
On achievement update success
Triggered after Update achievement depending on whether it updated successfully or not.
On leaderboard retrieved
Triggered after Get leaderboard when the leaderboard was successfully retrieved. The leaderboard-related expressions can be used to display the leaderboard information.
Is signed in
True if the user is currently signed in, i.e. a successful sign in has completed.
Is Xbox Live available
True if the Xbox Live features are available on the current platform. If this is not true, none of the plugin's features will work. This condition is only true in UWP exports on Windows 10 or Xbox One.
On local user added
Triggered shortly after a successful sign-in when the local user is now available. This means the Request profile info action can now be used.
On presence error
On presence success
Triggered after the Set presence action depending on whether it completed successfully or not.
On profile error
On profile success
Triggered after the Request profile info action depending on whether information was received successfully or not. If successful, the profile-related expressions can be used.
On sign in error
On sign in success
Triggered after the Sign in action depending on whether signing in completed successfully or not.
On silent sign in error
On silent sign in success
Triggered after the Sign in silently action depending on whether signing in completed successfully or not. Typically if this fails you should fall back to using Sign in (i.e. the non-silent version).

Xbox Live actions

Get achievement list
Get a list of available achievements. If Which is all, the returned list includes achievements the player has not yet unlocked; otherwise it only returns unlocked achievements. If there are a large number of achievements, you can specify Skip and Max items to return a page of achievements. Triggers On achievement list loaded when complete.
Update achievement
Update the progress of an achievement, or unlock the achievement by setting its progress to 100. Triggers On achievement update success/error depending on the outcome. Note that updating an achievement that has already been unlocked will trigger On achievement update error.
Get leaderboard
Get the results listing on a leaderboard. The relevant statistic must have first been created on the dashboard,
and for this to list anything at least one user must have set the statistic. Skip to rank and Max items can be used for paginating results. Note the special value -1 can be used for Skip to rank, which causes the results to be centered on the current user's result. The Social group allows scores to be listed from everyone (Global), users marked favorite (Favorite), or anyone the user follows (People).
Request flush
By default, the Xbox Live statistics service syncs data every few minutes. Use this action to request immediate submission. This is useful when about to display a leaderboard after submitting a statistic. The action may be ignored if over-used.
Set statistic
Set the value of a statistic. The statistic ID must be created on the dashboard. Statistics can store integer, float or string data. The data you submit must match the type of the statistic on the dashboard. Leaderboards can be created from statistics, such as a Score statistic.
Request profile info
Request information about the current signed-in user's profile, such as their display name and display picture URI. Triggers On profile success/error depending on the outcome. Note: due to a quirk of the Xbox Live API, this cannot be used immediately in a On sign in success or On silent sign in success trigger. Shortly after a successful sign-in, On local user added will trigger. This action can only be used in that trigger or any time after that trigger has fired.
Set presence
Set the current signed-in user's presence (whether they are in the title or not). Triggers On presence success/error depending on the outcome.
Sign in
Prompt the user to sign in. This can sometimes sign in the user automatically, but can show a login prompt in some cases. The user must be signed in to access most Xbox Live features. Triggers On sign in success/error depending on if the user signs in successfully or not.
Sign in silently
Try to automatically sign in the user without showing a login prompt. This may not be allowed, in which case the silent sign in will fail (triggering On silent sign in error); typically you should then fall back to using the Sign in action, which can show a login prompt. If a silent sign-in is successful (triggering On silent sign in success), the user is now signed in. It is useful to attempt this automatically on startup to avoid having to prompt the user.

Xbox Live expressions

AchievementListCount
In On achievement list loaded, the number of achievements returned.
AchievementIDAt(index)
AchievementNameAt(index)
AchievementLockedDescAt(index)
AchievementUnlockedDescAt(index)
AchievementVisibilityAt(index)
In On achievement list loaded, use these expressions to read information about the achievements that were requested. The index is a zero-based index of the result up to AchievementListCount. These expressions can return the ID, name, locked description, unlocked description, and visibility (either "public" or "secret") for the achievements in the list.
GamerScore
Return the current user's gamerscore. This is only available after On profile success triggers.
UserAppDisplayName
UserGameDisplayName
Return the user's display name for the application UI or game UI respectively. This is only available after On profile success triggers.
UserAppDisplayPictureURI
UserGameDisplayPictureURI
Return a URL to an image of the user's profile picture for the application UI or game UI respectively. This URL can be loaded in to the Sprite object using the Load image from URL action. This is only available after On profile success triggers.
GetStatistic(id)
Get the value of a previously submitted statistic for the current user. Note that this may not be available immediately after signing in, since it can take a moment to load the user statistics.
LeaderboardDisplayName
In On leaderboard retrieved, the name to display for the leaderboard.
LeaderboardResultCount
In On leaderboard retrieved, the number of results returned to be displayed. Note this is different to LeaderboardTotalRows, which returns the total number of rows in the entire leaderboard.
LeaderboardResultGamerTagAt(index)
LeaderboardResultRankAt(index)
LeaderboardResultValueAt(index)
LeaderboardResultXboxUserIdAt(index)
In On leaderboard retrieved, use these expressions to read information about the leaderboard results that were requested. The index is a zero-based index of the result up to LeaderboardResultCount. Each row of the leaderboard has an associated value for the leaderboard statistic (e.g. the score), and the corresponding user's gamertag, rank and Xbox user ID.
LeaderboardTotalRows
In On leaderboard retrieved, the total number of rows on the entire leaderboard. Typically Get leaderboard will only return one page of results, and LeaderboardResultCount determines how many results are in that page. LeaderboardTotalRows can then be used to determine how many pages are available.
ErrorMessage
In an error trigger, this is set to the corresponding error message, if any is available.
AgeGroup
The current user's age group, e.g. "Adult".
GamerTag
The current user's gamertag.
WebAccountId
The current user's web account ID, used for interacting with web services.
XboxUserId
The current user's unique Xbox user ID.
Construct 3 Manual 2018-06-06