API

BackboneClient

Backbone client is the entry point to interact with the backbone backend. It encapsulates the HTTP API client and provides asynchronous methods for more convenient implementation.


Property

Game

Get games global data. (E.g. game id, global properties)

Game

public GameData Game { get; }

Property

IsInitialized

Determine if the client is successfully initialized.

IsInitialized

public bool IsInitialized { get; }

Property

IsUserLoggedIn

Determine if the user is logged in and has a valid session to do API calls.

IsUserLoggedIn

public bool IsUserLoggedIn { get; }

Property

Notifications

Get user's notification data. (E.g. tournament party invitations)

Notifications

public NotificationData Notifications { get; }

Property

Season

Get current season data. (E.g. start date, end date, user season stats)

Season

public SeasonData Season { get; }

Property

Tournaments

Get user's tournaments data. (E.g. list of tournaments)

Tournaments

public TournamentData Tournaments { get; }

Property

User

Get user's data. (E.g. nickname, platform ids, user properties)

User

public UserData User { get; }

Method

AcceptPartyInvite(long, long)

Accepts a tournament party invite. The user has to sign up for the tournament first before they can accept any party invite.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament id.

  • Name
    partyInviteId
    Type
    long
    Description

    Tournament party invite id.

Returns

Accept party invite status

Remarks

Party invites are received as notifications (TournamentPartyInviteNotification) and they contain tournamentId as well as partyInviteId.

AcceptPartyInvite(long, long)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.TournamentAcceptPartyStatus> AcceptPartyInvite(long tournamentId, long partyInviteId)

Method

AcceptPartyInvite(long, string)

Accepts a tournament party invite by providing a shared party code. The user has to sign up for the tournament first before they can accept any party invite.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament id.

  • Name
    partyCode
    Type
    string
    Description

    Tournament party code.

Returns

Accept party invite status

Remarks

Party codes are created on demand by calling CreatePartyCodeForTournament method. Once a party code exists, it can be shared with other users (e.g. chat) who can use it to join the party.

AcceptPartyInvite(long, string)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.TournamentAcceptPartyStatus> AcceptPartyInvite(long tournamentId, string partyCode)

Method

ChangeNickname(string)

Change user nickname. A unique hash number will be given on success.

Parameters

  • Name
    nickName
    Type
    string
    Description

    New nickname (max 100 characters).

Returns

  • True if the operation was successful.

Remarks

If you want to force a specific hash number (e.g. to match your own system) use ChangeNickname(string nickName, int preferredNickHash) instead.

ChangeNickname(string)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> ChangeNickname(string nickName)

Method

ChangeNickname(string, int)

Change user nickname. A desired/preferred hash number can be provided but if the combination is already taken, then a unique hash number will be given on success.

Parameters

  • Name
    nickName
    Type
    string
    Description

    New nickname (max 100 characters).

  • Name
    preferredNickHash
    Type
    int
    Description

    Desired/preferred hash number.

Returns

  • True if the operation was successful.

ChangeNickname(string, int)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> ChangeNickname(string nickName, int preferredNickHash)

Method

ConnectTournamentHub(ITournamentHubCallbackHandler, Tournament)

Connect and initialize the tournament hub for a specific tournament. The passed tournament hub (ITournamentHubCallbackHandler) will start receiving callbacks until it is disconnected. This is mainly used for ongoing tournaments to propagate tournament state changes via the tournament hub.

Parameters

  • Name
    tournamentHub
    Type
    ITournamentHubCallbackHandler
    Description

    Tournament hub implementing ITournamentHubCallbackHandler.

  • Name
    tournament
    Type
    Tournament
    Description

    Specific tournament to initialize the tournament hub for.

Remarks

Only one tournament can be connected to the tournament hub at a time. Even if a different tournament hub object is passed connecting to another tournament, it will stop callbacks on the previously connected tournament hub.

ConnectTournamentHub(ITournamentHubCallbackHandler, Tournament)

public void ConnectTournamentHub(Gimmebreak.Backbone.Tournaments.ITournamentHubCallbackHandler tournamentHub, Gimmebreak.Backbone.Tournaments.Tournament tournament)

Method

CreateGameSession(IEnumerable<TournamentMatch.User>, long, byte)

Creates a game session for a specific tournament match. Users passed must be a subset of users specified in the tournament match.

Parameters

  • Name
    users
    Type
    IEnumerable<TournamentMatch.User>
    Description

    Users participating in the tournament match.

  • Name
    tournamentMatchId
    Type
    long
    Description

    Tournament match id.

  • Name
    gameSessionType
    Type
    byte
    Description

    Type of game session (defined in the dashboard, e.g. team match, deathmatch, capture flag, etc.).

Returns

  • Game session with a unique Id, returns null if the operation failed. Will be needed for reporting results.

Remarks

The same game session is returned for a specific tournament match id until results are submitted and the game session is closed.

CreateGameSession(IEnumerable<TournamentMatch.User>, long, byte)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.GameSessions.GameSession> CreateGameSession(System.Collections.Generic.IEnumerable<Gimmebreak.Backbone.Tournaments.TournamentMatch.User> users, long tournamentMatchId, byte gameSessionType = 0)

Method

CreateGameSession(IEnumerable<GameSession.User>, long, byte)

Creates a game session for a specific tournament match. Users passed must be a subset of users specified in the tournament match.

Parameters

  • Name
    users
    Type
    IEnumerable<GameSession.User>
    Description

    Users participating in the tournament match.

  • Name
    tournamentMatchId
    Type
    long
    Description

    Tournament match id.

  • Name
    gameSessionType
    Type
    byte
    Description

    Type of game session (defined in the dashboard, e.g. team match, deathmatch, capture flag, etc.).

Returns

  • Game session with a unique Id, returns null if the operation failed. Will be needed for reporting results.

Remarks

The same game session is returned for a specific tournament match id until results are submitted and the game session is closed.

CreateGameSession(IEnumerable<GameSession.User>, long, byte)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.GameSessions.GameSession> CreateGameSession(System.Collections.Generic.IEnumerable<Gimmebreak.Backbone.GameSessions.GameSession.User> users, long tournamentMatchId, byte gameSessionType = 0)

Method

CreatePartyCodeForTournament(long, bool)

Create a party code for a tournament that can be shared and used to join the party.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament id.

  • Name
    recreate
    Type
    bool
    Description

    If set to true, the existing party code will be replaced with a new one.

Returns

  • Result of the party create code process.

Remarks

When a party code is recreated by setting the "recreate" parameter to true, the old party code will be rendered invalid and can no longer be used for joining the party.

CreatePartyCodeForTournament(long, bool)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.PartyCodeResult> CreatePartyCodeForTournament(long tournamentId, bool recreate = False)

Method

CreatePartyInviteForTournament(long, long)

Create a party invite for a tournament by providing the user id.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament id.

  • Name
    inviteUserId
    Type
    long
    Description

    Id of the user that will receive the party invite.

Returns

  • Result of the party invite process.

CreatePartyInviteForTournament(long, long)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.PartyInviteResult> CreatePartyInviteForTournament(long tournamentId, long inviteUserId)

Method

CreatePartyInviteForTournament(long, LoginProvider.Platform, string)

Create a party invite for a tournament by providing the type and user id of a specific platform.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament id.

  • Name
    inviteUserPlatformType
    Type
    LoginProvider.Platform
    Description

    Specific platform type.

  • Name
    inviteUserPlatformId
    Type
    string
    Description

    Specific platform id.

Returns

  • Result of the party invite process.

CreatePartyInviteForTournament(long, LoginProvider.Platform, string)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.PartyInviteResult> CreatePartyInviteForTournament(long tournamentId, Gimmebreak.Backbone.User.LoginProvider.Platform inviteUserPlatformType, string inviteUserPlatformId)

Method

CreatePartyInviteForTournament(long, string, int)

Create a party invite for a tournament by providing the user's nickname and hash number.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament id.

  • Name
    inviteUserNick
    Type
    string
    Description

    User's nickname.

  • Name
    inviteUserHash
    Type
    int
    Description

    User's hash number.

Returns

  • Result of the party invite process.

CreatePartyInviteForTournament(long, string, int)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.PartyInviteResult> CreatePartyInviteForTournament(long tournamentId, string inviteUserNick, int inviteUserHash)

Method

DeclinePartyInvite(long)

Decline a tournament party invite.

Parameters

  • Name
    partyInviteId
    Type
    long
    Description

    Party invite id.

Returns

  • True if the operation was successful.

Remarks

Declining an invite will not prevent another user from sending another one again.

DeclinePartyInvite(long)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> DeclinePartyInvite(long partyInviteId)

Method

DisconnectTournamentHub()

Disconnects the tournament hub and stops running callbacks.

DisconnectTournamentHub()

public void DisconnectTournamentHub()

Method

DismissNotification(Notification)

Dismiss the user's notification and remove it from the active list. The notification is still available until the next list refresh. Check the IsDismissed property to determine if the notification was already dismissed.

Parameters

  • Name
    notification
    Type
    Notification
    Description

    Notification to dismiss.

Returns

  • True if the notification was dismissed.

DismissNotification(Notification)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> DismissNotification(Gimmebreak.Backbone.Notifications.Notification notification)

Method

DownloadGameSessionReplay(GameSession)

Downloads the game session replay if available and populates the list of submissions on the game session replay object (GameSessions.GameSession.Replay).

Parameters

  • Name
    gameSession
    Type
    GameSession
    Description

    Valid game session.

Returns

  • True if the operation was successful.

DownloadGameSessionReplay(GameSession)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> DownloadGameSessionReplay(Gimmebreak.Backbone.GameSessions.GameSession gameSession)

Method

Initialize(IBackboneClientCallbackHandler)

Initialize the Backbone client using settings from the Default BackboneClientSetting asset.

Parameters

  • Name
    callbackHandler
    Type
    IBackboneClientCallbackHandler
    Description

    Pass handler that will listen to client callbacks.

Returns

  • Initialized Backbone client ready for use.

Initialize(IBackboneClientCallbackHandler)

public static Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Core.BackboneClient> Initialize(Gimmebreak.Backbone.Core.IBackboneClientCallbackHandler callbackHandler = null)

Method

Initialize(BackboneClientSetting, IBackboneClientCallbackHandler)

Initialize the Backbone client using settings from the BackboneClientSetting asset.

Parameters

  • Name
    settings
    Type
    BackboneClientSetting
    Description

    BackboneClientSetting asset.

  • Name
    callbackHandler
    Type
    IBackboneClientCallbackHandler
    Description

    Pass handler that will listen to client callbacks.

Returns

  • Initialized Backbone client ready for use.

Initialize(BackboneClientSetting, IBackboneClientCallbackHandler)

public static Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Core.BackboneClient> Initialize(Gimmebreak.Backbone.Core.BackboneClientSetting settings, Gimmebreak.Backbone.Core.IBackboneClientCallbackHandler callbackHandler = null)
Method

Initialize(Uri, string, IBackboneClientCallbackHandler)

Initialize Backbone client for a specific server and game.

Parameters

  • Name
    server
    Type
    Uri
    Description

    Server URL or IP.

  • Name
    gameId
    Type
    string
    Description

    Game ID obtained from Backbone dashboard.

  • Name
    callbackHandler
    Type
    IBackboneClientCallbackHandler
    Description

    Pass handler that will listen to client callbacks.

Returns

AsyncOperation<BackboneClient> - Initialized Backbone client ready for use.

Initialize(Uri, string, IBackboneClientCallbackHandler)

public static Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Core.BackboneClient> Initialize(System.Uri server, string gameId, Gimmebreak.Backbone.Core.IBackboneClientCallbackHandler callbackHandler = null)

Method

LoadNotifications()

Load user's active notifications (e.g., news, party invites, etc.).

Returns

AsyncOperation<bool> - True if notifications were loaded.

LoadNotifications()

public Gimmebreak.Backbone.Core.AsyncOperation<bool> LoadNotifications()

Method

LoadTournament(Tournament)

Load all tournament data (party users, matches, details, etc.).

Parameters

  • Name
    tournament
    Type
    Tournament
    Description

    Tournament to load data for.

Returns

AsyncOperation<bool> - True if data were loaded.

LoadTournament(Tournament)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> LoadTournament(Gimmebreak.Backbone.Tournaments.Tournament tournament)

Method

LoadTournament(long)

Load all tournament data (party users, matches, details, etc.).

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID to load data for.

Returns

AsyncOperation<bool> - True if data were loaded.

LoadTournament(long)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> LoadTournament(long tournamentId)

Method

LoadTournamentList()

Load tournament list containing past, upcoming, and current tournaments. Loaded tournaments do not contain all metadata. You can check the property HasAllDataLoaded. To load all data, you have to subsequently call LoadTournament().

Returns

AsyncOperation<bool> - True if the list was refreshed successfully.

LoadTournamentList()

public Gimmebreak.Backbone.Core.AsyncOperation<bool> LoadTournamentList()

Method

LoadTournamentMatches(long, IEnumerable<long>)

Load tournament matches for specific match IDs. The return limit is 25 matches per call.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID.

  • Name
    matchIds
    Type
    IEnumerable<long>
    Description

    Specific tournament match IDs (max 25).

Returns

AsyncOperation<List<TournamentMatch>> - List of tournament matches on success, otherwise null.

LoadTournamentMatches(long, IEnumerable<long>)

public Gimmebreak.Backbone.Core.AsyncOperation<System.Collections.Generic.List<Gimmebreak.Backbone.Tournaments.TournamentMatch>> LoadTournamentMatches(long tournamentId, System.Collections.Generic.IEnumerable<long> matchIds)

Method

LoadTournamentMatches(long, int, int, int, int, int, bool, int)

Load tournament matches for a specific phase. This method allows browsing all matches in the tournament.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID.

  • Name
    phaseId
    Type
    int
    Description

    Specific tournament phase to load matches for.

  • Name
    fromRoundId
    Type
    int
    Description

    Phase round ID to load matches from, inclusive.

  • Name
    toRoundId
    Type
    int
    Description

    Phase round ID to load matches to, inclusive.

  • Name
    maxResults
    Type
    int
    Description

    Max results to be returned per page.

  • Name
    page
    Type
    int
    Description

    Requested page number.

  • Name
    onlyInProgress
    Type
    bool
    Description

    Loads only matches that are in progress.

  • Name
    groupId
    Type
    int
    Description

    Specific phase group to load matches for.

Returns

AsyncOperation<MatchesPaginatedResult> - One page of tournament matches.

LoadTournamentMatches(long, int, int, int, int, int, bool, int)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.MatchesPaginatedResult> LoadTournamentMatches(long tournamentId, int phaseId, int fromRoundId, int toRoundId, int maxResults, int page, bool onlyInProgress, int groupId = 0)

Method

LoadTournamentMatchesAll(long, int, int)

Load all tournament matches for a specific phase. If the phase contains a large number of matches, the operation will be split into more than one call and can take some time to finish. If you wish to load/refresh only specific matches, use the LoadTournamentMatches() method. (E.g., to load only matches from the first round.)

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID.

  • Name
    phaseId
    Type
    int
    Description

    Specific tournament phase to load matches for.

  • Name
    groupId
    Type
    int
    Description

    Specific phase group to load matches for.

Returns

AsyncOperation<List<TournamentMatch>> - List of all phase matches, otherwise null.

LoadTournamentMatchesAll(long, int, int)

public Gimmebreak.Backbone.Core.AsyncOperation<System.Collections.Generic.List<Gimmebreak.Backbone.Tournaments.TournamentMatch>> LoadTournamentMatchesAll(long tournamentId, int phaseId, int groupId = 0)

Method

LoadTournamentMatchGameSessions(TournamentMatch)

Load finished game sessions of a tournament match. Only a tournament match that is ongoing or finished will be processed.

Parameters

  • Name
    tournamentMatch
    Type
    TournamentMatch
    Description

    Tournament match that is ongoing or finished.

Returns

AsyncOperation<bool> - True if the operation was successful.

LoadTournamentMatchGameSessions(TournamentMatch)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> LoadTournamentMatchGameSessions(Gimmebreak.Backbone.Tournaments.TournamentMatch tournamentMatch)

Method

LoadTournaments(DateTime, DateTime, int, int)

Load tournaments between specific dates. Loaded tournaments do not contain all metadata. You can check the property HasAllDataLoaded. To load all data, you have to subsequently call LoadTournament().

Parameters

  • Name
    sinceDate
    Type
    DateTime
    Description

    UTC date time (smaller value than until date).

  • Name
    untilDate
    Type
    DateTime
    Description

    UTC date time (bigger value than since date).

  • Name
    maxResults
    Type
    int
    Description

    Max results to be returned per page.

  • Name
    page
    Type
    int
    Description

    Requested page number.

Returns

AsyncOperation<TournamentsPaginatedResult> - One page of tournaments.

LoadTournaments(DateTime, DateTime, int, int)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.TournamentsPaginatedResult> LoadTournaments(System.DateTime sinceDate, System.DateTime untilDate, int maxResults = 25, int page = 1)

Method

LoadTournamentsAll(DateTime, DateTime)

Load all tournaments between specific dates. Loaded tournaments do not contain all metadata. You can check the property HasAllDataLoaded. To load all data, you have to subsequently call LoadTournament(). If the time frame contains a large number of tournaments, the operation will be split into more than one call and can take some time to finish. If you wish to load/refresh only specific tournaments, use the LoadTournaments() method.

Parameters

  • Name
    sinceDate
    Type
    DateTime
    Description

    UTC date time (smaller value than until date).

  • Name
    untilDate
    Type
    DateTime
    Description

    UTC date time (bigger value than since date).

Returns

AsyncOperation<List<Tournament>> - List of all tournaments between dates, otherwise null.

LoadTournamentsAll(DateTime, DateTime)

public Gimmebreak.Backbone.Core.AsyncOperation<System.Collections.Generic.List<Gimmebreak.Backbone.Tournaments.Tournament>> LoadTournamentsAll(System.DateTime sinceDate, System.DateTime untilDate)

Method

LoadTournamentScores(long, int, int, int, int)

Load tournament scores for a specific phase. This method allows browsing all party scores in the tournament.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID.

  • Name
    phaseId
    Type
    int
    Description

    Specific tournament phase to load scores for.

  • Name
    maxResults
    Type
    int
    Description

    Max results to be returned per page.

  • Name
    page
    Type
    int
    Description

    Requested page number.

  • Name
    groupId
    Type
    int
    Description

    Specific phase group to load scores for.

Returns

AsyncOperation<ScoresPaginatedResult> - One page of tournament scores.

LoadTournamentScores(long, int, int, int, int)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.ScoresPaginatedResult> LoadTournamentScores(long tournamentId, int phaseId, int maxResults, int page, int groupId = 0)

Method

LoadTournamentScoresAll(long, int, int)

Load all tournament scores for a specific phase. If the phase contains a large number of parties, the operation will be split into more than one call and can take some time to finish. If you wish to load/refresh only specific scores, use the LoadTournamentScores() method. (E.g., to load only scores from the top 10 places.)

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID.

  • Name
    phaseId
    Type
    int
    Description

    Specific tournament phase to load scores for.

  • Name
    groupId
    Type
    int
    Description

    Specific phase group to load scores for.

Returns

AsyncOperation<List<TournamentScore>> - List of all phase scores, otherwise null.

LoadTournamentScoresAll(long, int, int)

public Gimmebreak.Backbone.Core.AsyncOperation<System.Collections.Generic.List<Gimmebreak.Backbone.Tournaments.TournamentScore>> LoadTournamentScoresAll(long tournamentId, int phaseId, int groupId = 0)

Method

LoadUserSeasonProfile(long, int)

Load user profile for a specific season. This contains stats such as played games, tournaments, etc., as well as the last played game sessions.

Parameters

  • Name
    userId
    Type
    long
    Description

    User ID.

  • Name
    season
    Type
    int
    Description

    Season number, starting with 1.

Returns

AsyncOperation<UserSeasonProfile> - User season profile if the operation was successful.

LoadUserSeasonProfile(long, int)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Season.UserSeasonProfile> LoadUserSeasonProfile(long userId, int season)

Method

LoadUserSeasonProfile(LoginProvider.Platform, string, int)

Load user profile for a specific season. This contains stats such as played games, tournaments, etc., as well as the last played game sessions.

Parameters

  • Name
    userPlatformType
    Type
    LoginProvider.Platform
    Description

    Specific platform type.

  • Name
    userPlatformId
    Type
    string
    Description

    Specific platform ID.

  • Name
    season
    Type
    int
    Description

    Season number, starting with 1.

Returns

AsyncOperation<UserSeasonProfile> - User season profile if the operation was successful.

LoadUserSeasonProfile(LoginProvider.Platform, string, int)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Season.UserSeasonProfile> LoadUserSeasonProfile(Gimmebreak.Backbone.User.LoginProvider.Platform userPlatformType, string userPlatformId, int season)

Method

Login(LoginProvider)

Login user via a specific login provider. If the user does not exist, it fails or creates a new one based on provider settings.

Parameters

  • Name
    loginProvider
    Type
    LoginProvider
    Description

    Login provider used for authentication.

Returns

AsyncOperation<LoginResult> - Access and refresh token pair.

Login(LoginProvider)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.User.LoginResult> Login(Gimmebreak.Backbone.User.LoginProvider loginProvider)

Method

Logout()

Logout user and remove all cached data.

Returns

AsyncOperation<bool> - True if the user was logged out.

Logout()

public Gimmebreak.Backbone.Core.AsyncOperation<bool> Logout()

Method

RemovePartyUser(long, long)

Remove user from tournament party. Other users in the party can only be removed by the party leader. You can pass your own ID to leave the party.

Parameters

  • Name
    tournamentId
    Type
    long
    Description

    Tournament ID of the party to remove the user from.

  • Name
    userId
    Type
    long
    Description

    ID of the user to be removed.

Returns

AsyncOperation<TournamentRemoveUserStatus> - Remove user status.

Remarks

If the party leader leaves the party (by removing himself), a new party leader is automatically set from the remaining party users.

RemovePartyUser(long, long)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.TournamentRemoveUserStatus> RemovePartyUser(long tournamentId, long userId)

Method

ReportUser(long, ReportReason, long, long, long)

Report user for suspected cheating or other reasons. This action can be initiated by the user or automatically by any anti-cheat. Use the correct report reason indicating who initiated the report (User or System).

Parameters

  • Name
    userId
    Type
    long
    Description

    ID of the user to be reported.

  • Name
    reportReason
    Type
    ReportReason
    Description

    Reason for the report.

  • Name
    gameSessionId
    Type
    long
    Description

    Optional game session ID (useful to track down game session replay).

  • Name
    tournamentMatchId
    Type
    long
    Description

    Optional tournament match ID.

  • Name
    tournamentId
    Type
    long
    Description

    Optional tournament ID.

Returns

AsyncOperation<bool> - True if the operation was successful.

Remarks

Reports are immediately visible in the tournament dashboard. In case of an ongoing tournament, the admin can kick or ban excessively reported users.

ReportUser(long, ReportReason, long, long, long)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> ReportUser(long userId, Gimmebreak.Backbone.User.ReportReason reportReason, long gameSessionId = 0, long tournamentMatchId = 0, long tournamentId = 0)

Method

SaveSession()

Snapshots client state and save data to disk. When client initializes it loads latest snapshot. This way game can access user data in offline mode.

Returns

True if snapshot was saved.

SaveSession()

public Gimmebreak.Backbone.Core.AsyncOperation<bool> SaveSession() 

Method

SignoutFromTournament(long)

Sign out from tournament if registration is open.

Parameters

  • tournamentId: Id of tournament to sign out from.

Returns

Result of signout process. Can return null if tournament id is invalid.

SignoutFromTournament(long)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.InviteResult> SignoutFromTournament(long tournamentId) 

Method

SignupForTournament(long)

Sign up user for tournament if registration is open.

Parameters

  • tournamentId: Id of tournament to sign up for.

Returns

Result of signup process. Can return null if tournament id is invalid.
Remarks
If there are custom requirements set for tournament that can be verified locally check them before proceeding to user signup that would fail. Use server requirement verification as sanity check rather than directing user experience flow. The same applies for any entry fees for tournament. Check if user has all entry fees (E.g. currency, items, points) before proceeding to user signup that would fail.

SignupForTournament(long)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.InviteResult> SignupForTournament(long tournamentId) 

Method

SignupForTournament(string)

Sign up user for tournament if registration is open.

Parameters

  • privateCode: Private code of tournament to sign up for.

Returns

Result of signup process.
Remarks
If there are custom requirements set for tournament that can be verified locally check them before proceeding to user signup that would fail. Use server requirement verification as sanity check rather than directing user experience flow. The same applies for any entry fees for tournament. Check if user has all entry fees (E.g. currency, items, points) before proceeding to user signup that would fail.

SignupForTournament(string)

public Gimmebreak.Backbone.Core.AsyncOperation<Gimmebreak.Backbone.Tournaments.InviteResult> SignupForTournament(string privateCode) 

Method

SubmitGameSession(GameSession, byte[])

Submits game session result to server. All users have to have final place set in order to assign points. You can provide game stats set up in dashboard (e.g. number of shots fired, kills, picked abilities, etc.). All match participants have to submit results and they have to be same. If someone reports different outcome such match will be marked and users will receive warning report to further investigate potential cheating.

Parameters

  • gameSession: Game session with final results and stats.
  • replayData: Optional replay data of game session.

Returns

True if submission was successful.

SubmitGameSession(GameSession, byte[])

public Gimmebreak.Backbone.Core.AsyncOperation<bool> SubmitGameSession(Gimmebreak.Backbone.GameSessions.GameSession gameSession, byte[] replayData = null) 

Method

SubmitGameSessionReplay(long, byte[])

Submits user game session replay to server.

Parameters

  • gameSessionId: Valid game session id.
  • replayData: Uncompressed raw replay data. (Data will be compressed before sending)

Returns

True if operation is successful.
Remarks
All users have to submit game session replay successfully otherwise it will not indicate that replay is available.

SubmitGameSessionReplay(long, byte[])

public Gimmebreak.Backbone.Core.AsyncOperation<bool> SubmitGameSessionReplay(long gameSessionId, byte[] replayData = null) 

Method

SynchUser(bool)

Get the latest user data from server.

Parameters

  • fullSynch: Some parts are updated incrementally, set true if full synch should be done.

Returns

True if operation was successful.

SynchUser(bool)

public Gimmebreak.Backbone.Core.AsyncOperation<bool> SynchUser(bool fullSynch = False)