module
Version:
v0.0.0-...-cf826ce
Opens a new window with list of versions in this module.
Published: Mar 4, 2023
License: Apache-2.0
Opens a new window with license information.
README
¶
Protocol Documentation
Table of Contents
Top
api/v1/messages.proto
GameServer
| Field |
Type |
Label |
Description |
| game_server_ip |
string |
|
game_server_ip is the IP address of the allocated GameServer, or empty if none is allocated |
| game_server_ports |
GameServerPort |
repeated |
game_server_ports maps labels to ports on the allocated GameServer |
GameServerPort
| Field |
Type |
Label |
Description |
| name |
string |
|
name of the port |
| port |
int32 |
|
port number |
MatchRequestData
MatchRequestData.DoublesEntry
MatchRequestData.StringsEntry
RTT
| Field |
Type |
Label |
Description |
| host |
string |
|
|
| milliseconds |
int64 |
|
|
Top
api/v1/external.proto
MatchRequest
| Field |
Type |
Label |
Description |
| id |
string |
|
a UUID generated by the client |
| player_id |
string |
|
the ID of this player |
| party_data |
PartyData |
|
matchmaking data specific to the party |
| match_request_data |
MatchRequestData |
|
matchmaking data specific to this player |
| matchmaking_queue |
string |
|
A queue is a collection of tickets to be matched together, it controls how tickets are matched |
| rtts |
RTT |
repeated |
A list of latency data for game server instances |
MatchResponse
| Field |
Type |
Label |
Description |
| game_server |
GameServer |
|
|
PartyData
| Field |
Type |
Label |
Description |
| party_members |
string |
repeated |
a list of player ids that are in a party with this player |
RivalryService
Top
api/v1/match_logic.proto
MakeAssignmentRequest
| Field |
Type |
Label |
Description |
| match |
Match |
|
|
MakeAssignmentResponse
| Field |
Type |
Label |
Description |
| game_server |
GameServer |
|
|
MakeMatchesRequest
| Field |
Type |
Label |
Description |
| submissions |
Submission |
repeated |
|
MakeMatchesResponse
| Field |
Type |
Label |
Description |
| match |
Match |
|
|
Match
| Field |
Type |
Label |
Description |
| match_id |
string |
|
A UUID that should be passed through the stack for tracing. |
| matchmaking_queue |
string |
|
Name of the matchmaking queue this match was created on. |
| match_request_ids |
string |
repeated |
Match Request IDs that belong to this match. |
| player_ids |
string |
repeated |
list of player ids linked to this request |
| rtts |
RTT |
repeated |
A list of average latency data for game server instances |
Submission
| Field |
Type |
Label |
Description |
| id |
string |
|
a UUID generated by the client |
| members |
string |
repeated |
list of player ids linked to this request |
| match_request_data |
MatchRequestData |
|
matchmaking data specific to this player / group |
| matchmaking_queue |
string |
|
A queue is a collection of tickets to be matched together, it controls how tickets are matched |
| rtts |
RTT |
repeated |
A list of latency data for game server instances |
| create_time |
int64 |
|
record the time the ticket was created in the db |
AssignmentService
MatchMakerService
| Method Name |
Request Type |
Response Type |
Description |
| MakeMatches |
MakeMatchesRequest |
MakeMatchesResponse stream |
MakeMatches takes a MatchProfile and a map of pool names to ticket slices, and creates a slice of Match's from that information |
Top
db/v1/documents.proto
GameServer
| Field |
Type |
Label |
Description |
| game_server_ip |
string |
|
game_server_ip is the IP address of the allocated GameServer, or empty if none is allocated |
| game_server_ports |
GameServerPort |
repeated |
game_server_ports maps labels to ports on the allocated GameServer |
GameServerPort
| Field |
Type |
Label |
Description |
| name |
string |
|
name of the port |
| port |
int32 |
|
port number |
MatchRequest
| Field |
Type |
Label |
Description |
| id |
string |
|
a UUID generated by the client |
| members |
string |
repeated |
list of player ids linked to this request |
| match_request_data |
MatchRequestData |
|
matchmaking data specific to this player / group |
| matchmaking_queue |
string |
|
A queue is a collection of tickets to be matched together, it controls how tickets are matched |
| rtts |
RTT |
repeated |
A list of latency data for game server instances |
| create_time |
int64 |
|
record the time the ticket was created in the db |
| game_server |
GameServer |
|
the result of matchmaking |
MatchRequestData
MatchRequestData.DoublesEntry
MatchRequestData.StringsEntry
RTT
| Field |
Type |
Label |
Description |
| host |
string |
|
|
| milliseconds |
int64 |
|
|
Top
stream/v1/internal.proto
AccumulatedStreamTicket
| Field |
Type |
Label |
Description |
| StreamTickets |
StreamTicket |
repeated |
|
StreamTicket
| Field |
Type |
Label |
Description |
| matchmaking_queue |
string |
|
which matchmaking queue the match requests belong to |
| match_request_id |
string |
|
the unique id of the match request |
| number_of_players |
int32 |
|
the number of players the match request represents |
Scalar Value Types
| .proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
| double |
|
double |
double |
float |
float64 |
double |
float |
Float |
| float |
|
float |
float |
float |
float32 |
float |
float |
Float |
| int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
| uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
| sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
| fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
| sfixed32 |
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| bool |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
| string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
| bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |
Directories
¶
Click to show internal directories.
Click to hide internal directories.