game-common / pragma.matchmaking.matchables / ActiveMatch /

ActiveMatch #

interface ActiveMatch : ConsumingMatchable

ActiveMatch represents a match that has re-entered matchmaking to find more players.

Functions #

NameSummary

assignPartiesToTeam

abstract fun assignPartiesToTeam(partyIdList: List<UUID>, teamNumber: Int)

Modifies the team assignment of all players within a party for the given party IDs. Ignores unknown party IDs.

assignPlayersToTeam

abstract fun assignPlayersToTeam(playerIdList: List<UUID>, teamNumber: Int)

Modifies the team assignment of individual players for the given player IDs. Ignores unknown player IDs.

findParty

abstract override fun findParty(partyId: UUID): Matchmaking.Party?

Finds a party within this ActiveMatch with a given party ID. Returns null if the party is not found.

findPartyWithPlayer

abstract override fun findPartyWithPlayer(playerId: UUID): Matchmaking.Party?

Finds a party that contains a specific player within this ActiveMatch with a given player ID. Returns null if the party is not found.

findPlayer

abstract override fun findPlayer(playerId: UUID): Matchmaking.Player?

Finds a player within the parties in this ActiveMatch with a given player ID. Returns null if the player is not found.

getQueueKey

abstract override fun getQueueKey(): MatchmakingRpc.MatchmakingQueueKey

Get the QueueKey for this ActiveMatch, which is the combination of a ExtMatchmakingKey and a GameServerVersion

secondsInQueue

abstract fun secondsInQueue(timeProxy: TimeProxy = TimeProxy.defaultInstance): Int

The number of seconds of the party in this ActiveMatch that has been in the matchmaking queue the longest.

stopMatchmaking

abstract fun stopMatchmaking()

Calling this will mark this ActiveMatch to be removed from its matchmaking queue after its current MatchmakingPlugin.matchParties call.

takePartiesFrom

abstract override fun takePartiesFrom(providingMatchable: ProvidingMatchable, parties: List<Matchmaking.Party>)

Moves parties from the passed in Matchable to this ActiveMatch. Ignores unknown parties.

Properties #

NameSummary

ext

abstract val ext: ExtCreateMatchV1Request

The custom ExtCreateMatchV1Request that was provided when the match started.

gameServerVersion

abstract val gameServerVersion: String

The GameServerVersion for this ActiveMatch.

gameServerZone

abstract val gameServerZone: GameServerZone

The game server zone this ActiveMatch is running on.

markedToStop

abstract val markedToStop: Boolean

Is true when ActiveMatch.stopMatchmaking has been called on this ActiveMatch.

matchId

abstract val matchId: UUID

The match id of this ActiveMatch.

matchmakingKey

abstract val matchmakingKey: ExtMatchmakingKey

The MatchmakingKey for this ActiveMatch. The custom Ext representing the characteristics of the queue this Matchable is in.

parties

abstract override val parties: List<Matchmaking.Party>

The parties in this ActiveMatch including parties added with any ActiveMatch.takePartiesFrom calls. The returned list is a snapshot of the current state of the Matchable and will not update, instead call the property again to get the updated state.

players

abstract override val players: List<Matchmaking.Player>

The list of players in the match. When new players are added to the match, subsequent calls to players will include those players. If the game server calls PlayerLeaveV1Request or the game client calls DeclineReconnectV1Request to remove a player from the match, this list of players is updated by the engine to remove those players.

removedPlayers

abstract val removedPlayers: List<Matchmaking.Player>

The list of players that have previously been removed from the match by a game server calling the PlayerLeaveV1Request or a game client calling the DeclineReconnectV1Request.

teams

abstract val teams: List<Matchmaking.Team>

The list of teams in the match. When new players are added to the match, subsequent calls to teams will group newly added players into the list of teams.