Statistics system for online console-based gaming
First Claim
1. A method comprising:
- receiving, from a game console, a score of a user;
identifying, based at least in part on the score, a location in a score table where an identifier of the user is to be inserted;
assigning the user to one of a plurality of groups;
modifying a count of users associated with the group to which the user is assigned;
associating, with the identifier of the user, a relative position of the user in the assigned group, wherein the associating is based at least in part on the user'"'"'s score; and
modifying, for each user in the assigned group that has a lower score than the user, a relative position associated with each such user.
2 Assignments
0 Petitions
Accused Products
Abstract
In a statistics system for online console-based gaming, a user'"'"'s rating is added to the system by inserting an identifier of the user into an appropriate location in a rating table. The user is also assigned to one of multiple rating groups, and a count of users associated with that rating group is modified accordingly. A relative position of the user in the assigned rating group is also associated with the user, and the relative positions of any other users assigned to that same rating group are modified accordingly. A user'"'"'s ranking is retrieved by identifying which of the multiple rating groups the user is assigned to and generating a count of how many users are assigned to groups with higher rating ranges than the user'"'"'s group. The user'"'"'s relative position within the user'"'"'s group is then added to the count to generate the ranking of the user.
-
Citations
57 Claims
-
1. A method comprising:
-
receiving, from a game console, a score of a user;
identifying, based at least in part on the score, a location in a score table where an identifier of the user is to be inserted;
assigning the user to one of a plurality of groups;
modifying a count of users associated with the group to which the user is assigned;
associating, with the identifier of the user, a relative position of the user in the assigned group, wherein the associating is based at least in part on the user'"'"'s score; and
modifying, for each user in the assigned group that has a lower score than the user, a relative position associated with each such user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method comprising:
-
receiving, from a game console, an identifier of a user;
identifying, in a rating table, an entry that includes the identifier;
identifying one of a plurality of rating groups to which the user is assigned;
modifying a count of users associated with the rating group to which the user is assigned; and
modifying, for each other user in the rating group to which the user is assigned that has a lower rating than the user, a relative position associated with each such user. - View Dependent Claims (15, 16, 17, 18)
-
-
19. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to:
-
receive, from a game console, an identifier of a user and a new rating for the user;
identify, in a rating table, an entry that includes the identifier;
identify one of a plurality of groups to which the user was previously assigned;
decrement a count of users associated with the group to which the user was previously assigned;
increment, for each other user in the group to which the user was previously assigned that has a lower rating than the user, a relative position associated with each such user;
identify, based at least in part on the new rating, a new location in the rating table where the identifier of the user is to be inserted;
assign the user to a new group of the plurality of groups;
increment a count of users associated with the new group;
associate, with the identifier of the user, a relative position of the user in the new group, wherein the association is based at least in part on the user'"'"'s rating; and
decrement, for each other user in the new group that has a lower rating than the user, a relative position associated with each such user. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to:
-
receive a user identifier for which a ranking is to be retrieved, wherein the ranking indicates how a rating associated with the identified user compares to other ratings associated with other users;
identify which of a plurality of groups the user identifier is assigned to;
identify a leaf node of a tree, wherein the leaf node corresponds to the group to which the user identifier is assigned;
traverse a path in the tree from the leaf node to a root node of the tree, summing selected user counts along the path;
identify a relative position of the user identifier within the group to which the user identifier is assigned; and
generate, as the ranking, a sum of the relative position and the summation of selected user counts along the path. - View Dependent Claims (26, 27, 28, 29, 30, 31)
-
-
32. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors of a game console, causes the one or more processors to:
-
identify a plurality of friends of a user of the game console;
access a server to retrieve, for each of the plurality of friends, an indication of how the plurality of friends and the user rank for a game title compared to one another; and
display, to the user, how well the plurality of friends and the user rank for the game title compared to one another. - View Dependent Claims (33, 34)
-
-
35. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to:
-
receive a request to identify a window of user rankings to retrieve, wherein the request includes a reference indication of where the window is situated;
retrieve one or more user rankings that are lower than the user ranking associated with the reference indication;
retrieve one or more user rankings that are higher than the user ranking associated with the reference indication; and
return, as at least part of the window of user rankings, the retrieved rankings. - View Dependent Claims (36, 37, 38, 39, 40)
-
-
41. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to:
-
establish a plurality of rating groups;
assign each user, based on a rating of the user, to one of the plurality of rating groups;
generate a relative position of each user within the assigned group, wherein for each user the relative position is generated based at least in part on the rating of the user and the ratings of any other users assigned to the same group;
split, when a number of users in a group reaches a threshold amount, the group into multiple groups, each of the multiple groups including one or more users previously assigned to the group; and
use a data structure to determine a ranking of a particular user based at least in part on both the relative position of the particular user within the group to which the user is assigned and a number of users in each of one or more groups ranked higher than the group assigned to the user. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55)
-
-
56. A system comprising:
-
a persistent store device configured to, maintain a rating table that assigns user identifiers to bucket identifiers, and further stores both a rating for the user identifier and a relative position for the user identifier, wherein the relative position is based at least in part on the rating for the user identifier and the ratings of other user identifiers assigned to the same bucket, and maintain a bucket table that stores, for each of a plurality of buckets, a range of ratings for user identifiers assigned to the bucket and a count of user identifiers assigned to the bucket; and
a statistics server device, coupled to the persistent store device, and configured to, split, when a number of users assigned to a bucket reaches or exceeds a threshold amount, the bucket into multiple buckets, each of the multiple buckets including one or more users previously assigned to the bucket, and use a tree structure to determine a ranking of a particular user based at least in part on both the relative position of the particular user within the bucket to which the user is assigned and a number of users in each of one or more buckets ranked higher than the bucket to which the user is assigned.
-
-
57. A system comprising:
-
a gateway device configured to receive requests from game consoles via an insecure network and communicate the requests to other devices via a secure network;
a front door device configured to receive requests via the secure network from the security gateway and translate the requests to a format expected by a statistics server device; and
a persistent store device configured to, maintain a rating table that assigns user identifiers to bucket identifiers, and further stores both a rating for the user identifier and a relative position for the user identifier, wherein the relative position is based at least in part on the rating for the user identifier and the ratings of other user identifiers assigned to the same bucket, maintain a bucket table that stores, for each of a plurality of buckets, a range of ratings for user identifiers assigned to the bucket and a count of user identifiers assigned to the bucket; and
wherein the statistics server device is configured to,split, when a number of users assigned to a bucket reaches a threshold amount, the bucket into multiple buckets, each of the multiple buckets including one or more users previously assigned to the bucket, and use a tree structure to determine a ranking of a particular user based at least in part on both the relative position of the particular user within the bucket to which the user is assigned and a number of users in each of one or more buckets ranked higher than the bucket to which the user is assigned.
-
Specification