IP Library Granted Patent US 9,445,949
Granted Patent B1
US 9,445,949 · App. 13/907,727 · Granted Sep 20, 2016

System and method for processing commands in an online game

Inventor: Clifford J. Harrington (San Francisco, CA)
Assignee: KABAM, INC.
A61F13/12A63F13/44A63F13/352A63F13/355A63F13/40
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,445,949
App. No.
13/907,727
Granted
Sep 20, 2016
Kind
B1
Abstract

One aspect of the disclosure relates to processing commands in an online game, and particularly for assigning an order for the execution of commands in the online game such that the commands are executed in that order by disparate servers. The online game may be played by a plurality of users via a respective plurality of client computing devices. Commands may be received at a plurality of game servers from a plurality of users via a plurality of client computing devices. A central server may receive the commands from the respective game servers and may assign sequence numbers for the received commands. The commands may be performed in sequential order. By executing commands in sequential order by the plurality of game servers, the virtual world of the online game may be presented in a consistent way to the plurality of users of the online game.

Claims (49)

1. A system configured to facilitate processing commands in an online game, the system comprising:

a game server comprising one or more physical processors configured by machine-readable instructions to:

execute an instance of a virtual space, and to implement the instance of the virtual space to facilitate participation by one or more users in the online game within the virtual space on one or more client computing platforms;

receive a plurality of commands from individual ones of the client computing platforms, wherein the commands are based on inputs of one or more users at the one or more client computing platforms;

transmit the plurality of commands to a central server, wherein the plurality of commands are transmitted with a time stamp indicating a time at which an individual order was received;

receive a plurality of augmented commands from the central server, wherein an individual augmented command comprises an individual command that has been augmented with a sequence number indicating an order in which the individual command is to be executed, wherein a first augmented command is associated with a time stamp closest to a time stamp associated with a second augmented command of each of the plurality of augmented commands, and wherein a first sequence number associated with the first augmented command is not consecutive with a second sequence number associated with the second augmented command; and

execute the plurality of augmented commands according to the respective plurality of sequence numbers.

2. The system of claim 1 , wherein a first command of the plurality of augmented commands is associated with a first sequence number, and a second command of the plurality of augmented commands is associated with a second sequence number, wherein the first sequence number is consecutive to the second sequence number.

3. The system of claim 2 , wherein the one or more processors are further configured by machine-readable instructions to:

receive a signal from the central server indicating that the first augmented command should be executed;

execute the first augmented command;

execute the second augmented command associated with the second sequence number consecutive to the first sequence number associated with the first augmented command.

4. The system of claim 3 ,

wherein a third augmented command of the plurality of augmented commands is associated with a third sequence number, wherein the third sequence number is consecutive to the second sequence number, and

wherein a fourth augmented command of the plurality of augmented commands is associated with a fourth sequence number, wherein the fourth sequence number is not consecutive to the third sequence number, and

wherein the one or more processors are further configured by machine-readable instructions to:

execute the third augmented command associated with the third sequence number consecutive to the second sequence number; and

transmit a signal to the central server indicating that the third augmented command was executed.

5. The system of claim 1 , wherein the one or more processors are further configured by machine-readable instructions to transmit a signal to the central server indicating that the first augmented command was executed responsive to a determination that the first augmented command was executed.

6. The system of claim 5 , wherein the one or more processors are further configured by machine-readable instructions to receive a signal from the central server indicating that the second augmented command should be executed.

7. A computer-implemented method of processing commands in an online game, the method being implemented in a computer system comprising one or more physical processors, the method comprising:

executing an instance of a virtual space, and to implement the instance of the virtual space to facilitate participation by one or more users in the online game within the virtual space on one or more client computing platforms;

receiving a plurality of commands from individual ones of the client computing platforms, wherein the commands are based on inputs of one or more users at the one or more client computing platforms;

transmitting the plurality of commands to a central server, wherein the plurality of commands are transmitted with a time stamp indicating a time at which an individual order was received;

receiving a plurality of augmented commands from the central server, wherein an individual augmented command comprises an individual command that has been augmented with a sequence number indicating an order in which the individual command is to be executed, wherein a first augmented command is associated with a time stamp closest to a time stamp associated with a second augmented command of each of the plurality of augmented commands, and wherein a first sequence number associated with the first augmented command is not consecutive with a second sequence number associated with the second augmented command; and

executing the plurality of augmented commands according to the respective plurality of sequence numbers.

8. The method of claim 7 , wherein a first command of the plurality of augmented commands is associated with a first sequence number, and a second command of the plurality of augmented commands is associated with a second sequence number, wherein the first sequence number is consecutive to the second sequence number.

9. The method of claim 8 , wherein executing the plurality of augmented commands comprises:

receiving a signal from the central server indicating that the first augmented command should be executed;

executing the first augmented command;

executing the second augmented command associated with the second sequence number consecutive to the first sequence number associated with the first augmented command.

10. The method of claim 9 ,

wherein a third augmented command of the plurality of augmented commands is associated with a third sequence number, wherein the third sequence number is consecutive to the second sequence number, and

wherein a fourth augmented command of the plurality of augmented commands is associated with a fourth sequence number, wherein the fourth sequence number is not consecutive to the third sequence number,

the method further comprising:

executing the third augmented command associated with the third sequence number consecutive to the second sequence number; and

transmitting a signal to the central server indicating that the third augmented command was executed.

11. The method of claim 7 , further comprising:

transmitting a signal to the central server indicating that the first augmented command was executed.

12. The method of claim 11 , further comprising:

receiving a signal from the central server indicating that the second augmented command should be executed.

13. A non-transitory electronic storage media storing information related to facilitating processing commands in an online game, the stored information comprising:

a memory configured to store information related to the online game;

instructions configured to cause a client computing platform to:

execute an instance of a virtual space, and to implement the instance of the virtual space to facilitate participation by one or more users in the online game within the virtual space on one or more client computing platforms;

receive a plurality of commands from individual ones of the client computing platforms, wherein the commands are based on inputs of one or more users at the one or more client computing platforms;

transmit the plurality of commands to a central server, wherein the plurality of commands are transmitted with a time stamp indicating a time at which an individual order was received;

receive a plurality of augmented commands from the central server, wherein an individual augmented command comprises an individual command that has been augmented with a sequence number indicating an order in which the individual command is to be executed, wherein a first augmented command is associated with a time stamp closest to a time stamp associated with a second augmented command of each of the plurality of augmented commands, and wherein a first sequence number associated with the first augmented command is not consecutive with a second sequence number associated with the second augmented command; and

execute the plurality of augmented commands according to the respective plurality of sequence numbers.

Assignments (4)
SECURITY INTEREST Recorded Apr 2, 2018
From: KABAM, INC.
To: BANK OF MONTREAL
Reel/Frame 045813/0153 →
TERMINATION OF INTELLECTUAL PROPERTY SECURITY AGREEMENT, RECORDED AT REEL/FRAME: 039268/0910 Recorded Mar 2, 2017
From: SILICON VALLEY BANK
To: KABAM, INC.
Reel/Frame 041857/0538 →
SECURITY AGREEMENT Recorded Jul 6, 2016
From: KABAM, INC.
To: SILICON VALLEY BANK
Reel/Frame 039268/0910 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2013
From: HARRINGTON, CLIFFORD J.
To: KABAM, INC.
Reel/Frame 030528/0480 →