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.
Game
public GameData Game { get; }
IsInitialized
public bool IsInitialized { get; }
IsUserLoggedIn
public bool IsUserLoggedIn { get; }
Notifications
public NotificationData Notifications { get; }
Season
public SeasonData Season { get; }
Tournaments
public TournamentData Tournaments { get; }
User
public UserData User { get; }
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
DisconnectTournamentHub()
public void DisconnectTournamentHub()
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)
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)
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)
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)
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)
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()
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)
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)
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()
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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()
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)
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)
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()
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)
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)
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)
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)
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)
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)