Managing device of on-line game, its method, and system

The online game management device and system address unfair advantages in online games by grouping players based on game parameters and latency, ensuring fair play and improved user experience.

JP2025128327APending Publication Date: 2025-09-02SUPERCELL
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2025099108
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2020-06-02
Filing Date
2025-06-13
Publication Date
2025-09-02

AI Technical Summary

Technical Problem

Existing online games suffer from unfair advantages due to differing data connection latencies and communication latency issues between geographically distributed servers and client devices, leading to degraded gameplay experiences and reduced trust among players.

Method used

An online game management device and system that identifies client devices participating in a game, groups them based on similar game parameters and communication latency, enabling subgroups to participate in sessions that ensure fair play and consistent user experience.

Benefits of technology

The solution provides a fair-play gaming experience by ensuring players with similar skill levels and latencies compete, reducing boredom and enhancing user engagement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025128327000001_ABST
    Figure 2025128327000001_ABST
Patent Text Reader

Abstract

To provide a solution to a problem caused by communication literacy among a geographically dispersed server, a geographically dispersed client device, and related players.SOLUTION: In a managing device of an on-line game, a processor is configured so as to identify a set of client devices participating in an on-line game, identify game parameters related to the client devices in the set, define groups of client devices from the set, determine communication literacy between each of client devices in the groups and a server, define sub-groups of client devices from each of the groups, and allow a client device in the sub-groups to participate in a game session of an on-line game. The groups include multiple client devices having similar game parameters, and the sub-groups include multiple client devices having similar communication literacy.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates generally to data communication systems, and more particularly to an online game management apparatus for participating one or more client devices in a game session of an online game.

[0002] In recent years, the popularity of online games has increased dramatically due to improvements in the processing power of microprocessors installed in mobile communication devices and faster data communications over the Internet. Furthermore, online games are no longer just a hobby; e-sports tournaments and championships centered around online games are being held around the world, and live gameplay streaming platforms (such as Twitch (registered trademark)) have made it possible for professional gamers (game players) and gameplay streamers to devote their time to online games. Therefore, gamers are increasingly required to practice by playing online games on a daily basis with players from around the world who share the same interest in online games.

[0003] Online gaming is not limited to one or two game genres, but encompasses almost every game genre, from racing games to sports games, from multiplayer online battle arenas (MOBAs) to first-person shooters (FPSs). When gamers play such online games, they will understand that the quality of the gaming equipment (e.g., the microprocessor associated with the equipment the gamer is using to play the game, the graphics card(s) used in the equipment, etc.) and the latency of the data connection will have a significant impact on the outcome of the game the gamer plays (and ultimately the skill level the gamer develops over time).

[0004] For example, in FPS games, it is well known that gamers using hit-scan weapons have a hit registration advantage over other gamers using projectile weapons when both have similar latency data connections. This gives gamers using hit-scan weapons an unfair advantage over gamers using projectile weapons, significantly degrading the gameplay experience for both parties and minimizing the trust factor associated with the game for various audiences (e.g., gamers playing the game, potential purchasers of the game, and / or viewers of e-sports matches or live streams of the game).

[0005] Therefore, in light of the foregoing discussion, a need exists to overcome various problems associated with differing data connection latencies experienced by gamers in gaming environments.

[0006] The present disclosure seeks to provide an apparatus for managing an online game. The present disclosure also seeks to provide a method for managing an online game. Furthermore, the present disclosure seeks to provide a system for managing an online game. The present disclosure seeks to provide a solution to the existing problem of certain players having an unfair advantage over other players in online games, which is primarily caused by communication latency between geographically distributed servers and geographically distributed client devices and associated players. Furthermore, the present disclosure seeks to provide a solution to the existing problem of boredom and monotony experienced by users while playing a game, thereby providing an overall satisfying experience for users. It is an object of the present disclosure to provide a solution that at least partially overcomes the problems of the prior art and provides an efficient and seamless approach for managing an online game.

[0007] In a first aspect, one embodiment of the present disclosure provides an online game management device, the device comprising a processor and a memory, the processor: Identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; identifying one or more game parameters associated with each of the client devices in the set; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of the at least one group, wherein the at least one subgroup includes a plurality of client devices having similar communication latency; enabling the at least one subgroup of client devices to participate in a game session of the online game. It is configured as follows.

[0008] In a second aspect, one embodiment of the present disclosure provides a method for managing an online game, the method comprising: Identifying a set of client devices participating in an online game; and identifying one or more game parameters associated with each of the set of client devices; defining at least one group of client devices from said set; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of said at least one group; enabling the at least one sub-group of client devices to participate in a game session of the online game; wherein the at least one group includes a plurality of client devices having similar game parameters, and the at least one subgroup includes a plurality of client devices having similar communication latencies.

[0009] In a third aspect, an embodiment of the present disclosure provides an online game management system, the system comprising: a server communicatively connected to a set of client devices; an apparatus communicatively connected to the server and the client device; The device comprises: Identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; identifying one or more game parameters associated with each of the set of client devices; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and the server; defining at least one subgroup of client devices from each of the at least one group, wherein the at least one subgroup includes a plurality of client devices having similar communication latency; enabling the at least one subgroup of client devices to participate in a game session of the online game. It is configured as follows.

[0010] Embodiments of the present disclosure substantially eliminate or at least partially solve the aforementioned problems in the prior art, enabling users of the same skill level or latency values ​​associated with corresponding client devices to participate in a game session and thereby efficiently and seamlessly manage the online game to provide a superior user experience.

[0011] Additional aspects, advantages, features, and objects of the present disclosure will become apparent from the following detailed description of illustrative embodiments, taken in conjunction with the drawings and the appended claims.

[0012] It will be appreciated that features of the present disclosure are capable of being combined in various combinations without departing from the scope of the present disclosure as defined by the appended claims. [Brief explanation of the drawings]

[0013] The foregoing summary and the following detailed description of exemplary embodiments will be better understood when read in conjunction with the accompanying drawings. For the purpose of illustrating the disclosure, example structures of the disclosure are shown in the drawings. However, the disclosure is not limited to the particular methods and instrumentalities disclosed herein. Moreover, those skilled in the art will appreciate that the drawings are not to scale. Wherever possible, like elements have been designated by like reference numerals.

[0014] Embodiments of the present disclosure will now be described, by way of example only, with reference to the following figures: [Figure 1] FIG. 1 is a block diagram of a network environment according to an embodiment of the present disclosure. [Figure 2] FIG. 10 is a flowchart illustrating steps for defining at least one subgroup of client devices according to an embodiment of the present disclosure. [Figure 3] FIG. 1 is an illustrative flowchart illustrating steps of a method for managing an online game according to an embodiment of the present disclosure.

[0015] In the drawings, underlined symbols are used to represent the element in which they are located or adjacent. Symbols without underlines refer to the element identified by the line connecting them. Symbols without underlines and associated with an arrow are used to identify the entire element to which the arrow points. Detailed Description of the Embodiments

[0016] The following detailed description sets forth embodiments of the present disclosure and ways in which they may be practiced. While certain ways of practicing the present disclosure are disclosed, those skilled in the art will recognize that other embodiments are possible for implementing or practicing the present disclosure.

[0017] In a first aspect, one embodiment of the present disclosure provides an online game management device, the device comprising a processor and a memory, the processor: Identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; identifying one or more game parameters associated with each of the client devices in the set; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of the at least one group, wherein the at least one subgroup includes a plurality of client devices having similar communication latency; enabling the at least one subgroup of client devices to participate in a game session of the online game. It is configured as follows.

[0018] In a second aspect, one embodiment of the present disclosure provides a method for managing an online game, the method comprising: Identifying a set of client devices participating in an online game; and identifying one or more game parameters associated with each of the set of client devices; defining at least one group of client devices from said set; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of said at least one group; enabling the at least one sub-group of client devices to participate in a game session of the online game; wherein the at least one group includes a plurality of client devices having similar game parameters, and the at least one subgroup includes a plurality of client devices having similar communication latencies.

[0019] In a third aspect, an embodiment of the present disclosure provides an online game management system, the system comprising: a server communicatively connected to a set of client devices; an apparatus communicatively connected to the server and the client device; The device comprises: Identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; identifying one or more game parameters associated with each of the set of client devices; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and the server; defining at least one subgroup of client devices from each of the at least one group, wherein the at least one subgroup includes a plurality of client devices having similar communication latency; enabling the at least one subgroup of client devices to participate in a game session of the online game. It is configured as follows.

[0020] The present disclosure provides an apparatus, system, and method for managing an online game to provide a fair-play gaming experience for users (also referred to as "players"; hereinafter, these two terms are used interchangeably) associated with a set of client devices participating in an online game. Embodiments of the present disclosure provide techniques for mitigating unfair advantages of one user over another, which may be the result of network and data latency and other game parameters and may cause discomfort to users and players participating in an online game. Furthermore, the present disclosure provides an apparatus for allowing users of the same skill level or latency values ​​associated with corresponding client devices to participate in a game session, thereby reducing user boredom and maintaining user interest in the online game.

[0021] The present disclosure provides an apparatus for managing an online game. Throughout this disclosure, the term "online game," as used herein, refers to a complete, self-contained computer program designed to perform a specific function, task, or activity, such as an application program specifically designed for gaming. In this example, the online game may be in a genre such as a racing game, adventure game, puzzle game, action game, role-playing game (RPG), strategy game, shooter game, or simulation game. As an example, the online game is designed to provide users or players with an interactive environment for playing the game. After gaining access to the online game, users can participate in a game session in the game. Depending on the characteristics of the online game, users can play the game on the application in either real-time mode, near-real-time mode, or offline mode. In this example, the online game (or online application in general) is a multiplayer gaming environment. Here, the online game can incorporate multiple users, whereby each user is selected to participate in the same game session of the online game according to some defined parameters, so as to have a highly competitive experience in the online game regardless of latency in the gaming environment.

[0022] Throughout this disclosure, the term "user" as used herein relates to a person (i.e., a human being) who uses a computing device to access an online game and perform user-specific actions in the game.

[0023] It will be appreciated that the teachings of the present disclosure may be applied to any data communication environment involving multiple client devices accessing other servers and / or client devices in a data communication environment where similar parameters or characteristics are required for interaction between the applications. An example of such an application is an online game. Accordingly, one embodiment of the present invention will be described below with reference to an online game. However, it will be apparent that the application of the present invention is not limited to online games.

[0024] For purposes of this disclosure, an exemplary network environment will be considered in which an online game management device communicates with a set of client devices participating in the online game via a communications network. The device and the set of client devices may be connected to the communications network via communications links. Throughout this disclosure, the term "communications network" refers to an arrangement of interconnected programmable and / or non-programmable components, whether available or known at the time of filing or later developed, configured to facilitate data communication between one or more electronic devices and / or databases. Furthermore, a communications network may include, but is not limited to, one or more peer-to-peer networks, hybrid peer-to-peer networks, etc. Here, a communications network may be a collection of individual networks connected together and functioning as a single larger network. Such individual networks may be wired, wireless, or a combination thereof. Examples of such individual networks include, but are not limited to, local area networks (LANs), wide area networks (WANs), metropolitan area networks (MANs), wireless LANs (WLANs), wireless WANs (WWANs), wireless MANs (WMANs), the Internet, second-generation (2G) mobile communication networks, third-generation (3G) mobile communication networks, fourth-generation (4G) mobile communication networks, and Worldwide Interoperability for Microwave Access (WiMAX) networks. Additionally or alternatively, computing devices may use their own Bluetooth® networks and connect to Bluetooth® servers to synchronize with other electronic devices. In some embodiments, the communication links of the network may be of various types, including hardwired links, optical links, satellite or other wireless communication links, wave propagation links, or any other mechanism for communicating information.

[0025] It will be appreciated that the network environment may be implemented in various ways depending on various possible scenarios. As an example scenario, the network environment may be implemented by a spatially arranged arrangement of a device, or a system, device, and a set of client devices, each including a processor and memory. In particular, the device is configured to manage a set of client devices in an online game. It will be appreciated that a server (described in more detail below) is configured to host the online game. In one or more embodiments, the device comprises a game server, where the game server is configured to host the online game for a plurality of users associated with the set of client devices. The present disclosure further provides a management system for an online game, where the online game is hosted by the server. In such a scenario, each of the set of client devices is communicatively connected to both the server and the device. In particular, the server is configured to host the online game, and the device is configured to manage the set of client devices participating in the online game. In another example scenario, the network environment may be implemented by a spatially distributed arrangement of a device, each including a processor and memory, and a set of client devices communicating via a communication network. In yet another example scenario, the device including the processor and memory may be implemented via a cloud server.

[0026] Throughout this disclosure, the term "client device," as used in "set of client devices" or "client device set," "group of client devices" or "client device group," "subgroup of client devices" or "client device subgroup," refers to an electronic device associated with (or used by) a user that may enable the user to perform specific tasks associated with an application portal. Furthermore, the term "client device" is intended to be broadly interpreted to include any electronic device that may be used for voice and / or data communications over a wireless communications network. Client devices may include, but are not limited to, mobile phones, smartphones, mobile internet devices (MIDs), tablet computers, ultra-mobile personal computers (UMPCs), phablet computers, personal digital assistants (PDAs), web pads, personal computers (PCs), handheld PCs, laptops, desktop computers, network-attached storage (NAS) devices, large touchscreen PCs, gaming consoles (e.g., Sony PlayStation2®, Microsoft X-Box®, Nintendo GameCube®, etc.), television (TV) sets, set-top boxes (STBs), interactive entertainment devices such as video slot machines, video poker machines, kiosks, and personal casino devices, which typically include many or all of the above elements of a client device. Furthermore, the term "client device" may include other suitable client devices or platforms capable of participating in online games provided by a server. A set of client devices may interface with a server directly or indirectly via a communications network.Client devices typically execute programs that enable their users to access, process, and view information provided by servers and other systems over the Internet. Examples of such programs include browsers (e.g., Microsoft's Internet Explorer, Netscape Navigator), user interface programs, game interfaces, etc.

[0027] In some embodiments, client devices also typically include input and output devices. Input devices allow a user to interact with the client device and may include a keyboard, a mouse, a touchscreen, a pointing device such as a pen, a joystick, various game controllers (e.g., controllers for various game consoles, steering wheels, accelerator pedals, etc.). A user of a client device may use one or more input devices to interact with an online game provided by a game application and hosted by a server. Output devices may include a monitor, speakers for audio feedback, etc. Video, audio, images, and other types of information provided by an online game may be output to the user using one or more output devices.

[0028] As previously mentioned, the device includes a processor and memory. Throughout this disclosure, the term "processor," as used herein, refers to a computing element operable to respond to and process instructions that drive the device. In some embodiments, a processor includes, but is not limited to, a microprocessor, a microcontroller, a Complex Instruction Set Computing (CISC) microprocessor, a Reduced Instruction Set Computing (RISC) microprocessor, a Very Long Instruction Word (VLIW) microprocessor, or any other type of processing circuit. Furthermore, the term "processor" may refer to one or more individual processors, processing units, and various elements associated with a processing unit that may be shared with other processing units. Furthermore, one or more individual processors, processing units, and elements may be arranged in a variety of architectures to respond to and process instructions that drive the device.

[0029] Throughout this disclosure, the term "memory" as used herein refers to a volatile or persistent medium, such as an electrical circuit, a magnetic disk, a virtual memory, or an optical disk, on which a computer can store data or software for any period of time. In some embodiments, the memory is a non-volatile mass storage device, such as a physical storage medium. Furthermore, in distributed device scenarios, the memory may be distributed, where the memory is configured to store a set of instructions that, when executed by a processor, are configured to cause the processor to perform one or more functions, such as those described above.

[0030] The processor is configured to identify a set of client devices participating in an online game. The set of client devices are communicatively connected to the apparatus. In particular, the processor is configured to identify an execution state of each of the client devices to identify the set of client devices. In one example, the processor identifies client devices connected to the apparatus in real time or near real time by determining active communication links between the client devices and a server, thereby determining that the client devices are ready to participate in the online game. In another example, the processor identifies multiple client devices as the set of client devices ready to participate in the online game by determining that the set of client devices are logged in to a game account associated with the user of the device. In particular, the processor determines the execution state of the client device before the user of the client device participates in the online game.

[0031] Further, the processor is configured to identify one or more game parameters associated with each of the client devices in the set of client devices. In particular, a player associated with each client terminal may control one or more game characters or objects in an online game. The term "game character" may refer to an animated character or avatar in an online game controlled by a player participating in the game. A game character may possess different abilities that enable it to perform various actions used to achieve goals in the online game. It is understood that each player has different expertise for playing the game, such as control of a game character, which may be quantified by one or more game parameters associated with each of the client devices. The one or more game parameters determine the level of each player compared to one another based on a common parameter.

[0032] In some embodiments, the one or more game parameters include one or more of: a skill level of a player associated with the client device; a cumulative playing time of a player associated with the client device; a resource level of a player character associated with the client device; and resources available to an account associated with the client device.

[0033] In one example, the identified game parameter may be a skill level of a player associated with the client device. The player's skill level is a measure of the player's efficiency with respect to actions taken within an online game over a period of time. In particular, the player's skill level may be measured and / or quantified by one or more actions taken by the player, such as accuracy in executing actions such as a headshot in a war game or a sharp turn in a racing game, decision-making skills such as resource management in a strategy game or a stakes game, highest rewards collected in an online game, or highest game level achieved in an online game.

[0034] In another example, the identified game parameter is the cumulative play time of a player associated with a client device. It will be appreciated that the cumulative play time of a player associated with a client device corresponds to the player's skill level in the game. In such an example, the player's cumulative play time may be divided based on one or more thresholds, such as less than 1 hour, between 1 and 10 hours, between 10 and 50 hours, between 50 and 100 hours, or more than 100 hours. Correspondingly, players who have played the game for less than 1 hour since installing or purchasing it may be grouped together, while players who have played the game for between 1 and 10 hours (e.g., 2.5 hours, 6 hours, etc.) may be grouped together. As an example, a player's cumulative play time may be associated with a player ranking system. In such an example, players who have played the game for less than 1 hour may be associated with a "beginner" rank, while players who have played the game for between 1 and 10 hours may be associated with a "novice" rank. Similarly, players who have played between 10 and 50 hours could be associated with the "Intermediate" rank, players who have played between 50 and 100 hours could be associated with the "Advanced" rank, and players who have played over 100 hours could be associated with the "Master" rank.

[0035] In yet another example, the identified game parameter is a resource level of a player character associated with the client device. As used herein, the term "resource level" may relate to any collectible "resources" gathered by a player character as the player plays the game and correspondingly progresses through different levels of the game. For example, such resources may include the amount of experience (or XP points) gathered by the player character, the amount of in-game currency acquired by the player character by completing various in-game objectives presented to the player character, one or more "unlockables" acquired by the player character by progressing through the game (one or more character skins, weapon skins, voice lines, emotes, etc.), etc. In such an example, players having comparable resource levels may be grouped together; for example, players associated with player characters having 0-1000 XP points may be grouped together, players associated with player characters having 1000-5000 XP points may be grouped together, and players having 0-100 points of accumulated in-game currency may be grouped together.

[0036] In yet another example, the identified game parameter is resources available to an account associated with the client device. It will be appreciated that various games allow players to interact with the game through one or more actions performed outside the game. For example, a game may be a free-to-play game (i.e., an “F2P game”) in which a player can access premium features, such as access to one or more characters, character abilities, gameplay features, rounds, etc., by paying a premium fee associated with the premium feature. Accordingly, a player who has not paid the premium fee associated with the premium feature will not be able to utilize the premium feature. It will be appreciated that pitting such a player against a player who has paid the premium fee would put the player at a disadvantage, resulting in a degraded gameplay experience for the player. Accordingly, players whose available resources in their accounts correspond to the payment of premium fees corresponding to one or more premium features are grouped together. For example, a player who has paid a premium fee to unlock one or more downloadable content associated with a game (e.g., a new player character, additional levels, story expansions, etc.) may be able to play the game with other players who have unlocked the content.

[0037] The processor is further configured to define at least one client device group from the set of client devices. Here, the at least one client device group includes a plurality of client devices having similar game parameters. In particular, the at least one client device group is defined based on similar game parameters held by one or more players associated with the client devices. "Similar" means defining players whose values ​​corresponding to one or more parameters are within a quantitative range of ±5% to ±20%. It will be appreciated that different types of online games may define one or more players associated with corresponding client devices as being similar to one another within different ranges. As an example, if the parameter values ​​of a first player and a second player are within 5% of each other, the players are considered to be similar based on the game parameters. In this case, the first player and the second player are assigned to the same group.

[0038] In some embodiments, multiple groups may be defined based on similar game parameters, such as those described above. As an example, six players (i.e., a first player, a second player, a third player, a fourth player, a fifth player, and a sixth player) associated with each client device have different skill levels. Here, the first player's skill level is 2, the second player's skill level is 14, the third player's skill level is 3, the fourth player's skill level is 16, the fifth player's skill level is 7, and the sixth player's skill level is 20. Specifically, the first player, the third player, and the fifth player have similar skill levels, and the second player, the fourth player, and the sixth player have similar skill levels. Thus, the first player, the third player, and the fifth player are sorted into a first group, and the second player, the fourth player, and the sixth player are sorted into a second group. The examples described herein are for illustrative purposes only. However, it will be appreciated that the processor is configured to efficiently identify hundreds of game parameters and, accordingly, define groups of hundreds of client devices based on similar game parameters.

[0039] Beneficially, in such a manner, one or more players associated with client devices in the set of client devices may be grouped into groups of client devices having similar game parameters, respectively.

[0040] Further, the processor is configured to determine communication latency between each of the client devices in at least one client device group and the server. In some embodiments, the server is a game server and is configured to host multiple game applications in an online game. Throughout this disclosure, the term "server" refers to a structure and / or module including programmable and / or non-programmable components configured to store, process, and / or share information. In some embodiments, a server includes any configuration of physical or virtual computing entities capable of aggregating information to perform various computational tasks. It will be understood further that the server may be a single hardware server and / or multiple hardware servers operating in a parallel or distributed architecture. By way of example, a server may include components such as memory, a processor, a network adapter, etc., to store, process, and / or share information with other computing components, such as client devices. In some embodiments, the server is an online game server, where the server is configured to host an online game, thereby providing multiple game applications accessible via client devices. In this regard, the server may have a distributed architecture, such as including a first game server and a second game server located in different geographic locations.

[0041] Throughout this disclosure, the term "communication latency" (also referred to as "latency") refers to the time it takes for a signal to travel to and from a server. In particular, communication latency depends on the speed of the transmission medium (e.g., copper wire, fiber optics, radio waves) and the transmission delays caused by intervening devices (e.g., routers and modems) between the server and the communication medium. Shorter latency indicates higher network efficiency. Communication latency is an important consideration, especially in real-time gaming systems that require instantaneous responses. Here, long latency (also referred to as "lag") can make it difficult to determine which player took an action first (e.g., shooting an opponent, answering a question, etc.). It should be understood that the communication latency that a user is satisfied with varies depending on the type of game and the user's skill level. For example, a latency of 100 ms may be acceptable for slow casual games such as backgammon or slow-action role-playing games, but a latency of more than 70 ms or 80 ms is unacceptable for fast-action games, as it may impair the user's game performance. For example, in games that require high reaction speed, it has been found that accuracy drops sharply when latency increases from 50 ms to 100 ms. It will be understood that such communication latency can be caused by transmission loss, the time required for compression, the time required for adjusting the frame rate, etc.

[0042] In some embodiments, communication latency can be determined by sending control signals from each client device to a server. In particular, the control signals are time-stamped, and the time required for the test control signals to travel from the corresponding client device to the server can be determined by calculating the time difference between the timestamps at the server and the client device. In particular, latency can be caused by a variety of predictable and unpredictable reasons in a network environment. Therefore, the determination of communication latency depends in part on the cause of the communication latency. Furthermore, in any embodiment, communication latency can be determined using statistical methods. As an example, the average latency to the server can be used as a latency value for clients whose latency has not been determined. It should be understood that communication latency can be determined by various methods and systems for determining communication latency known in the art.

[0043] In some embodiments, the processor is configured to share a pair of encryption keys between each of the client devices of at least one client device group and the server to securely determine communication latency therebetween. The encryption keys are used by the processor to encrypt and decrypt signals transmitted between the server and each of the client devices. Specifically, a first encryption key of the pair of encryption keys is shared with each client device, and a second encryption key of the pair of encryption keys is shared with the server. It will be appreciated that such encryption of signals provides resistance to attack, corruption, or interference by malicious third parties. Specifically, the encryption keys provide access protection rights that define constraints on rights used by the server.

[0044] In one example, the encryption key is either a public key or a private key. The communication latency is determined using symmetric or asymmetric cryptography. As an example, the communication latency is determined using asymmetric cryptography. In such a technique, when a connection is established between a server and a client device, an asymmetric key pair is generated on the client device. This asymmetric key pair typically consists of two dissimilar numeric keys. One key of the key pair is a public key that is generally shared with all users on the network, and the other key is a private key that is kept secret within the client device. The public key of the generated key pair is transmitted to the server and stored there. The client device can then sign specific data (here, a test control signal) with the private key and then transmit the test control signal to the server. The server is configured to verify the authenticity of the client device by decrypting the test control signal with the available public key. The processor then securely determines the communication latency between the server and each of the client devices via a secure communication channel. In particular, by being able to identify in time the transmission times of data packets (i.e., test control signals) from the client device to the server and vice versa, the communication latency can be determined. In particular, a pair of cryptographic keys is used to securely transmit and receive the test control signals. The use of such keys is important to avoid situations where a user tries to change the communication latency of the terminal, thereby delaying a message regarding the latency determination. A user may do so initially in a group with a long latency, with the intention of taking advantage of the fact that they actually have a short latency to beat other users.

[0045] Further optionally, the processor is configured to establish a User Datagram Protocol (UDP) connection to determine a communication latency between each of the client devices of the at least one client device group and the server. It will be appreciated that UDP operates on top of the Internet Protocol. In particular, UDP establishes a low-latency, loss-tolerant connection between the server and each of the client devices, and reliably transmits signals therebetween. As such, the UDP connection ensures a short delay (or time interval) for the propagation of data packets between the server and each of the client devices. In this regard, the processor is operable to determine a communication latency between the server and each of the client devices to ensure desired propagation of data packets, particularly signals, to and from the server.

[0046] The processor is further configured to define at least one client device subgroup from each of the at least one client device group. Here, the at least one client device subgroup includes a plurality of client devices having similar communication latencies. In particular, the at least one client device subgroup is defined based on similar communication latencies between each of the plurality of client devices included in the group and the server. "Similar" means defining a communication latency between the client device and the server within a range of ±5% to ±20%. It will be understood that different types of network environments may define different ranges for the client devices included in the group as similar. For example, if the latency values ​​of a first player and a second player are within 5% of each other, the players are considered similar based on communication latencies. In this case, the first player and the second player are assigned to the same subgroup.

[0047] In some embodiments, multiple subgroups can be defined based on similar communication latencies as described above. As an example, a group of client devices (i.e., a first client device, a second client device, a third client device, a fourth client device, a fifth client device, and a sixth client device) have different communication latencies. For example, the communication latency of the first client device is 100 milliseconds (ms), the communication latency of the second client device is 85 milliseconds (ms), the communication latency of the third client device is 113 milliseconds (ms), the communication latency of the fourth client device is 78 milliseconds (ms), the communication latency of the fifth client device is 127 milliseconds (ms), and the communication latency of the sixth client device is 90 milliseconds (ms). In particular, the first client device, the third client device, and the fifth client device have similar communication latencies, and the communication latency of the second client device, the fourth client device, and the sixth client device have similar communication latencies. Thus, the first client device, the third client device, and the fifth client device are assigned to a first subgroup, and the second client device, the fourth client device, and the sixth client device are assigned to a second subgroup. The examples described herein are for illustrative purposes only. However, it will be appreciated that the processor is configured to efficiently determine communication latencies of the client devices in each of the at least one client device group and, accordingly, define multiple subgroups based on similar communication latencies. Advantageously, the resulting subgroups have similar game parameters and communication latencies.

[0048] In some embodiments, the processor is configured to define at least one client device subgroup. The processor is configured to measure a first latency value associated with communication between a first client device of the at least one client device group and the server. The processor is further configured to measure a second latency value associated with communication between a second client device of the at least one client device group and the server. As described above, the first and second latency values ​​can be determined by transmitting test control signals from the first client device to the server and from the second client device to the server, respectively. Furthermore, to securely determine communication latency, the first and second latency values ​​can be determined by sharing a pair of encryption keys.

[0049] In a first example, the first communication latency value may be determined to be 200 ms and the second communication latency value may be determined to be 150 ms. In a second example, the first latency value may be determined to be 200 ms and the second latency value may be determined to be 78 ms, and the processor is further configured to calculate a difference between the first latency value and the second latency value. In the first example, the difference between the first latency value and the second latency value is calculated to be 50 ms. In the second example, the difference between the first latency value and the second latency value is calculated to be 122 ms. The processor is further configured to allocate the first client device and the second client device to the same subgroup of client devices if the calculated difference is below a predetermined threshold. The processor is further configured to allocate the first client device and the second client device to different subgroups of client devices if the calculated difference is above a predetermined threshold. Here, the predetermined threshold is a latency value below which a group of client devices is assigned to the same subgroup and above which a group of client devices is assigned to a different subgroup. In the above example, the predetermined threshold is assumed to be 60 ms. In the first example, the calculated difference is 50 ms, which is below the predetermined threshold, so the first client device and the second client device are assigned to the same subgroup of client devices. In the second example, the calculated difference is 112 ms, so the first client device and the second client device are assigned to different subgroups of client devices.

[0050] In an exemplary implementation, the set of client devices is divided into two groups and five subgroups based on game parameters and communication latency, as described in connection with Table 1.

[0051] [Table 1]

[0052] As can be seen from the table, there are 10 players with unique identifiers. Here, the 10 players are divided into two groups, "Group 1" and "Group 2," based on their skill level. Players with player IDs 1, 2, 7, 8, and 9 are experts and therefore belong to "Group 1," while players with player IDs 3, 4, 5, 6, and 10 are not experts and therefore belong to "Group 2."

[0053] "Group 1" and "Group 2" are further divided into five subgroups based on communication latency values. Players in "Group 1" with similar communication latency values, i.e., player IDs 1, 2, and 7, are assigned to subgroup "A." Players in "Group 2" with similar communication latency values, i.e., player IDs 3 and 6, are assigned to subgroup "B." Players in "Group 2" with similar communication latency values, i.e., player IDs 4 and 5, are assigned to subgroup "C." Players in "Group 1" with similar communication latency values, i.e., player IDs 8 and 9, are assigned to subgroup "D." Player ID 10 is placed alone in subgroup "E" because it would be unfair to play him against players of his skill level based on his communication latency value.

[0054] In some embodiments, a player with player ID 10 is associated with subgroup "A," i.e., a subgroup of better players. Player 10 can be placed in that group because the low latency compensates for any lack of skill, i.e., the game experience is not compromised. In another embodiment, player 10 is associated with group "A," but a delay module (described in more detail below) is added to the device and / or game server. In this case, latency can be introduced for players in subgroup "A" to accommodate player ID 10. In yet another embodiment, a player with player ID 7 can be assigned to group E. In this way, a skilled player with player ID 7 can be matched up against a less skilled player with player ID 10, but the difference in latency compensates, resulting in a better game experience.

[0055] An optional arrangement for a player for whom a latency value has not been measured or determined is to use the average latency value of other players associated with the same server that the player is using, which is beneficial as it reduces the need to measure latency values ​​for every player.

[0056] Further, the processor is configured to enable client devices of at least one client device subgroup to participate in a game session of the online game. In particular, the processor instructs client devices associated with a particular subgroup to participate in the same game session of the online game. This allows for more accurate allocation of client devices, taking into account communication latency, user skill sets, and the like. In particular, the online game is played in different sessions, with each level of the online game being a game session, for example. Here, client devices of each subgroup participate in the same game session so that players associated with the client devices have a fair game experience. For example, a first player and a second player associated with client devices of the same subgroup can compete against each other in the same game session, providing users with a competitive game experience. In another example, a first player and a second player can play against each other as a team in the same game session, providing players with an enhanced user experience.

[0057] According to one embodiment, the processor is further configured to reallocate the client devices to different subgroups in response to changes in game parameters or changes in their communication latency. It will be appreciated that the game parameters of each client device and / or the communication latency between each of the client devices and the server are dynamic entities, i.e., these values ​​may change over a period of time. To this end, the processor further comprises an adjustment module configured to continuously monitor each of the game parameters and communication latencies (hereinafter collectively referred to as "entities") associated with each of the client devices and to redefine the groups and subgroups based on changed entities. This technical effect allows for maintaining a good user experience even under changing communication conditions. For example, communication latency may change due to network load or mobile terminal movement.

[0058] In some embodiments, the processor is configured to store in memory a structured list of each client device connected to the server in real time and / or over a period of time. Furthermore, each client device may have a unique identification value associated with the corresponding client device in the list, which is then stored in memory. In particular, game parameters associated with each client device, communication latencies associated with each client device, and groups and subgroups to which the client device is associated are stored in memory. An adjustment module of the processor is configured to access the structured list and continually update the list accordingly in real time or near real time. Furthermore, the processor is configured to reallocate one or more client devices based on the changed game parameters and communication latencies of one or more client devices. It will be appreciated that such techniques can ensure a fair experience for players, even in dynamic environments, i.e., environments where online gaming entities are constantly changing.

[0059] In some embodiments, the processor is configured to associate a first subgroup of at least one client device group with a first game server and a second subgroup of at least one client device group with a second game server. In particular, as described above, the servers may be game servers, and the architecture may be distributed such that different game servers are located in different locations. As an example, the first game server may be located at a first location and the second game server may be located at a second location. Here, the processor is configured to associate the first subgroup of client devices with the first game server and the second subgroup of client devices with the second game server. It will be appreciated that such an apparatus allows client devices assigned to the same subgroup to share a common access point, thereby maintaining communication latency for each of the client devices in the subgroup. In some embodiments, the processor is further configured to enable client devices in the first subgroup of client devices to participate in the same game session with the associated first game server. Furthermore, the processor is further configured to enable client devices in the second subgroup of client devices to participate in the same game session with the associated second game server.

[0060] In one or more embodiments, the processor is further configured to reallocate client devices from the first game server to the second game server and vice versa, i.e., according to embodiments, if there are no viable client devices associated with a particular subgroup of the first set of subgroups associated with the first game server, the user may be rerouted to another server where a match can be played in the subgroup associated with the reallocated game server.

[0061] According to one embodiment, the processor is further configured to associate a delay module with one or more client devices in at least one client device subgroup to create substantially identical communication latency between the client devices of the at least one client device subgroup and the server. Throughout this disclosure, the term "delay module" refers to a collection or set of instructions executable by the processor to configure the processor to create a delay in one or more signals received from the server and subsequently routed to the client device, and vice versa. Furthermore, the term "delay module" may refer to programmable and / or non-programmable electronic equipment configured to create a delay in communications between the client device and / or the server.

[0062] In this regard, upon determining the communication latency between the server and each of the client devices, the processor associates an appropriate delay module with one or more client devices in at least one client device subgroup. In some embodiments, the delay module is configured to extend the communication latency between one or more client devices in at least one client device subgroup and the server to create substantially identical communication latencies. In particular, the delay module ensures that the communication latency between each of the client devices and the server is substantially identical. Therefore, each of the client devices receives data packets at substantially the same time. In this manner, the same time of receiving data packets from the server ensures that users associated with each of the client devices have a similar experience, thereby preventing any lag in user actions and providing a better user experience. One way to add a delay is to configure a router to delay packet relay between the device and the server. The delay can be applied to the received communication package on the server side, or to the application by delaying instructions depending on the application's environment.

[0063] As described above, the present disclosure also provides a system for managing an online game, the system comprising: a server; and an apparatus. The server is communicatively connected to a set of client devices. The apparatus is communicatively connected to the server and the set of client devices. The apparatus is configured to: identify a set of client devices communicatively connected to the apparatus that are participating in an online game; identify one or more game parameters associated with each of the client devices in the set; define at least one group of client devices from the set; determine a communication latency between each of the client devices in the at least one group and a server; define at least one subgroup of client devices from each of the at least one group; and enable the client devices in the at least one subgroup to participate in a game session of the online game, wherein the at least one group includes a plurality of client devices having similar game parameters, and the at least one subgroup includes a plurality of client devices having similar communication latency.

[0064] The embodiments and details disclosed above are also applied mutatis mutandis to this online game management system.

[0065] As mentioned above, the present disclosure also provides a method for managing an online game, and the above-disclosed embodiments and contents are also applied mutatis mutandis to the method for managing an online game.

[0066] In some embodiments, the game parameters include one or more of: a skill level of a player associated with the client device; a cumulative playing time of a player associated with the client device; a resource level of a player character associated with the client device; and resources available to an account associated with the client device.

[0067] In some embodiments, the method for defining at least one subgroup comprises: Measuring a first latency value associated with communication between a first client device of the at least one group of client devices and a server; Measuring a second latency value associated with communication between a second client device of the at least one group of client devices and the server; calculating a difference between the first latency value and the second latency value; a first client device and a second client device; to the same subgroup of client devices if the calculated difference is below a predetermined threshold, or If the calculated difference is above a predefined threshold, Allocating and Includes.

[0068] In some embodiments, the method further comprises reassigning client devices to different subgroups in response to changes in game parameters or changes in their communication latency.

[0069] In some embodiments, the method further includes associating a first subgroup of the at least one client device group with the first server and associating a second subgroup of the at least one client device group with the second server.

[0070] In some embodiments, the method further comprises: enabling client devices of a first subgroup of client devices to participate in the same game session with an associated first server; enabling client devices of a second subgroup of client devices to participate in the same game session with an associated second server; Further includes:

[0071] In some embodiments, the method further includes sharing a pair of cryptographic keys between each of the client devices of the at least one client device group and the server for securely determining communication latency therebetween.

[0072] In some embodiments, the method further includes establishing a User Datagram Protocol (UDP) connection to determine communication latency between each of the client devices of the at least one client device group and the server.

[0073] In some embodiments, the method further includes creating substantially identical communication latencies between the client devices of at least one sub-group of client devices and the server.

[0074] In some embodiments, the method further includes increasing a communication latency between one or more client devices in at least one client device subgroup and the server to produce substantially the same communication latency.

[0075] 1, there is shown a block schematic diagram of a network environment 100 according to one embodiment of the present disclosure. The network environment 100 comprises an apparatus 102 comprising a processor 104 and a memory 106, game servers such as a first game server 108 and a second game server 110, and client devices such as a first client device 112, a second client device 114, a third client device 116, and a fourth client device 118. The system further comprises a communication network 101 over which communication between all of the aforementioned entities occurs.

[0076] It will be understood that Figure 1 is merely an example and should not unduly limit the scope of the claims herein. It will be understood that the particular designation of the online game management device 102 is provided by way of example and is not intended to limit the device 102 to a particular number, type, or arrangement of processor 104, memory 106, server 120 including game servers such as first game server 108 and second game server 110, client devices such as first client device 112, second client device 114, third client device 116, and fourth client device 118, and communications network 101. Those skilled in the art will recognize many variations, alternatives, and modifications of the disclosed embodiments. Server 120 is illustrated as a distributed server in that first game server 108 and second game server 110 are located in different geographic locations but are logically part of the same server.

[0077] Referring to FIG. 2, a flowchart 200 illustrating steps for defining at least one client device subgroup according to one embodiment of the present disclosure is illustrated. In step 202, a first latency value associated with communication between a first client device of the at least one client device group and a server is measured. In step 204, a second latency value associated with communication between a second client device of the at least one client device group and the server is measured. In step 206, a difference between the first latency value and the second latency value is calculated. In step 208, it is determined whether the calculated difference is below a predetermined threshold. If the calculated difference is below the predetermined threshold, proceed to "Y". If the calculated difference is above the predetermined threshold, proceed to "N". If proceeding to "Y", step 210 is executed, in which the first client device and the second client device are assigned to the same subgroup of client devices. If proceeding towards "N", step 212 is performed in which the first client device and the second client device are assigned to different subgroups of client devices.

[0078] Referring to FIG. 3, a flowchart illustrating steps of a method for managing an online game according to one embodiment of the present disclosure is illustrated. In step 302, a set of client devices participating in an online game is identified. In step 304, one or more game parameters associated with each of the client devices in the set are identified. In step 306, at least one client device group is defined from the set of client devices, where the at least one client device group includes a plurality of client devices having similar game parameters. In step 308, a communication latency between each of the client devices in the at least one client device group and a server is determined. In step 310, at least one client device subgroup is defined from each of the at least one client device group, where the at least one client device subgroup includes a plurality of client devices having similar communication latency. In step 312, client devices in the at least one client device subgroup are enabled to participate in a game session of the online game.

[0079] The embodiments of the present disclosure described above can be modified without departing from the scope of the disclosure, which is defined in the appended claims. The terms "including," "comprising," "incorporating," "having," "being," and the like, as used to describe and claim the present disclosure, are intended to be interpreted in a non-exclusive manner, i.e., allowing for the presence of items, components, or elements not expressly described. Also, reference to the singular is to be interpreted as referring to the plural as well.

[0080] The inventions specified in the scope of the claims of the original application of this application (Patent Application No. 2022-567029) as originally filed are as follows: [Invention 1] An apparatus for managing an online game, comprising: a processor and a memory, the processor Identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; identifying one or more game parameters associated with each of the client devices in the set; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of the at least one group, wherein the at least one subgroup includes a plurality of client devices having similar communication latency; enabling the at least one subgroup of client devices to participate in a game session of the online game. The apparatus is configured to: [Invention 2] The device of invention 1, wherein the game parameters include one or more of the skill level of a player associated with the client device, the cumulative playing time of a player associated with the client device, the resource level of a player character associated with the client device, and the resources available to an account associated with the client device. [Invention 3] The processor: measuring a first latency value associated with communication between a first client device of the at least one group and the server; measuring a second latency value associated with communication between a second client device of the at least one group and the server; calculating a difference between the first latency value and the second latency value; the first client device and the second client device; to the same subgroup of client devices if the calculated difference is below a predetermined threshold; or If the calculated difference is greater than the predetermined threshold, Allocating and 3. The apparatus according to claim 1 or 2, wherein the apparatus is configured to define the at least one subgroup by: [Invention 4] The apparatus of claim 3, wherein the processor is further configured to reallocate client devices to different subgroups in response to a change in the game parameters or a change in their communication latency. [Invention 5] 5. The apparatus of any one of claims 1 to 4, wherein the processor is configured to associate a first subgroup of the at least one group with a first game server and to associate a second subgroup of the at least one group with a second game server. [Invention 6] The processor further comprises: enabling client devices of the first sub-group of client devices to participate in the same game session with the associated first game server; enabling client devices of the second sub-group of client devices to participate in the same game session with the associated second game server; The device according to claim 5, wherein the device is configured as follows: [Invention 7] The apparatus of any one of inventions 1 to 6, wherein the processor is configured to share a pair of cryptographic keys between each of the client devices of the at least one group and the server to securely determine communication latency therebetween. [Invention 8] The apparatus of any one of inventions 1 to 7, wherein the processor is configured to establish a User Datagram Protocol (UDP) connection to determine communication latency between each of the client devices of the at least one group and the server. [Invention 9] The apparatus of any one of inventions 1 to 8, wherein the processor is further configured to associate a delay module with one or more client devices in the at least one subgroup to create substantially identical communication latency between the client devices of the at least one subgroup and the server. [Invention 10] 10. The apparatus of claim 9, wherein the delay module is configured to extend the communication latency between one or more client devices of the at least one subgroup and the server to form substantially identical communication latency. [Invention 11] An apparatus according to any one of inventions 1 to 10, wherein the server is a multiplayer game server. [Invention 12] 12. The device according to any one of claims 1 to 11, wherein the device comprises a game server. [Invention 13] A method for managing an online game, comprising: Identifying a set of client devices participating in an online game; and identifying one or more game parameters associated with each of the set of client devices; defining at least one group of client devices from said set; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of said at least one group; enabling the at least one sub-group of client devices to participate in a game session of the online game; Including, the at least one group includes a plurality of client devices having similar game parameters; the at least one subgroup includes a plurality of client devices having similar communication latencies; method. [Invention 14] The method of claim 13, wherein the game parameters include one or more of the skill level of a player associated with the client device, the cumulative playing time of a player associated with the client device, the resource level of a player character associated with the client device, and the resources available to an account associated with the client device. [Invention 15] Defining the at least one subgroup comprises: measuring a first latency value associated with communication between a first client device of the at least one group and the server; measuring a second latency value associated with communication between a second client device of the at least one group and the server; calculating a difference between the first latency value and the second latency value; the first client device and the second client device; to the same subgroup of client devices if the calculated difference is below a predetermined threshold; or If the calculated difference is greater than the predetermined threshold, Allocating and 15. The method according to claim 13 or 14, comprising: [Invention 16] 16. The method of claim 15, further comprising reallocating client devices to different subgroups in response to changes in said game parameters or changes in their communication latency. [Invention 17] 17. The method of any of inventions 13 to 16, further comprising associating a first subgroup of said at least one group with a first server and associating a second subgroup of said at least one group with a second server. [Invention 18] enabling client devices of the first sub-group of client devices to participate in the same game session with the associated first server; enabling client devices of the second sub-group of client devices to participate in the same game session with the associated second server; 18. The method of claim 17, further comprising: [Invention 19] 19. A method according to any one of claims 13 to 18, further comprising sharing a pair of cryptographic keys between each of the at least one group of client devices and the server for securely determining communication latency therebetween. [Invention 20] 20. The method of any of inventions 13 to 19, further comprising establishing a User Datagram Protocol (UDP) connection to determine communication latency between each of the at least one group of client devices and the server. [Invention 21] 21. The method of any of inventions 13 to 20, further comprising creating substantially identical communication latency between the client devices of said at least one subgroup and said server. [Invention 22] 22. The method of claim 21, further comprising increasing the communication latency between one or more client devices of the at least one subgroup and the server to form substantially the same communication latency. [Invention 23] An online game management system, a server communicatively connected to a set of client devices; an apparatus communicatively connected to the server and the client device; The device comprises: Identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; identifying one or more game parameters associated with each of the set of client devices; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and the server; defining at least one subgroup of client devices from each of the at least one group, wherein the at least one subgroup includes a plurality of client devices having similar communication latencies; enabling the at least one subgroup of client devices to participate in a game session of the online game. The system is configured as follows:

Claims

[Claim 1] An apparatus for managing an online game, comprising: a processor and a memory, the processor identifying a set of client devices communicatively connected to the apparatus that are participating in the online game; Identifying one or more game parameters associated with each of the client devices in the set; defining at least one group of client devices from said set, wherein said at least one group includes a plurality of client devices having similar game parameters; determining a communication latency between each of the at least one group of client devices and a server; defining at least one subgroup of client devices from each of said at least one group, wherein said at least one subgroup includes a plurality of client devices having similar communication latencies; enabling the at least one sub-group of client devices to participate in a game session of the online game. The apparatus is configured to:

Citation Information

Patent Citations

  • Comparison based on degree of proximity between devices

    JP2004328734A

  • Game management program, game management method and game management system

    JP2015139648A