Title:
System, game server, terminal, and computer program product for link point scaling in a multiplayer location-aware game
Kind Code:
A1
Abstract:
A system for scaling a link point in a multiplayer location-aware game comprises a plurality of clients capable of executing a client-side game application and a network entity capable of communicating with the plurality of clients. The plurality of clients are capable of communicating across at least one network to play a multiplayer location-aware game. The network entity is capable of determining a number of clients participating in the multiplayer location-aware game. The network entity is capable of determining a location of each of the clients participating in the multiplayer location-aware game. The network entity is capable of determining a size of at least one link point based on the number of clients and based on the location of each client.


Inventors:
Mattila, Jouka (Tampere, FI)
Application Number:
11/093364
Publication Date:
11/02/2006
Filing Date:
03/30/2005
Assignee:
Nokia Corporation (Espoo, FI)
Primary Class:
International Classes:
A63F9/24
View Patent Images:
Related US Applications:
Attorney, Agent or Firm:
ALSTON & BIRD LLP (BANK OF AMERICA PLAZA, 101 SOUTH TRYON STREET, SUITE 4000, CHARLOTTE, NC, 28280-4000, US)
Claims:
That which is claimed:

1. A system for scaling a link point in a multiplayer location-aware game, the system comprising: a plurality of clients capable of executing a client-side game application, the plurality of clients being capable of communicating across at least one network to play a multiplayer location-aware game; and a network entity capable of communicating with the plurality of clients; wherein the network entity is capable of determining a number of clients participating in the multiplayer location-aware game; wherein the network entity is capable of determining a location of each of the clients participating in the multiplayer location-aware game; and wherein the network entity is capable of determining a size of at least one link point based on the number of clients and based on the location of each client.

2. The system of claim 1, wherein the network entity is capable of determining the size of the at least one link point based on a predefined minimum number of clients per link point.

3. The system of claim 1, wherein the network entity is capable of determining the size of the at least one link point based on a predefined maximum number of link points between any two clients.

4. The system of claim 1, wherein the network entity is capable of determining the size of the at least one link point based on a predefined maximum distance between any two clients.

5. The system of claim 1, wherein the network entity is capable of determining the size of the at least one link point based on a predefined minimum link point size and a predefined maximum link point size.

6. The system of claim 5, wherein the predefined minimum link point size and the predefined maximum link point size may vary based on a geographic location of the at least one link point.

7. A network entity for scaling a link point in a multiplayer location-aware game, the network entity comprising: a processor capable of communicating with a plurality of clients capable of executing a client-side game application and capable of communicating across at least one network to play a multiplayer location-aware game; wherein the processor is capable of determining a number of clients participating in the multiplayer location-aware game; wherein the processor is capable of determining a location of each of the clients participating in the multiplayer location-aware game; and wherein the processor is capable of determining a size of at least one link point based on the number of clients and based on the location of each client.

8. The network entity of claim 7, wherein the processor determines the size of the at least one link point based on a predefined minimum number of clients per link point.

9. The network entity of claim 7, wherein the processor determines the size of the at least one link point based on a predefined maximum number of link points between any two clients.

10. The network entity of claim 7, wherein the processor determines the size of the at least one link point based on a predefined maximum distance between any two clients.

11. The network entity of claim 7, wherein the processor determines the size of the at least one link point based on a predefined minimum link point size and a predefined maximum link point size.

12. The network entity of claim 11, wherein the predefined minimum link point size and the predefined maximum link point size may vary based on a geographic location of the at least one link point.

13. A terminal for scaling a link point in a multiplayer location-aware game, the terminal comprising: a processor capable of executing a client-side game application, the processor being capable of communicating with a network entity across at least one network to play a multiplayer location-aware game with a plurality of clients; wherein the processor is capable of interfacing with at least one of the plurality of clients based on a size of at least one link point determined by the network entity; and wherein the processor is capable of interfacing with the network entity when the network entity determines the size of the at least one link point based on a number of clients and based on a location of each client.

14. The terminal of claim 13, wherein the processor is capable of interfacing with the network entity when the network entity determines the size of the at least one link point based on a predefined minimum number of clients per link point.

15. The terminal of claim 13, wherein the processor is capable of interfacing with the network entity when the network entity determines the size of the at least one link point based on a predefined maximum number of link points between any two clients.

16. The terminal of claim 13, wherein the processor is capable of interfacing with the network entity when the network entity determines the size of the at least one link point based on a predefined maximum distance between any two clients.

17. The terminal of claim 13, wherein the processor is capable of interfacing with the network entity when the network entity determines the size of the at least one link point based on a predefined minimum link point size and a predefined maximum link point size.

18. The terminal of claim 13, wherein the predefined minimum link point size and the predefined maximum link point size may vary based on a geographic location of the at least one link point.

19. A computer program product for scaling a link point in a multiplayer location-aware game, the computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising: a first executable portion capable of determining a number of players participating in the multiplayer location-aware game; a second executable portion capable of determining a location of each of the players participating in the multiplayer location-aware game; and a third executable portion capable of determining a size of at least one link point based on the number of players and based on the location of each player.

20. The computer program product of claim 19, wherein the third executable portion determines the size of the at least one link point based on a predefined minimum number of players per link point.

21. The computer program product of claim 19, wherein the third executable portion determines the size of the at least one link point based on a predefined maximum number of link points between any two players.

22. The computer program product of claim 19, wherein the third executable portion determines the size of the at least one link point based on a predefined maximum distance between any two players.

23. The computer program product of claim 19, wherein the third executable portion determines the size of the at least one link point based on a predefined minimum link point size and a predefined maximum link point size.

24. The computer program product of claim 23, wherein the predefined minimum link point size and the predefined maximum link point size may vary based on a geographic location of the at least one link point.

Description:

FIELD OF THE INVENTION

The present invention generally relates to systems and methods of operating a multiplayer electronic game and, more particularly, relates to systems, network entities, terminals, and computer program products for providing link point scaling in a multiplayer location-aware game.

BACKGROUND OF THE INVENTION

Multiplayer electronic gaming is a popular pastime, and it continues to grow in popularity as more devices, particularly mobile devices, are created to facilitate this type of gaming. Multiplayer gaming initially only involved using personal computers connected via a wired interface to a network, such as the Internet. As wireless networks and wireless Internet access became more prevalent, multiplayer gaming took advantage of this wireless capability. Cellular telephones and other mobile electronic devices connected via wireless networks began offering gaming. Additionally, dedicated wireless mobile gaming devices were created. These wireless mobile gaming devices allow users to participate in multiplayer gaming away from their personal computer and wired network connection. For purposes of this application, the term “gaming device” will be used to refer to all devices capable of gaming over a network, whether the device is a personal computer, a cellular telephone, a gaming console, a mobile gaming device, or any other type of device, whether the network is the Internet, a cellular telephone network, or any other type of network, and whether the communication with the network is wired or wireless.

A feature of many mobile electronic communication devices is presence enabling, which allows users of these devices to determine whether other users are online and available for communication. Presence enabling is available to a certain extent in multiplayer gaming systems. Presence enabling provides status information for a player to other players of the gaming system. This status information tells other players whether a particular player is able to play a game at this particular time. This status information may vary according to the type of gaming device. For example, for a personal computer with a wired Internet connection, the status information may include whether the player is online and whether the player is currently participating in a particular game. For cellular telephones or other mobile devices, the status information may include the user's geographic location and the latency of the network to which the mobile device is connected.

Similar to presence status, many mobile electronic devices feature location awareness. Location awareness enables the mobile electronic device, or a server with which the mobile electronic device is communicating, to determine the approximate physical location of the mobile electronic device. Several techniques are known for determining the approximate physical location of a mobile electronic device. One known technique uses a global positioning system (GPS) receiver in the mobile electronic device. The GPS receiver determines the approximate physical location by triangulating signals received from at least three different GPS satellites. Using another known technique termed cell ID, the mobile electronic device determines the identification number of the cellular tower through which the mobile electronic device is communicating. By comparing the tower identification number with a database of cellular towers, the location of the cellular tower, and therefore the approximate location of the mobile electronic device, can be obtained. The different techniques enable the determination of physical location with different degrees of accuracy. Cell ID typically enables determination of location to an accuracy of approximately 200 to 300 meters. GPS typically enables determination of location to an accuracy of approximately 10 to 20 meters.

Location awareness in mobile electronic devices has enabled the development of location-aware multiplayer games. A location-aware multiplayer gaming application typically executes on a game server that is capable of determining the physical location of the mobile communication devices that are being used to play the game. The physical locations of each device, and therefore the physical locations of each player, are used by the gaming application to enable location-aware functionality that enhances the gaming experience. For example, one player may create an electronic note that is associated with a particular geographic area, such that the note may be read by other players who enter that same geographic area. Additionally, players who are interacting through the gaming application and who are in physical proximity to each other may meet in person to exchange game-related items.

A location-aware multiplayer game may be played by a large number of players physically located across a large geographic area. For example, a popular multiplayer game may be played by hundreds or even thousands of players from across the United States. Because it is difficult or impossible for a player to interact with or even just monitor that many players, a developer of a location-aware multiplayer game will typically define small subsets of the entire gaming area for purposes of restricting certain activities within one or more of the small subsets. These small subsets may be termed link points. The game developer will typically predefine the location, size, shape, and number of link points in a gaming area. For example, if the entire gaming area is the United States, the game developer may define several thousand link points over the United States. Typically, every part of a gaming area will be defined to exist within one and only one link point, such that no link point overlaps any other link point.

The game developer will typically predefine the shape of each link point as a square, although other shapes, such as hexagons, may be used. A typical size for a link point is 200 meters by 200 meters, although the game developer may predefine the size of each link point to be any desired size. The game developer may predefine different size link points for different geographic areas, based on the anticipated number of game players in a particular geographic area. For example, the game developer may predefine relatively small link points for urban areas, larger link points for suburban areas, and the largest link points for rural areas. As such, the game developer may attempt to maintain a fairly consistent number of players per link point.

One reason that a game developer may attempt to maintain a consistent number of players per link point is that some game features may only be utilized by players within the same link point, within adjacent link points, or within link points that are less than a predefined distance or number of link points away from each other. For example, a gaming application may only permit a player to view the locations and/or activities of other players who are less than five link points away from the player. Limiting the number of link points for which a player can view the locations and/or activities of other players thereby limits the number of other players that must be monitored and keeps the game from becoming overly complex or difficult. Additionally, a gaming application may only permit a player to participate in particular interactions with players who are in the same link point. For example, a player may only be permitted to exchange private electronic correspondence with another player if both players are in the same link point. Such a limitation encourages players to travel from one link point to another, thereby enabling physical interaction between the players.

Because the size of the link points is predefined by the game developer, problems may occur if the game developer incorrectly or inappropriately defines the size of the link points. Because the size of the link points is typically defined based on the anticipated number of players in a particular geographic area, it is possible that the game developer will incorrectly anticipate the number of players. If the number of players is smaller than anticipated, the link points may be considered too large and players may not be able to interact with enough other players to consider the game interesting and fun. If the number of players is larger than anticipated, the link points may be considered too small and players may find it difficult to monitor or interact with the large number of other players in the same and nearby link points.

The problems that may occur when the game developer incorrectly or inappropriately defines the size of the link points are particularly troublesome in the time period immediately after the initial release of a new game. In the initial days and weeks that a new game is available, the number of players is typically small and may be increasing slowly. It is important during this time period for the players to enjoy the game such that the players will recommend the game to other potential players, thereby increasing the number of players. If the size of the link points is predefined based on the anticipated long-term number of players, then the link points will be too small in this initial time period. As such, the interaction between players will be limited as discussed above, and therefore the initial players will not enjoy the game and will not recommend the game to other potential players.

As such, there is a need for a system, network entity, terminal, and computer program product that allow the initial players of a new multiplayer location-aware game to interact with a sufficient number of other players to facilitate an enjoyable gaming experience, thereby increasing the likelihood that the initial players will recommend the game to other potential players.

BRIEF SUMMARY OF THE INVENTION

A system, network entity, terminal, and computer program product are therefore provided that scale (i.e., change the size of) the link points in a multiplayer location-aware game based on predefined criteria, such as the number and location of the players.

In this regard, a system for scaling a link point in a multiplayer location-aware game comprises a plurality of clients capable of executing a client-side game application and a network entity capable of communicating with the plurality of clients. The plurality of clients are capable of communicating across at least one network to play a multiplayer location-aware game. The network entity is capable of determining a number of clients participating in the multiplayer location-aware game. The network entity is capable of determining a location of each of the clients participating in the multiplayer location-aware game. The network entity is capable of determining a size of at least one link point based on the number of clients and based on the location of each client.

The network entity may determine the size of the at least one link point based on a predefined minimum number of clients per link point. Alternatively, the network entity may determine the size of the at least one link point based on a predefined maximum number of link points between any two clients. The network entity may determine the size of the at least one link point based on a predefined maximum distance between any two clients. The network entity may determine the size of the at least one link point based on a predefined minimum link point size and a predefined maximum link point size, and the predefined minimum link point size and the predefined maximum link point size may vary based on a geographic location of the at least one link point.

In addition to the system for scaling a link point in a multiplayer location-aware game as described above, other aspects of the present invention are directed to corresponding network entities, terminals, and computer program products for scaling link points.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S)

Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

FIG. 1 is a block diagram of one type of system that would benefit from embodiments of the present invention;

FIG. 2 is a schematic block diagram of an entity capable of operating as a mobile station, network entity, game server, proxy server, personal computer (PC) system, and/or game console, in accordance with embodiments of the present invention;

FIG. 3 is a schematic block diagram more particularly illustrating a mobile station in accordance with one embodiment of the present invention;

FIG. 4 is a schematic block diagram of an exemplar configuration of various network entities of the system of FIG. 1, in accordance with one embodiment of the present invention;

FIG. 5 is a flowchart of the operation of scaling a link point in a multiplayer location-aware game, in accordance with one embodiment of the present invention;

FIG. 6 is an illustration of a gaming area comprising a plurality of link points that would benefit from embodiments of the present invention;

FIG. 7 is an illustration of a gaming area comprising a plurality of link points that have been scaled, in accordance with one embodiment of the present invention; and

FIG. 8 is an illustration of a gaming area comprising a plurality of link points that have been scaled, in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.

Referring to FIG. 1, an illustration of one type of system that would benefit from the present invention is provided. The system can include one or more mobile stations 10, each having an antenna 12 for transmitting signals to and for receiving signals from one or more base stations (BS's) 14. The base station is a part of one or more cellular or mobile networks that each includes elements required to operate the network, such as one or more mobile switching centers (MSC) 16. As well known to those skilled in the art, the mobile network may also be referred to as a Base Station/MSC/Interworking function (BMI). In operation, the MSC is capable of routing calls, data or the like to and from mobile stations when those mobile stations are making and receiving calls, data or the like. The MSC can also provide a connection to landline trunks when mobile stations are involved in a call.

The MSC 16 can be coupled to a data network, such as a local area network (LAN), a metropolitan area network (MAN), and/or a wide area network (WAN). The MSC can be directly coupled to the data network. In one typical embodiment, however, the MSC is coupled to a gateway (GTW) 18, and the GTW is coupled to a WAN, such as the Internet 20. In turn, devices such as processing elements (e.g., personal computers, server computers or the like) can be coupled to the mobile station 10 via the Internet. For example, as explained below, the processing elements can include one or more processing elements associated with one or more game servers 22, routing servers 24, personal computer (PC) systems 26, game consoles 28, or the like, one of each being illustrated in FIG. 1 and described below. As will be appreciated, the processing elements can comprise any of a number of processing devices, systems or the like capable of operating in accordance with embodiments of the present invention.

The BS 14 can also be coupled to a signaling GPRS (General Packet Radio Service) support node (SGSN) 30. As known to those skilled in the art, the SGSN is typically capable of performing functions similar to the MSC 16 for packet switched services. The SGSN, like the MSC, can be coupled to a data network, such as the Internet 20. The SGSN can be directly coupled to the data network. In a more typical embodiment, however, the SGSN is coupled to a packet-switched core network, such as a GPRS core network 32. The packet-switched core network is then coupled to another GTW, such as a GTW GPRS support node (GGSN) 34, and the GGSN is coupled to the Internet.

Although not every element of every possible network is shown and described herein, it should be appreciated that the mobile station 10 may be coupled to one or more of any of a number of different networks. In this regard, mobile network(s) can be capable of supporting communication in accordance with any one or more of a number of first-generation (1G), second-generation (2G), 2.5G and/or third-generation (3G) mobile communication protocols or the like. More particularly, one or more mobile stations may be coupled to one or more networks capable of supporting communication in accordance with 2G wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA). Also, for example, one or more of the network(s) can be capable of supporting communication in accordance with 2.5G wireless communication protocols GPRS, Enhanced Data GSM Environment (EDGE), or the like. In addition, for example, one or more of the network(s) can be capable of supporting communication in accordance with 3G wireless communication protocols such as Universal Mobile Telephone System (UMTS) network employing Wideband Code Division Multiple Access (WCDMA) radio access technology. Some narrow-band AMPS (NAMPS), as well as TACS, network(s) may also benefit from embodiments of the present invention, as should dual or higher mode mobile stations (e.g., digital/analog or TDMA/CDMA/analog phones).

One or more mobile stations 10 can further be coupled to one or more wireless access points (APs) 36. The APs can be configured to communicate with the mobile station in accordance with techniques such as, for example, radio frequency (RF), Bluetooth (BT), infrared (IrDA) or any of a number of different wireless networking techniques, including WLAN techniques. The APs may be coupled to the Internet 20. Like with the MSC 14, the APs can be directly coupled to the Internet. In one embodiment, however, the APs are indirectly coupled to the Internet via a GTW 18. As will be appreciated, by directly or indirectly connecting the mobile stations and the user processors (e.g., game servers 22, routing servers 24, personal computer (PC) systems 26, game consoles 28, and network entities) and/or any of a number of other devices to the Internet, whether via the APs or the mobile network(s), the mobile stations and user processors can communicate with one another to thereby carry out various functions of the respective entities, such as to transmit and/or receive data, content or the like. As used herein, the terms “data,” “content,” “information,” and similar terms may be used interchangeably to refer to data capable of being transmitted, received and/or stored in accordance with embodiments of the present invention. Thus, use of any such terms should not be taken to limit the spirit and scope of the present invention.

Although not shown in FIG. 1, in addition to or in lieu of coupling the mobile stations 10 to game servers 22, routing servers 24, personal computer (PC) systems 26, and/or game consoles 28 across the Internet 20, one or more such entities may be directly coupled to one another. As such, one or more network entities may communicate with one another in accordance with, for example, RF, BT, IrDA or any of a number of different wireline or wireless communication techniques, including LAN and/or WLAN techniques.

Referring now to FIG. 2, a block diagram of an entity capable of operating as a mobile station 10, game server 22, routing server 24, personal computer (PC) system 26 and/or game console 28, is shown in accordance with one embodiment of the present invention. Although shown as separate entities, in some embodiments, one or more entities may support one or more of a mobile station, game server, routing server, personal computer (PC) system and/or game console, logically separated but co-located within the entit(ies). For example, a single entity may support a logically separate, but co-located, game server and routing server. Also, for example, a single entity may support a logically separate, but co-located personal computer and game console.

As shown, the entity capable of operating as a mobile station 10, game server 22, routing server 24, personal computer (PC) system 26 and/or game console 28 generally includes a processor 38 connected to a memory 40. The memory can comprise volatile and/or non-volatile memory, and typically stores content, data or the like. For example, the memory typically stores content transmitted from, and/or received by, the entity. Also for example, the memory typically stores client applications, instructions or the like for the processor to perform steps associated with operation of the entity in accordance with embodiments of the present invention. As explained below, for example, the memory can store client application(s) including a configuration utility, content manager and/or display manager. In this regard, when executed, the configuration utility may function to configure a source of content to receive or otherwise provide content. The content manager, when executed, may function to manage the receipt of content from the source, and/or the use of content received from the source. And the display manager may function to manage presentation of content received from the source. As described herein, the client application(s) each comprise software operated by the respective entities. It should be understood, however, that any one or more of the client applications described herein can alternatively comprise firmware or hardware, without departing from the spirit and scope of the present invention.

In addition to the memory 40, the processor 38 can also be connected to at least one interface or other means for displaying, transmitting and/or receiving data, content or the like. In this regard, the interface(s) can include at least one communication interface 42 or other means for transmitting and/or receiving data, content or the like, as well as at least one user interface that can include a display 44 and/or a user input interface 46. The user input interface, in turn, can comprise any of a number of devices allowing the entity to receive data from a user, such as a keypad, a touch display, a joystick or other input device.

Reference is now made to FIG. 3, which illustrates one type of mobile station 10, a mobile telephone, which would benefit from embodiments of the present invention. It should be understood, however, that the mobile station illustrated and hereinafter described is merely illustrative of one type of mobile station that would benefit from the present invention and, therefore, should not be taken to limit the scope of the present invention. While several embodiments of the mobile station are illustrated and will be hereinafter described for purposes of example, other types of mobile stations, such as portable digital assistants (PDAs), pagers, laptop computers, mobile gaming devices and other types of electronic systems, can readily employ the present invention.

As shown, in addition to an antenna 14, the mobile station 10 can include a transmitter 48, receiver 50, and controller 52 or other processor that provides signals to and receives signals from the transmitter and receiver, respectively. These signals include signaling information in accordance with the air interface standard of the applicable cellular system, and also user speech and/or user generated data. In this regard, the mobile station can be capable of operating with one or more air interface standards, communication protocols, modulation types, and access types. More particularly, the mobile station can be capable of operating in accordance with any of a number of first generation (1G), second generation (2G), 2.5G and/or third-generation (3G) communication protocols or the like. For example, the mobile station may be capable of operating in accordance with 2G wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA). Also, for example, the mobile station may be capable of operating in accordance with 2.5G wireless communication protocols GPRS, EDGE, or the like. Further, for example, the mobile station may be capable of operating in accordance with 3G wireless communication protocols such as UMTS network employing WCDMA radio access technology. Some NAMPS, as well as TACS, mobile stations may also benefit from the teaching of this invention, as should dual or higher mode phones (e.g., digital/analog or TDMA/CDMA/analog phones).

It is understood that the controller 52 includes the circuitry required for implementing the audio and logic functions of the mobile station 10. For example, the controller may be comprised of a digital signal processor device, a microprocessor device, and various analog-to-digital converters, digital-to-analog converters, and other support circuits. The control and signal processing functions of the mobile station are allocated between these devices according to their respective capabilities. The controller can additionally include an internal voice coder (VC) 52a, and may include an internal data modem (DM) 52b. Further, the controller may include the functionality to operate one or more client software programs such as those indicated above, which may be stored in memory (described below).

The mobile station 10 also comprises a user interface including a conventional earphone or speaker 54, a ringer 56, a microphone 58, a display 60, and a user input interface, all of which are coupled to the controller 52. Although not shown, the mobile station can include a battery for powering the various circuits that are required to operate the mobile station, as well as optionally providing mechanical vibration as a detectable output. The user input interface, which allows the mobile station to receive data, can comprise any of a number of devices allowing the mobile station to receive data, such as a keypad 52, a touch display (not shown), a joystick (not shown) or other input device. In embodiments including a keypad, the keypad includes the conventional numeric (0-9) and related keys (#, *), and other keys used for operating the mobile station.

The mobile station 10 can also include one or more means for sharing and/or obtaining data. For example, the mobile station can include a short-range radio frequency (RF) transceiver or interrogator 64 so that data can be shared with and/or obtained from electronic devices in accordance with RF techniques. The mobile station can additionally, or alternatively, include other short-range transceivers, such as, for example an infrared (IR) transceiver 66, and/or a Bluetooth (BT) transceiver 68 operating using Bluetooth brand wireless technology developed by the Bluetooth Special Interest Group. The mobile station can therefore additionally or alternatively be capable of transmitting data to and/or receiving data from electronic devices in accordance with such techniques. Although not shown, the mobile station can additionally or alternatively be capable of transmitting and/or receiving data from electronic devices according to a number of different wireless networking techniques, including WLAN techniques such as IEEE 802.11x techniques or the like.

The mobile station 10 can further include memory, such as a subscriber identity module (SIM) 70, a removable user identity module (R-UIM) or the like, which typically stores information elements related to a mobile subscriber. In addition to the SIM, the mobile station can include other removable and/or fixed memory. In this regard, the mobile station can include volatile memory 72, such as volatile Random Access Memory (RAM) including a cache area for the temporary storage of data. The mobile station can also include other non-volatile memory 74, which can be embedded and/or may be removable. The non-volatile memory can additionally or alternatively comprise an EEPROM, flash memory or the like. The memories can store any of a number of software applications, instructions, pieces of information, and data, used by the mobile station to implement the functions of the mobile station.

As will be appreciated, a number of the entities of the system of FIG. 1 can be configured in any of a number of different architectures to perform any of a number of functions. For example, the entities of the system of FIG. 1 can be configured in a centralized client-server architecture, decentralized architecture and/or proxy architecture. Additionally or alternatively, for example, the entities of the system of FIG. 1 can be configured in an architecture given in the Scalable Network Application Package (SNAP) (formerly Sega Network Application Package) provided by Nokia Corporation for applications such as in the context of gaming.

More particularly, as shown in FIG. 4, for example, one or more mobile stations, PC systems and/or game consoles may operate as clients 76 in a gaming architecture that also includes one or more game servers 22 and routing servers 24. In the illustrated architecture, similar to a conventional client-server architecture, the game servers operate games and maintain the state of those games. The clients, then, operate client-side game applications that communicate with the game servers to repeatedly change the game state of the games operated and maintained by the game servers to thereby play those games.

Also in the illustrated architecture, the clients 76 are coupled to routing servers 24 which, in turn, are coupled to the game servers 22. Thus, the routing servers route data packets between one or more clients 76 and the game servers 22, and/or other clients, to facilitate the operation of each entity in the architecture. As shown, the routing servers can be coupled between groups of clients and one or more routing servers, directly or indirectly via one or more other routing servers. In this regard, one or more routing servers can also be coupled to other routing servers such that the routing servers can also be coupled between one or more clients and one or more groups of other clients, such as groups of clients coupled to other routing servers.

Referring now to FIG. 5, a flowchart of the operation of scaling a link point in a multiplayer location-aware game is illustrated, in accordance with one embodiment of the present invention. The operation illustrated in FIG. 5 may be utilized to scale, i.e., change the size of, some or all of the link points that comprise a portion of a gaming area or an entire game area. A gaming area is the entire area in which a particular multiplayer location-aware game can be played. The gaming area is typically predefined by the game developer and may comprise a multi-country region (e.g., western Europe), a single country (e.g., the United States), a region or part of a country (e.g., the island of Honshu, Japan), or a city (e.g., Los Angeles). As discussed above, the gaming area will typically comprise a plurality of link points, or sub-areas, that are predefined by the game developer, with the set of link points making up the gaming area.

The operation of scaling a link point as illustrated in FIG. 5 may be executed repeatedly, such as on a periodic basis (e.g., once daily), or non-periodically if desired. In the initial days following the release of a new game, the operators of the new game may desire to execute this scaling operation on a more frequent basis. When the game has matured and the number of players has stabilized, the operators of the game may desire to execute this operation less frequently, or even cease executing this operation.

The operation of scaling a link point may be executed by the game server which is executing a server-side gaming application and operating the multiplayer location-aware game. Alternatively, the operation of scaling a link point may be executed in a network entity separate from the game server. Such a network entity may communicate with the plurality of clients playing the multiplayer game. Such a network entity may determine the size of the link points and communicate the size of the link points to the game server.

Because of the problems discussed above that may occur when there are too few players relative to the size of the link points, a game developer may establish criteria that may be used by embodiments of the present invention to determine if the size of the link points should be scaled, and how to scale the link points if so desired. Many different criteria may be predefined to determine if and how the link points should be scaled. For example, a game developer may predefine a desired ratio of players to link points, e.g., 1:1, such that the size of the link points would be changed if the number of link points exceeded the number of players. Additionally, a game developer may predefine a desired minimum number of possible interactions for each player. This may be desired in a game in which players are only permitted to interact with other players who are in the same link point or adjacent link points. In such a game, when there are a small number of players and the players are spread across the gaming area, some of the players may not be able to interact with any other players within the game. Embodiments of the present invention may increase the size of the link points until every player is capable of interacting with at least one other player. Similarly, a game developer may predefine a maximum number of link points between any two players or a maximum distance between any two players, such that the size of the link points is increased if either predefined maximum is exceeded.

In addition to the criteria related to the number and location of the players, the game developer may also predefine a minimum and a maximum allowable link point size. The minimum link point size would typically be the intended link point size when the game has reached maturity and the number of players has leveled off. The maximum link point size may be as large as the gaming area, such that the gaming area would comprise only one link point, but would typically be smaller than the entire gaming area.

Referring again to FIG. 5, repeatedly the number and location of all players within a gaming area would be determined, as illustrated in block 80. The number and location of the players would be analyzed to determine if the predefined criteria, discussed above, are satisfied. See block 81. If the predefined criteria are not satisfied, it would typically be determined if the size of the link points could be increased such that the criteria would be satisfied. If the link point size is already equal to the maximum predefined size, as determined in block 100, then no further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute. It should be appreciated that the criteria would not have been satisfied, but no further action would typically be taken because the link point size is at the predefined maximum.

If it is determined in block 100 that the link point size is not already equal to the maximum link point size, the link point size will be increased by a predefined increment to create a proposed increased link point size. See block 102. The predefined increment by which the link size is to be increased may be defined in several different ways. For example, the size may be increased by a predefined percentage, or by a predefined number of meters. This proposed increased link point size will not yet be applied to the game, but the proposed increased link point size will be analyzed to determine if this increased link point size will cause the criteria to be satisfied. See block 104. If the proposed increased link point size causes the criteria to be satisfied, the proposed increased link point size will be applied to the game, such that the link points that comprise the gaming area will be enlarged to proposed size. See block 108. No further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute.

If it is determined in block 104 that the proposed increased link point size will not cause the criteria to be satisfied, the proposed increased link point size would be compared to the predefined maximum link point size. See block 106. If it is determined in block 106 that the proposed increased link point size is equal to the predefined maximum link point size, then the link point size cannot be increased beyond the proposed new size and therefore the proposed new size will be applied to the game. See block 108. If it is determined in block 106 that the proposed increased link point size is less than the predefined maximum link point size, then a new, larger proposed increased link point size will be created. See block 102. Blocks 102 through 106 may be repeatedly performed until the predefined criteria are satisfied or the maximum link point size is reached, such that a proposed increased link point size that either satisfies the criteria or equals the maximum link point size is applied to the game in block 108. No further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute.

If it is determined in block 81 that the predefined criteria are satisfied, it would typically be determined if the size of the link points could be decreased while still satisfying the criteria. If the link point size is already equal to the minimum predefined size, as determined in block 82, then no further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute.

If it is determined in block 82 that the link point size is not already equal to the minimum link point size, the link point size will be decreased by a predefined increment to create a proposed decreased link point size. See block 84. The predefined increment by which the link size is to be decreased may be defined in several different ways. This proposed decreased link point size will not yet be applied to the game, but the proposed decreased link point size will be analyzed to determine if this decreased link point size would still allow the criteria to be satisfied. See block 86. If the proposed decreased link point size would cause the criteria to no longer be satisfied, the proposed decreased link point size will not be applied to the game, but rather the link point size will remain unchanged. See block 88. No further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute.

If the proposed decreased link point size would still allow the criteria to be satisfied, the proposed decreased link point size will be stored in memory. See block 90. The proposed decreased link point size would be compared to the predefined minimum link point size. See block 92. If it is determined in block 92 that the proposed decreased link point size is equal to the predefined minimum link point size, then the link point size cannot be decreased beyond the proposed new size and therefore the stored proposed new size will be applied to the game. See block 98. If it is determined in block 92 that the proposed decreased link point size is greater than the predefined minimum link point size, then a new, smaller proposed decreased link point size will be created. See block 94. This new proposed decreased link point size will not yet be applied to the game, but the new proposed decreased link point size will be analyzed to determine if this new decreased link point size would still allow the criteria to be satisfied. See block 96. If the new proposed decreased link point size would cause the criteria to no longer be satisfied, the new proposed decreased link point size will not be applied to the game, but rather the previous proposed decreased link point size, which has been stored in memory, will be applied to the game. See block 98. No further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute.

If the new proposed decreased link point size would still allow the criteria to be satisfied, the new proposed decreased link point size will be stored in memory, replacing the previously stored value. See block 90. Blocks 90 through 96 may be repeatedly performed until the predefined criteria are no longer satisfied or the minimum link point size is reached, such that the most recently stored proposed decreased link point is applied to the game in block 98. No further action would be taken until the operation illustrated in FIG. 5 is again scheduled to execute.

Referring now to FIG. 6, a gaming area of a typical multiplayer location-aware game that would benefit from embodiments of the present invention is illustrated. The gaming area 120 of FIG. 6 comprises a plurality of link points, illustrated by the small squares (one of which is indicated as 122). Gaming area 120 comprises 560 link points, in a grid of 20 link points across and 28 link points down. In the multiplayer location-aware game of FIG. 6, each link point might have a predefined size of 200 meters by 200 meters. Each number illustrated in the gaming area 120 indicates a player of the multiplayer location-aware game. In this illustration, there are 28 players of this game. In a typical multiplayer location-aware game, interaction among players might be limited in a predefined manner, such as by only permitting players in the same link point or in adjacent link points to interact. If the gaming area 120 is illustrative of a game with such a limitation, then it should be appreciated that few of the 28 players illustrated in FIG. 6 would be able to interact with other players. Only players 2 and 3, players 13 and 14, players 16 and 19, and players 22 and 24 would be able to interact. The remaining 20 players would not be able to interact with other players, would have a less enjoyable gaming experience, and would be less likely to recommend the game to others. Based on predefined criteria, such as a ratio of players to link points or a minimum number of interactions, embodiments of the present invention would typically increase the size of the link points illustrated in FIG. 6 to enable greater interaction among the players and increased gaming enjoyment.

FIG. 7 is an illustration of the gaming area 120 in which the size of the link points has been increased, in accordance with one embodiment of the present invention. In the gaming area 120 of FIG. 7, the size of the link points has been increased such that the link points (one of which is indicated as 124) are sixteen times larger than the link points of FIG. 6. The gaming area 120 of FIG. 7 now comprises only 35 link points, with each link point in this illustration having a size of 800 meters by 800 meters. It should be appreciated that the size of the link points in FIG. 7 would typically allow much greater interaction among the players compared to the size of the link points in FIG. 6. Each of the 28 players in FIG. 7 is either in the same link point as another player or in an adjacent link point to another player. As such, each player is able to interact with at least one other player, thereby increasing gaming enjoyment. It should be appreciated that, as the number of players increases, embodiments of the present invention would typically decrease the size of the link points such that the link points would eventually return to the size indicated in FIG. 6.

FIG. 8 is an illustration of the gaming area 120 in which the size of the link points have been increased by differing amounts across the gaming area, in accordance with one embodiment of the present invention. The gaming area 120 of FIG. 8 comprises link points that are sixteen times larger than the link points of FIG. 6 (one of which is indicated as 124) and link points that are four times larger than the link points of FIG. 6 (one of which is indicated as 126). Because the lower right section of the gaming area 120 has a greater concentration of players relative to the other sections of the gaming area, the size of the link points in the lower right section may not need to be increased as much as the link points in the other sections. Embodiments of the present invention may enable the link points in different sections of the gaming area to increase or decrease by different amounts.

The method for scaling a link point in a multiplayer location-aware game may be embodied by a computer program product. The computer program product includes a computer-readable storage medium, such as the non-volatile storage medium, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable storage medium. Typically, the computer program is stored by a memory device and executed by an associated processing unit, such as the processing element of the server.

In this regard, FIG. 5 is a flowchart of methods and program products according to the invention. It will be understood that each step of the flowchart, and combinations of steps in the flowchart, can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable apparatus to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the flowchart step(s). These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart step(s). The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart step(s).

Accordingly, steps of the flowchart support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each step of the flowchart, and combinations of steps in the flowchart, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.

Many modifications and other embodiments of the invention will come to mind to one skilled in the art to which this invention pertains having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the invention is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.