# US 11,992,757 B2 · Synchronization model for virtual tournaments

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,992,757 B2
- Document ID: US11992757B2
- Status: Granted
- Kind: B2
- Application number: 17/832,059
- Filed: 2022-06-03
- Published: 2022-09-22
- Granted: 2024-05-28
- Earliest claimed: 2016-03-15
- Assignees: Skillz Platform Inc.
- Applicants: Skillz Platform Inc.
- Inventors: Andrew Paradise; Miriam Aguirre
- Web page: https://patentgrep.com/patent/US11992757B2

## CPC

- A63F 13/44: involving timing of operations, e.g. performing an action within a time slot
- A63F 13/32: using local area network [LAN] connections
- A63F 13/332: using wireless networks, e.g. cellular phone networks
- A63F 13/34: using peer-to-peer connections
- A63F 13/352: involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
- A63F 13/48: Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
- A63F 13/798: for assessing skills or for ranking players, e.g. for generating a hall of fame
- A63F 13/86: Watching games played by other players
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR

## Abstract

Data characterizing two players enrolled in a tournament of an online video game is received. Each player is executing a separate instance of the online video game. The online video game is asynchronous between the two players. The data is received by a tournament server hosting the tournament and separate from a game server providing game data to clients associated with the two players. An instruction for synchronous initiation of gameplay between the two players is generated. The instruction is transmitted to the clients associated with the two players, the instruction causing synchronous initiation of the asynchronous games for the two players. Related apparatus, systems, techniques and articles are also described.

## Claims

### Claim 1

A method, comprising:
receiving, by a tournament server, data characterizing a first client and a second client enrolled in a tournament of an asynchronous online video game, the data received by a tournament server hosting the tournament;
transmitting, by the tournament server, an instruction to the first client and the second client, the instruction causing synchronous initiation of the asynchronous online video game including a first game instance executing on the first client and a second game instance executing on the second client, wherein the first game instance and the second game instance have different game states and execute using a game server, and wherein the game server, the first game instance, and the second game instance lack a mechanism for initiating gameplay synchronously;
receiving, from the tournament server and at a media management server, a first video stream and a second video stream, the first video stream and the second video stream synchronized in response to the transmission of the instruction, the first video stream comprising captured video of gameplay of the first game instance, and the second video stream comprising captured video of gameplay of the second game instance;
identifying, by the media management server, a first highlight video segment from the first video stream and a second highlight video segment from the second video stream;
assembling, by the media management server, a suggested broadcast video stream for a commentator client, the suggested broadcast video stream comprising at least the first highlight video segment and the second highlight video segment;
transmitting, by the media management server, the suggested broadcast video stream to the commentator client;
selecting, by an interface at the commentator client, one or more key video segments comprising at least a portion of the suggested broadcast video stream; and
streaming, by the media management server, the one or more key video segments as a broadcast video stream to a viewing client.

### Claim 2 (depends on 1)

The method of claim 1, comprising:
providing, by the media management server, simultaneous video streaming of gameplay of the first game instance and the second game instance for side-by-side viewing by the viewing client.

### Claim 3 (depends on 1)

The method of claim 1, comprising:
transmitting, by the tournament server, a stream of random number seeds to the first client and the second client for use in executing the first game instance and the second game instance, respectively.

### Claim 4 (depends on 1)

The method of claim 1, comprising:
transmitting, by the tournament server, a stream of random numbers to the first client and the second client for use in executing the first game instance and the second game instance, respectively.

### Claim 5 (depends on 1)

The method of claim 1, comprising:
changing, by the media management server and in response to an input from the commentator client, an order of the one or more key segments in the suggested broadcast video stream to generate the broadcast video stream.

### Claim 6 (depends on 1)

The method of claim 1, wherein the instruction causes gameplay to initiate when received by the first client or the second client.

### Claim 7 (depends on 6)

The method of claim 6, wherein each of the first client and the second client includes a peer-tournament module that receives the instruction and causes gameplay to initiate in response to receiving the instruction by executing a launch-game callback.

### Claim 8 (depends on 1)

The method of claim 1, wherein the instruction specifies a time for game initiation.

### Claim 9 (depends on 8)

The method of claim 8, wherein each of the first client and the second client includes a peer-tournament module that receives the instruction and causes the asynchronous online video game to initiate at the specified time by executing a launch-game callback.

### Claim 10 (depends on 1)

The method of claim 1, comprising:
transmitting, to the first client and the second client, a match identifier, wherein the match identifier specifies a unique identifier to the tournament.

### Claim 11

A system, comprising:
at least one data processor; and
a memory storing instructions, which, when executed by the at least one data processor, causes the at least one data processor to perform operations comprising:
receiving, by a tournament server, data characterizing a first client and a second client enrolled in a tournament of an asynchronous online video game, the data received by a tournament server hosting the tournament;
transmitting, by the tournament server, an instruction to the first client and the second client, the instruction causing synchronous initiation of the asynchronous online video game including a first game instance executing on the first client and a second game instance executing on the second client, wherein the first game instance and the second game instance have different game states and execute using a game server, and wherein the game server, the first game instance, and the second game instance lack a mechanism for initiating gameplay synchronously;
receiving, from the tournament server and at a media management server, a first video stream and a second video stream, the first video stream and the second video stream synchronized in response to the transmission of the instruction, the first video stream comprising captured video of gameplay of the first game instance, and the second video stream comprising captured video of gameplay of the second game instance;
identifying, by the media management server, a first highlight video segment from the first video stream and a second highlight video segment from the second video stream;
assembling, by the media management server, a suggested broadcast video stream for a commentator client, the suggested broadcast video stream comprising at least the first highlight video segment and the second highlight video segment;
transmitting, by the media management server, the suggested broadcast video stream to the commentator client;
selecting, by an interface at the commentator client, one or more key video segments comprising at least a portion of the suggested broadcast video stream; and
streaming, by the media management server, the one or more key video segments as a broadcast video stream to a viewing client.

### Claim 12 (depends on 11)

The system of claim 11, the operations further comprising:
providing, by the media management server, simultaneous video streaming of gameplay of the first game instance and the second game instance for side-by-side viewing by the viewing client.

### Claim 13 (depends on 11)

The system of claim 11, the operations further comprising:
transmitting, by the tournament server, a stream of random number seeds to the first client and the second client for use in executing the first game instance and the second game instance, respectively.

### Claim 14 (depends on 11)

The system of claim 11, the operations further comprising:
transmitting, by the tournament server, a stream of random numbers to the first client and the second client for use in executing the first game instance and the second game instance, respectively.

### Claim 15 (depends on 11)

The system of claim 11, the operations further comprising:
changing, by the media management server and in response to an input from the commentator client, an order of the one or more key segments in the suggested broadcast video stream to generate the broadcast video stream.

### Claim 16 (depends on 11)

The system of claim 11, wherein the instruction causes gameplay to initiate when received by the first client or the second client.

### Claim 17 (depends on 16)

The system of claim 16, wherein each of the first client and the second client includes a peer-tournament module that receives the instruction and causes gameplay to initiate in response to receiving the instruction by executing a launch-game callback.

### Claim 18 (depends on 11)

The system of claim 11, wherein the instruction specifies a time for game initiation.

### Claim 19 (depends on 18)

The system of claim 18, wherein each of the first client and the second client includes a peer-tournament module that receives the instruction and causes the asynchronous online video game to initiate at the specified time by executing a launch-game callback.

### Claim 20

A non-transitory computer program product storing instructions, which, when executed by at least one data processor forming part of at least one computing system, implement operations comprising:
receiving, by a tournament server, data characterizing a first client and a second client enrolled in a tournament of an asynchronous online video game, the data received by a tournament server hosting the tournament;
transmitting, by the tournament server, an instruction to the first client and the second client, the instruction causing synchronous initiation of the asynchronous online video game including a first game instance executing on the first client and a second game instance executing on the second client, wherein the first game instance and the second game instance have different game states and execute using a game server, and wherein the game server, the first game instance, and the second game instance lack a mechanism for initiating gameplay synchronously;
receiving, from the tournament server and at a media management server, a first video stream and a second video stream, the first video stream and the second video stream synchronized in response to the transmission of the instruction, the first video stream comprising captured video of gameplay of the first game instance, and the second video stream comprising captured video of gameplay of the second game instance;
identifying, by the media management server, a first highlight video segment from the first video stream and a second highlight video segment from the second video stream;
assembling, by the media management server, a suggested broadcast video stream for a commentator client, the suggested broadcast video stream comprising at least the first highlight video segment and the second highlight video segment;
transmitting, by the media management server, the suggested broadcast video stream to the commentator client;
selecting, by an interface at the commentator client, one or more key video segments comprising at least a portion of the suggested broadcast video stream; and
streaming, by the media management server, the one or more key video segments as a broadcast video stream to a viewing client.
