Skip to content

Matchmaking

The Matchmaking namespace provides helpers for match search, lobby management, and lobby data access.


Match Settings

GetGameModes()number

Returns the currently selected game modes bitmask.


SetGameModes(val: number)void

Sets the game modes bitmask.


GetCompetitiveGameModes()number

Returns the competitive game modes bitmask.


SetCompetitiveGameModes(val: number)void

Sets the competitive game modes bitmask.


GetMatchType()Enum.MatchType

Returns the selected match type.


SetMatchType(val: Enum.MatchType)void

Sets the selected match type.


GetMatchLanguages()number

Returns the selected match languages bitmask.


SetMatchLanguages(val: number)void

Sets the selected match languages bitmask.


GetBotDifficultyMask()number

Returns the selected bot difficulty mask.


SetBotDifficultyMask(val: number)void

Sets the selected bot difficulty mask.


GetRankedRoleQueue()boolean

Returns whether ranked role queue is enabled.


SetRankedRoleQueue(val: boolean)void

Enables or disables ranked role queue.


GetBotScriptIndexMask()number

Returns the bot script index mask.


SetBotScriptIndexMask(val: number)void

Sets the bot script index mask.


GetRegionSelectionFlags()Enum.MatchGroup

Returns the selected region flags.


SetRegionSelectionFlags(val: Enum.MatchGroup)void

Sets the selected region flags.


GetLaneSelectionFlags()Enum.LaneSelectionFlags

Returns the selected lane flags.


SetLaneSelectionFlags(val: Enum.LaneSelectionFlags)void

Sets the selected lane flags.


GetCustomGameDifficultyMask()number

Returns the custom game difficulty mask.


SetCustomGameDifficultyMask(val: number)void

Sets the custom game difficulty mask.


GetFindMatchData()CMsgStartFindingMatch

Returns the current match search payload.


FindMatch(skipPingMenu?: boolean)void

Starts matchmaking using the current settings.


StopFindingMatch()void

Stops the current matchmaking search.


Reconnect()void

Reconnects to the current matchmaking session.


Lobby

JoinLobby(id: bigint, pass?: string, callback?: (response: object) => void)void

Joins a lobby by its ID.


CreateLobby(data: MatchmakingLobbyData)void

Creates a new lobby from the provided data.


LaunchLobby()void

Launches the current lobby.


GetLobbyList(callback: (response: CMsgLobbyListResponse) => void, server_region?: number, game_mode?: number)void

Requests the lobby list.


GetFriendLobbyList(callback: (response: CMsgFriendPracticeLobbyListResponse) => void, friends: number[])void

Requests the lobby list for the provided friends.


GetMatchmakingStats(callback: (response: CMsgDOTAMatchmakingStatsResponse) => void)void

Requests matchmaking statistics.


Party

InviteToParty(steamID: bigint)void

Invites a Steam account to the current party.


AcceptParty(groupID: bigint)void

Accepts a party invite.


RejectParty(groupID: bigint)void

Rejects a party invite.


Data

GetAccountData()CSODOTAGameAccountClient | null

Returns the current account data.


GetAccountPlusData()CSODOTAGameAccountPlus | null

Returns the current Dota Plus account data.


GetPartyData()CSODOTAParty | null

Returns the current party data.


GetLobbyData()CSODOTALobby | null

Returns the current lobby data.