US2006135258A1PendingUtilityA1

System, network entity, client and method for facilitating fairness in a multiplayer game

Assignee: NOKIA CORPPriority: Dec 17, 2004Filed: Dec 17, 2004Published: Jun 22, 2006
Est. expiryDec 17, 2024(expired)· nominal 20-yr term from priority
G07F 17/3223G07F 17/3269G07F 17/32
51
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system for facilitating fairness in a multiplayer game includes a network entity (e.g., game server) capable of operating a game application that can operate a multiplayer game. A plurality of clients is associated with a network latency, and can communicate with the network entity across at least one network. The system further includes a time-delay module disposed between the clients and the game application. The time-delay module can receive a data packet associated with a particular client during play of the multiplayer game, and delaying the data packet for at least a portion of delay time associated with the particular client before passing the delayed packet to the game application or the particular client for processing. In this regard, the delay time is based upon the network latency of the first client and an effective network latency set based upon the network latencies of the plurality of clients.

Claims

exact text as granted — not AI-modified
1 . A system for facilitating fairness in a multiplayer game, the system comprising: 
 a gaming architecture comprising at least one network entity capable of operating a game application, the game application being capable of operating a multiplayer game;    a plurality of clients capable of communicating with the gaming architecture across at least one network to play the multiplayer game, wherein the plurality of clients are each associated with a network latency, and wherein the plurality of clients include a given client; and    a time-delay module disposed across at least one network from the plurality of clients, and between the plurality of clients and the game application,    wherein the time-delay module is capable of receiving a data packet associated with the particular client during play of the multiplayer game, wherein the time-delay module is capable of delaying the data packet for at least a portion of a delay time associated with the particular client, the delay time being based upon the network latency of the particular client and an effective network latency set based upon the network latencies of the plurality of clients, and    wherein the time-delay module is capable of passing the delayed data packet to one of the game application and the particular client.    
   
   
       2 . A system according to  claim 1 , wherein the time-delay module is capable of receiving data packets, delaying the data packets and passing the delayed data packets at least one of to and from the plurality of clients such that the plurality of clients play the multiplayer game with a network latency substantially equal to the effective network latency.  
   
   
       3 . A system according to  claim 1 , wherein the game application is capable of providing a plurality of occurrences of the multiplayer game, wherein each occurrence is capable of being played by a plurality of clients, and 
 wherein the time-delay module is capable of receiving a data packet, delaying the data packet and passing the delayed data packet for each occurrence of the multiplayer game.    
   
   
       4 . A network entity for facilitating fairness in a multiplayer game, the game server comprising: 
 a processor capable of at least partially operating a game application, the game application being capable of operating a multiplayer game played by a plurality of clients across at least one network, wherein the plurality of clients include a particular client and are each associated with a network latency, wherein the processor is also capable of operating a time-delay module,    wherein the time-delay module is capable of receiving a data packet associated with the particular client during play of the multiplayer game, wherein the time-delay module is capable of delaying the data packet for at least a portion of a delay time associated with the particular client, the delay time being based upon the network latency of the particular client and an effective network latency set based upon the network latencies of the plurality of clients, and    wherein the time-delay module is capable of passing the delayed data packet to one of the game application and the particular client.    
   
   
       5 . A network entity according to  claim 4 , wherein the time-delay module is further capable of determining the network latency associated with each of the plurality of clients, and setting the effective network latency based upon the highest network latency of the plurality of clients.  
   
   
       6 . A network entity according to  claim 5 , wherein the time-delay module is capable of periodically determining the network latency and setting the effective network latency.  
   
   
       7 . A network entity according to  claim 4 , wherein the time-delay module is further capable of determining the delay time associated with the particular client, the delay time determined to substantially equal the difference between the effective network latency and the network latency of the particular client.  
   
   
       8 . A network entity according to  claim 4 , wherein the time-delay module is capable of receiving a data packet, delaying the data packet and passing the delayed data packet for the plurality of clients such that the plurality of clients play the multiplayer game with a network latency substantially equal to the effective network latency.  
   
   
       9 . A network entity according to  claim 4 , wherein the processor is further capable of comparing the latencies of the plurality of clients against a threshold latency, and prohibiting clients having a network latency above the threshold latency from playing the multiplayer game.  
   
   
       10 . A network entity according to  claim 4 , wherein the game application is capable of providing a plurality of occurrences of the multiplayer game, wherein each occurrence is capable of being played by a plurality of clients, and 
 wherein the time-delay module is capable of receiving a data packet, delaying the data packet and passing the delayed data packet for each occurrence of the multiplayer game.    
   
   
       11 . A network entity according to  claim 10 , wherein each occurrence is associated with the effective network latency of the clients playing the occurrence, and wherein the game application is further capable of receiving an additional client into an occurrence of the multiplayer game based upon the effective network latency associated with the occurrence and the network latency of the additional client.  
   
   
       12 . A client for playing a multiplayer game, the client comprising: 
 a processor capable of communicating with a game application during play of a multiplayer game played by at least one other client, each of the clients being associated with a network latency,    wherein the processor is capable of communicating with the game application such that a time-delay module, disposed across the at least one network from the client, is capable of receiving a data packet associated with the client during play of the multiplayer game, such that the time-delay module is capable of delaying the data packet for at least a portion of a delay time associated with the client, the delay time being based upon the network latency of the client and an effective network latency set based upon the network latencies of the plurality of clients, and such that the time-delay module is capable of passing the delayed data packet to one of the game application and the client.    
   
   
       13 . A client according to  claim 12 , wherein the processor is capable of communicating with the game application such that a time-delay module is further capable of determining the network latency associated with each of the plurality of clients, and setting the effective network latency based upon the highest network latency of the plurality of clients.  
   
   
       14 . A client according to  claim 13 , wherein the processor is capable of communicating with the game application such that the time-delay module is capable of periodically determining the network latency associated with each of the plurality of clients, and setting the effective network latency.  
   
   
       15 . A client according to  claim 12 , wherein the processor is capable of communicating with the game application such that a time-delay module is further capable of determining the delay time associated with the client, the delay time determined to substantially equal the difference between the effective network latency and the network latency of the client.  
   
   
       16 . A client according to  claim 12 , wherein the network latency of the client is capable of being compared against a threshold latency such that the processor is prohibited from communicating with the game application if the network latency of the client is above the threshold latency.  
   
   
       17 . A client according to  claim 12 , wherein the game application is capable of providing a plurality of occurrences of the multiplayer game, wherein each occurrence is capable of being played by a plurality of clients, and wherein the processor is capable of communicating with the game application during play of an occurrence of the multiplayer game.  
   
   
       18 . A client according to  claim 17 , wherein each occurrence is associated with the effective network latency of the clients playing the occurrence, and wherein the processor is capable of being received into an occurrence of the multiplayer game based upon the effective network latency associated with the occurrence and the network latency of the client.  
   
   
       19 . A method of facilitating fairness in a multiplayer game, the method comprising: 
 receiving a data packet during play of a multiplayer game, wherein receiving a data packet comprises at least one of receiving a data packet from a particular client across at least one network, and receiving a data packet intended for the particular client, and wherein the particular client is one of a plurality of clients that are each associated with a network latency;    delaying the data packet for at least a portion of a delay time associated with the particular client, the delay time being based upon the network latency of the particular client and an effective network latency set based upon the network latencies of the plurality of clients; and    passing the delayed data packet, wherein passing the delayed data packet comprises at least one of passing the delayed data packet to a game application when the received data packet is from the particular client, and passing the delayed data packet across at least one network to the particular client when the received data packet is intended for the particular client.    
   
   
       20 . A method according to  claim 19  further comprising: 
 determining the network latency associated with each of the plurality of clients; and    setting the effective network latency based upon the highest network latency of the plurality of clients.    
   
   
       21 . A method according to  claim 20 , wherein determining the network latency and setting the effective network latency comprise periodically determining the network latency and setting the effective network latency.  
   
   
       22 . A method according to  claim 19  further comprising: 
 determining the delay time associated with the particular client, the delay time determined to substantially equal the difference between the effective network latency and the network latency of the particular client.    
   
   
       23 . A method according to  claim 19 , wherein receiving a data packet, delaying the data packet and passing the delayed data packet occur for the plurality of clients such that the plurality of clients play the multiplayer game with a network latency substantially equal to the effective network latency.  
   
   
       24 . A method according to  claim 19  further comprising: 
 comparing the latencies of the plurality of clients against a threshold latency; and    prohibiting clients having a network latency above the threshold latency from playing the multiplayer game.    
   
   
       25 . A method according to  claim 19  further comprising: 
 providing a plurality of occurrences of the multiplayer game, wherein each occurrence is capable of being played by a plurality of clients, and    wherein receiving a data packet, delaying the data packet and passing the delayed data packet occur for each occurrence of the multiplayer game.    
   
   
       26 . A method according to  claim 25 , wherein each occurrence is associated with the effective network latency of the clients playing the occurrence, and wherein the method further comprises: 
 receiving an additional client into an occurrence of the multiplayer game based upon the effective network latency associated with the occurrence and the network latency of the additional client.

Join the waitlist — get patent alerts

Track US2006135258A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.