API-reference
Unity/C#
Core Loop
Launch MiniTon
This method is overloaded
Legacy:
Parameters
Legacy: matchDelegate
A reference to a MiniTonMatchDelegate
instance that MiniTon will use
Update Current Score
Call this method every time the player's score changes during a MiniTon match.
This method is overloaded
Parameters
score
The player's current score as a string
Submit Score
Call this method when a player finishes a match. This will send the score to MiniTon and conclude the match. This will not send the user back to the MiniTon BOT
This method is overloaded
Parameters
score
Player's final score as a string
successCallback
Implementation of the System.Action delegate that handles successful submission
failureCallback
Implementation of the System.Action delegate that handles failed submission
End Replay
End the current replay if one exists and returns the status of the score submission. Must be called after score has been submitted. Use to end replay recording at conclusion of the match and before user is presented with personalized progression room metrics.
Returns
Boolean true if end replay was successful, false if the user has not submitted a score for the match
Return to MiniTon
The ReturnToMiniTon method presents the MiniTon BOT. This must be called after the score has been submitted with the SubmitScore method. After the SubmitScore has been called you can present users with relevant statistics such as high score and present content to enhance the game experience.
In all cases, it will return a boolean, indicating whether or not it is able to return the user to MiniTon. For the case of a match in progress, unless a score has been submitted, this method will return false and the user will not be returned to MiniTon. If a score has been submitted, it returns true and returns the user to MiniTon.
Returns
Boolean indicating whether it is able to return the user to MiniTon BOT
Abort Match
Forfeits the current match and returns to the MiniTon BOT.
Display Tournament Results With Score
The DisplayTournamentResultsWithScore method replaces the deprecated ReportFinalScore method. MiniTon recommends that you try to use the SubmitScore and ReturnToMiniTon methods. However, DisplayTournamentResultsWithScore can be used as a failsafe if the SubmitScore method fails.
This method is overloaded
Parameters
score
Player's final score as a string
Progression API
Progression Namespace Constants
Calls to the progression methods must use one of the three namespace string
values. Each namespace return a separate list of key-value pairs for for that namespace:
DefaultPlayerData
For read-only MiniTon player data and is game-specific.PlayerData
For publisher-defined player data and is game-specific.InGameItems
For publisher-defined player data and is shared across all games in publisher's portfolio.
Get Progression User Data
Retrieve data for the current user. This method requires callback
methods that allow you to handle success and fail scenarios.
Parameters
progressionNamespace
One of the Namespace String Constants
userDataKeys
String key list of desired fields.
successCallback
Action delegate to handle successful callback. The method must be defined in the implementation.
failureCallback
Action delegate to handle failed callback. The method must be defined in the implementation.
Update Progression User Data
Write data for the current user. This method requires callback
methods that allow you to handle success and fail scenarios. Can update up to 25 elements per call.
Note
The DefaultPlayerData namespace is read-only, and cannot be used with this method.
Parameters
progressionNamespace
One of the Namespace String Constants
userDataUpdates
Dictionary of key/value pairs to be updated
successCallback
Action delegate to handle successful callback. The method must be defined in the implementation
failureCallback
Action delegate to handle failed callback. The method must be defined in the implementation
Random Generator
Random Value
Use the MiniTon random implementation to ensure each competitor receives the exact same random number.
Returns
A generated pseudo random float value
Random Value Ranged
This method is overloaded
Parameters
min
The minimum int value for the rangemax
The maximum int value for the range
Returns
A generated pseudo random int value within the given range
NOTE
The Random function
Range(int min, int max)
requires the min and max value range (max-min) to be no larger thanInt.MaxValue
to prevent overflow
Random Point Inside Unit Sphere
Generate a point inside the unit sphere using Value()
.
Returns
A new Vector3
object
Random Point Inside Unit Circle
Find a point inside the unit circle using Value()
.
Returns
A new Vector2
object
Random Point On Unit Sphere
Hybrid rejection / trig method to generate points on a sphere using Value()
.
Returns
A new Vector3
object
Random Quaternion in Rotation
Quaternion random using Value()
.
Returns
A new Quaternion
object
Random Quaternion in Rotation Uniform
Quaternion random using Value()
.
Returns
A new Quaternion
object
Helpers
Get Match Info
Returns
A Match
object containing information about the current match in progress
Get Match Rules
Returns the match gameplay parameters that you set up in the MiniTon Developer Console for each tournament type
Returns
Hashtable
containing the gameplay parameters of the current match
Get Player
Gets the currently logged-in player info. This will return an empty object if a MiniTon player has not been created yet.
Returns
A Player
object
Get SDK Version
Gets the version of the MiniTon SDK your game is being run on.
Returns
MiniTon SDK version as a string
Is Match In Progress
Checks if a match is currently in progress.
Returns
A boolean indicating if a match if is in progress
Set Metadata for Match In Progress
Updates the meta data for a MiniTon match in progress to track player actions, level types, or other information pertinent to the MiniTon integration. There should be no more than 10 key/value pairs in the supplied collection. Data will only be available to MiniTon to help identify fairness in level-based games.
Parameters
attributes
String representing the meta data in a JSON string
forMatchInProgress
Boolean to check whether the user is in a MiniTon game
Sync API
Is Match Completed
This will return whether or not another client connected to this match has called either displaySynchronousTournamentResultsWithScore
or initiateSynchronousAbortWithCompletion:
to end the match.
Returns
Boolean indicating whether or not the match has been completed
Send Data
Sends a message to all clients connected to this match. This will trigger MiniTonSyncDelegate::onDidReceiveData:
on all clients connected to the current match.
Note:
NSData
passed to this function are limited to a certain size based on the game, and this function will assert if over that size. (2048 bytes currently).
Parameters
data
The message to be sent, max 2048 bytes
Objects
Real-Time Server Connection Info
CustomServerConnectionInfo
Property | Data Type | Description |
---|---|---|
isBotMatch | bool | Indicates if the match is a sync bot match |
MatchId | string | The ID of the real-time match |
MatchToken | string | An encrypted token to help validate the session server side |
ServerIp | string | The hostname or IP for the match |
ServerPort | string | The port for the game server |
Match Info
Match
â
Property | Data Type | Description |
---|---|---|
BracketRound | int | Indicates the round of the bracket tournament if IsBracket is true |
CustomServerConnectionInfo | CustomServerConnectionInfo | The connection info to a custom server that coordinates a real-time match |
Description | string | The description of this tournament type |
EntryToncoin | float | If this tournament is being played for Toncoin, this is the amount of Toncoin required to enter |
EntryPoints | int | If this tournament is being played for Points, this is the amount of Points required to enter. |
GameParams | Dictionary<string, string> | The custom parameters for this tournament type specified in the developer portal |
ID | ulong | The unique ID for the match |
IsBracket | bool | Indicates the match is a bracketed tournament |
IsToncoin | bool | Indicates the match is for Toncoin prizes or for Points |
IsCustomSynchronousMatch | bool | Indicates if the match is a sync match |
IsSynchronous | bool | Deprecated. Indicates if this match is Sync. Note: please use the IsCustomSynchronousMatch property |
IsTieBreaker | bool | Indicates whether the match is a tie-breaker |
Name | string | Name of the match |
Players | List<Player> | List of players in the match |
MiniTonDifficulty | uint | The difficulty of the game (used with automatic difficulty). Note: only set in production. |
TemplateID | int | The unique ID for the tournament template this match is based on |
Player Info
Player
Property | Data Type | Description |
---|---|---|
AvatarURL | string | A link to the user's avatar image |
DisplayName | string | Player name |
FlagURL | string | A link to the user's country's flag image |
ID | ulong | The Telegram ID unique to this user |
IsCurrentPlayer | bool | This Player represents the current user if this is true |
TournamentPlayerID | ulong | A Tournament Player ID unique to this user |
Progression Metadata
ProgressionMetadata
Property | Data Type | Description |
---|---|---|
GameIds | List<string> | List of relevant game IDs for the associated ProgressionValue |
Progression Value
ProgressionValue
Property | Data Type | Description |
---|---|---|
DataType | string | The data type for the stored value |
DisplayName | string | The display name for the stored value |
LastUpdatedTime | DateTime | The timestamp of when the data was last updated on MiniTon servers in UTC |
Metadata | ProgressionMetadata | The metadata for this progression value |
Value | string | The stored value for this progression value |
Last updated