Object matching method and device for virtual game match and storage medium
By combining the player's historical performance and time attributes in virtual game games, object matching is solved, the problem of low object matching accuracy in the existing technology is solved, more accurate player matching is achieved, and the game experience is improved.
Patent Information
- Application Number
- CN202410018533.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-02
- Publication Date
- 2025-07-04
AI Technical Summary
In the object matching method of existing virtual game games, the specific performance and team contribution of players in the game are not fully considered, resulting in low object matching accuracy.
By obtaining the historical performance and time attributes of the candidate object, combining the first participation attribute and the second participation attribute, the player belongs to the game camp to ensure that the object matching conditions are met.
It improves the accuracy of object matching in virtual game games, ensures that players match their personal abilities and team contributions, and improves the fairness and fun of the game.
Smart Images

Figure CN120242494A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computers, and in particular, to an object matching method, device, storage medium and electronic device for virtual game matches. Background Art
[0002] In the object matching scenario of virtual game matches, the historical performance of players is usually used to evaluate the strength of players, and the scores of players are adjusted according to the winning rate of players and the strength of opponents to ensure that players can compete with opponents of similar levels during object matching.
[0003] However, the above method does not consider the specific performance of players in the game, let alone more detailed information such as the input and contribution of players to the team in the game, which leads to the problem of low accuracy in object matching for virtual game matches. Therefore, there is a problem of low accuracy in object matching for virtual game matches.
[0004] In response to the above problems, no effective solution has been proposed yet. Summary of the Invention
[0005] Embodiments of the present application provide an object matching method, device, storage medium and electronic device for virtual game matches, so as to at least solve the technical problem of low accuracy in object matching for virtual game matches.
[0006] According to one aspect of the embodiments of the present application, there is provided a method for object matching in a virtual game session, including: in response to an object matching request, obtaining a set of candidate objects to participate in the virtual game session, where the object matching request is used to request to match N game participating objects for the virtual game session, the game participating objects are game objects participating in the virtual game session, the game participating objects belong to a first game camp or a second game camp in the virtual game session, the set of candidate objects includes M game candidate objects, N is an integer greater than 1, and M is an integer greater than or equal to N; obtaining the game participation attributes corresponding to each game candidate object in the set of candidate objects, where the game participation attributes include a first participation attribute and a second participation attribute, the first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session, and the second participation attribute is the time attribute of the game candidate object participating in the virtual game session, and the time attribute is used to represent the ratio between the critical duration when the game candidate object is active when participating in the virtual game session and the total duration of the game candidate object participating in the virtual game session; combining the first participation attribute and the second participation attribute, assigning the first number of game candidate objects in the set of candidate objects to the first game camp, and assigning the second number of game candidate objects in the set of candidate objects to the second game camp, where the sum of the first number and the second number is equal to N; when the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching conditions, determining the first number of game candidate objects as the game participating objects belonging to the first game camp, and determining the second number of game candidate objects as the game participating objects belonging to the second game camp, where the object matching conditions are set based on the first participation attribute and the second participation attribute.
[0007] According to another aspect of an embodiment of the present application, an object matching device for a virtual game game is also provided, including: a first acquisition unit, used to respond to an object matching request to obtain a set of candidate objects to participate in the virtual game game, wherein the object matching request is used to request matching of N game participating objects for the virtual game game, the game participating objects are game objects participating in the virtual game game, the game participating objects belong to a first game camp or a second game camp in the virtual game game, and the candidate object set includes M game candidate objects, N is an integer greater than 1, and M is an integer greater than or equal to N; a second acquisition unit, used to obtain game participation attributes corresponding to each game candidate object in the candidate object set, wherein the game participation attributes include a first participation attribute and a second participation attribute, the first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game game, the second participation attribute is the time attribute of the game candidate object participating in the virtual game game, and the The time attribute is used to represent the ratio between the critical duration during which the game candidate objects are active when participating in the virtual game game and the total duration during which the game candidate objects participate in the virtual game game; a combining unit is used to combine the first participation attribute and the second participation attribute to assign a first number of game candidate objects in the candidate object set to the first game camp, and assign a second number of game candidate objects in the candidate object set to the second game camp, wherein the sum of the first number and the second number is equal to N; a determining unit is used to determine the first number of game candidate objects as game participating objects belonging to the first game camp, and determine the second number of game candidate objects as game participating objects belonging to the second game camp, when an object matching condition is satisfied between the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp, wherein the object matching condition is set to be based on the first participation attribute and the second participation attribute.
[0008] As an optional scheme, the above-mentioned combination unit includes: an integration module, which is used to integrate the above-mentioned first participation attribute and the above-mentioned second participation attribute to obtain the camp contribution score corresponding to the above-mentioned each game candidate object, wherein the above-mentioned camp contribution score is positively correlated with the contribution degree of the above-mentioned game candidate object to the game camp to which it belongs; an attribution module, which is used to attribute the above-mentioned first number of game candidate objects to the above-mentioned first game camp, and to attributing the above-mentioned second number of game candidate objects to the above-mentioned second game camp according to the above-mentioned camp contribution score.
[0009] As an alternative solution, the above attribution module includes: a sorting sub-module, configured to, when determining N game candidate objects from the above candidate object set, sort the N game candidate objects from high to low according to the above camp contribution scores to obtain a sorted set of game candidate objects; a first determination sub-module, configured to determine a preset allocation line from the above set of game candidate objects, wherein, in the above set of game candidate objects, the difference between the total camp contribution scores corresponding to the game candidate objects before and after the above preset allocation line is less than or equal to a first preset threshold; a second determination sub-module, configured to determine a current candidate object from the above candidate object set according to the above preset allocation line, and obtain the current first total score of the above first game camp and the current second total score of the above second game camp; a first attribution sub-module, configured to attribute the above current candidate object to the above first game camp or the above second game camp, so that the above first total score and the above second total score are close; a third determination sub-module, configured to, when the number of game candidate objects belonging to the above first game camp is less than the above first number, or the number of game candidate objects belonging to the above second game camp is less than the above second number, determine the next candidate object from the above candidate object set according to the above preset allocation line, and use the above next candidate object as the above current candidate object until the above first number of game candidate objects have been attributed to the above first game camp and the above second number of game candidate objects have been attributed to the above second game camp; a fourth determination sub-module, configured to, when the number of game candidate objects belonging to the above first game camp is equal to the above first number and the number of game candidate objects belonging to the above second game camp is equal to the above second number, determine that the above first number of game candidate objects have been attributed to the above first game camp and the above second number of game candidate objects have been attributed to the above second game camp.
[0010] As an alternative solution, the above device further includes: a first acquisition module, configured to acquire the total score of the first game camp corresponding to the first game camp and the total score of the second game camp corresponding to the second game camp before determining that the first number of game candidate objects belong to the game participants of the first game camp and determining that the second number of game candidate objects belong to the game participants of the second game camp, where the total score of the first game camp is the total score of the camp contribution scores corresponding to all game candidate objects belonging to the first game camp, and the total score of the second game camp is the total score of the camp contribution scores corresponding to all game candidate objects belonging to the second game camp; a determination module, configured to determine that the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp satisfy the above object matching condition when the difference between the total score of the first game camp and the total score of the second game camp is less than or equal to a second preset threshold before determining that the first number of game candidate objects belong to the game participants of the first game camp and determining that the second number of game candidate objects belong to the game participants of the second game camp.
[0011] As an alternative solution, the above attribution module includes: a second attribution sub-module, configured to attribute the first number of game candidate objects whose score difference of the camp contribution scores is less than or equal to a fourth preset threshold to the first game camp and attribute the second number of game candidate objects whose score difference of the camp contribution scores is less than or equal to a fourth preset threshold to the second game camp according to the camp contribution scores.
[0012] As an alternative solution, the above second acquisition unit includes: a second acquisition module, configured to acquire the pre-configured in-game positions of the respective game candidate objects when the number of in-game positions allowed to be configured by the game participants in the virtual game session is greater than 1; a third acquisition module, configured to acquire the in-game position attributes corresponding to the respective game candidate objects, where the game participation attributes include the in-game position attributes, the in-game position attributes include the first position attribute and the second position attribute, the first position attribute is the historical performance when the respective game candidate objects configure the in-game positions and participate in the virtual game session, and the second position attribute is the time position attribute when the game candidate objects configure the in-game positions and participate in the virtual game session, and the time position attribute is used to represent the ratio between the key duration when the game candidate objects configure the in-game positions and participate in the virtual game session and are active and the total duration when the game candidate objects configure the in-game positions and participate in the virtual game session.
[0013] As an alternative solution, the above-mentioned third acquisition module includes: a first allocation sub-module, configured to allocate a first weight to the game positioning attribute corresponding to the first candidate object when the first candidate object configures a first game positioning and the number of game rounds participated in the above-mentioned virtual game round is less than or equal to a third preset threshold, where the above-mentioned M game candidate objects include the first candidate object, and the above-mentioned game round positioning includes the first game positioning; a second allocation sub-module, configured to allocate a second weight to the game positioning attribute corresponding to the second candidate object when the second candidate object configures a second game positioning and the number of game rounds participated in the above-mentioned virtual game round is greater than the third preset threshold, where the above-mentioned M game candidate objects include the second candidate object, and the above-mentioned game round positioning includes the second game positioning, and the second weight is greater than the first weight.
[0014] As an alternative solution, the above-mentioned device further includes: an optimization unit, configured to optimize the game participation attributes corresponding to at least two candidate objects in the candidate object set when obtaining the game participation attributes corresponding to each game candidate object in the candidate object set, where at least two candidate objects in the candidate object set are co-teamed, and the game participation attributes corresponding to the at least two candidate objects are obtained.
[0015] According to another aspect of the embodiments of the present application, there is provided a computer program product or a computer program, which includes computer instructions stored in a computer-readable storage medium. The processor of the electronic device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to enable the electronic device to execute the object matching method for the virtual game round as described above.
[0016] According to another aspect of the embodiments of the present application, there is also provided an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the above-mentioned processor executes the object matching method for the virtual game round through the computer program.
[0017] In an embodiment of the present application, in response to an object matching request, a set of candidate objects to participate in a virtual game session is obtained. The object matching request is used to request to match N game participating objects for the virtual game session. The game participating objects are game objects participating in the virtual game session, and the game participating objects belong to a first game camp or a second game camp in the virtual game session. The set of candidate objects includes M game candidate objects, N is an integer greater than 1, and M is an integer greater than or equal to N. The game participation attributes corresponding to each game candidate object in the set of candidate objects are obtained. The game participation attributes include a first participation attribute and a second participation attribute. The first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session. The second participation attribute is the time attribute of the game candidate object participating in the virtual game session. The time attribute is used to represent the ratio between the key duration when the game candidate object is active when participating in the virtual game session and the total duration of the game candidate object participating in the virtual game session. Combining the first participation attribute and the second participation attribute, a first number of game candidate objects in the set of candidate objects are attributed to the first game camp, and a second number of game candidate objects in the set of candidate objects are attributed to the second game camp, where the sum of the first number and the second number is equal to N. When the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching condition, the first number of game candidate objects are determined as game participating objects belonging to the first game camp, and the second number of game candidate objects are determined as game participating objects belonging to the second game camp, where the object matching condition is set based on the first participation attribute and the second participation attribute. In this embodiment, in addition to introducing the first participation attribute (historical performance) in the object matching process, the continuous investment and activity of players in the game are also considered, and further the second participation attribute (time attribute) is introduced into the object matching process. By combining the first participation attribute (historical performance) and the second participation attribute (time attribute), the strength of players and the behavior patterns of players in the game can be evaluated more accurately, which helps to more precisely match players with similar levels. Furthermore, the purpose of introducing more game participation attributes in the object matching process and more comprehensively evaluating the strength and investment degree of players is achieved, thereby realizing the technical effect of improving the object matching accuracy of virtual game sessions, and further solving the technical problem of low object matching accuracy of virtual game sessions. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The drawings described herein are used to provide a further understanding of the present application, and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application, and do not constitute an improper limitation of the present application. In the drawings:
[0019] Figure 1 It is a schematic diagram of an application environment of an optional object matching method for a virtual game session according to an embodiment of the present application;
[0020] Figure 2 It is a schematic diagram of the process of an optional object matching method for a virtual game session according to an embodiment of the present application;
[0021] Figure 3 It is a schematic diagram of an optional object matching method for a virtual game session according to an embodiment of the present application;
[0022] Figure 4 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0023] Figure 5 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0024] Figure 6 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0025] Figure 7 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0026] Figure 8 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0027] Figure 9 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0028] Figure 10 It is a schematic diagram of another optional object matching method for a virtual game session according to an embodiment of the present application;
[0029] Figure 11 It is a schematic diagram of an optional object matching device for a virtual game session according to an embodiment of the present application;
[0030] Figure 12 It is a schematic diagram of the structure of an optional electronic device according to an embodiment of the present application. Detailed implementation manners
[0031] To enable those skilled in the art to better understand the solution of this application, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of this application. Obviously, the described embodiments are only a part of the embodiments of this application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of this application.
[0032] It should be noted that the terms "first", "second", etc. in the description and claims of this application and the above-mentioned accompanying drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances so that the embodiments of this application described here can be implemented in an order different from those illustrated or described here. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0033] According to one aspect of the embodiments of this application, a method for object matching in a virtual game session is provided. Optionally, as an alternative implementation, the above method for object matching in a virtual game session can be but is not limited to being applied to an environment as Figure 1 shown. Among them, it can but is not limited to include a user device 102 and a server 112. The user device 102 can but is not limited to include a display 104, a processor 106, and a memory 108. The server 112 includes a database 114 and a processing engine 116.
[0034] The specific process can be as follows:
[0035] Step S102, the user device 102 obtains an object matching request;
[0036] Step S104, send the object matching request to the server 112 through the network 110;
[0037] Steps S106 - S110, the server 112 responds to the object matching request, obtains a set of candidate objects to participate in the virtual game session from the database 114, and obtains the game participation attributes corresponding to each game candidate object in the set of candidate objects; further, the server 112 combines the first participation attribute and the second participation attribute through the processing engine 116, assigns the first number of game candidate objects in the set of candidate objects to the first game camp, and assigns the second number of game candidate objects in the set of candidate objects to the second game camp, and when the object matching condition is satisfied between the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp, determines the first number of game candidate objects as the game participation objects belonging to the first game camp, and determines the second number of game candidate objects as the game participation objects belonging to the second game camp, to obtain the object matching result;
[0038] Step S112, send the object matching result to the user device 102 through the network 110, and the user device 102 displays the object matching result on the display 104 through the processor 106, and stores the above object matching result in the memory 108.
[0039] In addition to Figure 1 the examples shown, the above terminal device can be a terminal device configured with a target client, and can include but are not limited to at least one of the following: mobile phone (such as Android mobile phone, iOS mobile phone, etc.), laptop computer, tablet computer, palmtop computer, MID (Mobile Internet Devices), PAD, desktop computer, smart TV, etc. The target client can be a video client, instant messaging client, browser client, education client, etc. The above network can include but are not limited to: wired network, wireless network, where the wired network includes: local area network, metropolitan area network and wide area network, and the wireless network includes: Bluetooth, WIFI and other networks that implement wireless communication. The above server can be a single server, or a server cluster composed of multiple servers, or a cloud server. The above is only an example, and this embodiment does not make any limitation thereto.
[0040] Optionally, as an alternative implementation, as Figure 2 shown, the object matching method for the virtual game session can be executed by an electronic device, and the electronic device can be, for example, the user device or the server as Figure 1 shown, and the specific steps include:
[0041] S202. In response to an object matching request, obtain a set of candidate objects to participate in a virtual game session. The object matching request is used to request the matching of N game participating objects for the virtual game session. A game participating object is a game object participating in the virtual game session, and the game participating objects belong to the first game camp or the second game camp in the virtual game session. The set of candidate objects includes M game candidate objects. N is an integer greater than 1, and M is an integer greater than or equal to N.
[0042] S204. Obtain the game participation attributes corresponding to each game candidate object in the set of candidate objects. The game participation attributes include a first participation attribute and a second participation attribute. The first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session. The second participation attribute is the time attribute of the game candidate object participating in the virtual game session. The time attribute is used to represent the ratio between the critical duration when the game candidate object is active during the virtual game session and the total duration of the game candidate object participating in the virtual game session.
[0043] S206. Combine the first participation attribute and the second participation attribute, and assign the first number of game candidate objects in the set of candidate objects to the first game camp, and assign the second number of game candidate objects in the set of candidate objects to the second game camp. The sum of the first number and the second number is equal to N.
[0044] S208. When the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching conditions, determine the first number of game candidate objects as the game participating objects belonging to the first game camp, and determine the second number of game candidate objects as the game participating objects belonging to the second game camp. The object matching conditions are set based on the first participation attribute and the second participation attribute.
[0045] Optionally, in this embodiment, the above object matching method for the virtual game session can be, but is not limited to, applied in a Multiplayer Online Battle Arena (MOBA) scenario. For example, when a player requests to participate in a 5V5 MOBA session, the system (such as a game server or a game client) will first obtain a set of candidate objects to be matched. These candidate objects may be players (game objects) waiting for matching or newly joined players requesting matching.
[0046] Then the system will obtain and analyze multiple attributes of these candidate objects, including the historical performance of the player (such as win rate, kills / eliminations / assists, etc.) as the first participation attribute, and the ratio of the average active duration to the total duration of the player in previous sessions as the second participation attribute.
[0047] Furthermore, based on the above attributes, the system will calculate and determine which players will be assigned to the first game faction and which to the second game faction, with the goal of ensuring that the overall strength of the players in both factions is comparable, while also taking into account the players' activity levels and engagement. After ensuring that the number of players and the overall strength of both factions are similar, the system will further check whether the preset matching conditions are met. These conditions may include whether the average win rate, the proportion of average active time, etc. of both sides are within an acceptable range.
[0048] If the matching conditions are met, the system will notify the selected players that they have been matched to a new 5V5 game and inform them of the game faction they belong to. At the same time, the system will start a new game for the players in both factions.
[0049] In addition, after the game starts, the system can, but is not limited to, conduct real-time detection and adjustment based on the actual performance of the players. If it is found that a certain faction has an obvious advantage or a player quits midway, the system may intervene, such as adjusting the game difficulty, providing certain assistance to the disadvantaged side, etc., to ensure the fairness and competitiveness of the game.
[0050] By applying the above object matching method for virtual game matches, it can be ensured that players can obtain a fair and competitive experience in each match of the MOBA - type virtual game, thereby enhancing the attractiveness of the game and the satisfaction of the players.
[0051] Optionally, in the object matching process of virtual game matches, when a player or the system initiates an object matching request and hopes to match a certain number of game objects for a virtual game match, this embodiment will search for and assemble a candidate object set for subsequent matching, so as to ensure that each virtual game match has a sufficient number of players participating, and the overall strength and characteristics of these players are relatively close, thus guaranteeing the fairness and competitiveness of the game. At the same time, for players, it is more likely to play against opponents of similar levels, enhancing the fun and challenge of the game.
[0052] To further illustrate with examples, optionally, assume there is a 5V5 MOBA game. When 10 players all request to be matched, this embodiment will form a set of candidate objects for these 10 players. All of these 10 players may be selected to participate in this 5V5 game session, but ultimately only 5 of them will be assigned to the first game faction, and the other 5 will be assigned to the second game faction. Or, when 20 players all request to be matched, this embodiment will form a set of candidate objects for these 20 players. 10 of the 20 players may be selected to participate in the 5V5 game session A, and the other 10 of the 20 players may be selected to participate in the 5V5 game session B. And regardless of whether it is game session A or game session B, only 5 of them will be assigned to the first game faction, and the other 5 will be assigned to the second game faction.
[0053] Optionally, in this embodiment, the object matching request can be but is not limited to being sent by the players or the system of a virtual game session, and is a request to find and match players or characters suitable to participate in a certain virtual game session. The object matching request can include but is not limited to some parameters, such as the required number of players, the level range of the players, or other specific attributes, to ensure that the matched players can meet specific game requirements. For example, in a MOBA game, when a player clicks the "Start Matching" button, an object matching request is triggered to match opponents or teams of comparable strength.
[0054] Optionally, in this embodiment, the virtual game session can be but is not limited to one or more competitive matches carried out in an electronic game environment. These matches can be between players or between players and computer AIs. Each virtual game session has corresponding rules, goals, and participation methods. For example, in a MOBA game, a virtual game session may be a 5V5 team competitive match.
[0055] Optionally, in this embodiment, the set of candidate objects can be but is not limited to a subset selected from all available players or characters according to certain screening conditions after receiving the object matching request. The formation of this set can be based on various factors, such as the player's historical win rate, online status, level, geographical location, etc. The system will screen and adjust this set according to the parameters in the object matching request. The set of candidate objects provides a range of options for the system to ensure that the system can find the most suitable players to participate in the current virtual game session.
[0056] Optionally, in this embodiment, in a team-based competitive game, the game factions can, but are not limited to, refer to two or more opposing teams or forces. Each faction has its own players or characters who cooperate together to achieve the game's goals. For example, in a 5V5 MOBA game, there are usually two main game factions: one is the "Blue Side" and the other is the "Red Side". Each faction has 5 players who cooperate to fight against the other faction.
[0057] Optionally, in this embodiment, the game participants can, but are not limited to, refer to the players or characters who actually participate in a virtual game session, and can also be understood as the individuals selected by the system from the candidate object set and assigned to a certain game faction. During the game process, the game participants are the main actors and decision-makers, and their behaviors, strategies, and interactions will affect the progress and outcome of the entire virtual game session. And the game participants can, but are not limited to, come from the previously mentioned candidate object set, and are the players or characters determined to be the most suitable to participate in the current game after being screened and matched by the system.
[0058] Optionally, in this embodiment, when processing the object matching of a virtual game session, the game participation attributes in the candidate object set are obtained and evaluated to provide information about the performance and activity of players or characters in the game, thereby helping to perform more accurate matching. By using these two participation attributes, this embodiment can conduct a more comprehensive and in-depth evaluation of the players or characters in the candidate object set. Among them, the first participation attribute can ensure that the selected players are comparable to other players in terms of personal ability, thus ensuring the competitiveness of the game; while the second participation attribute can ensure that the selected players are active in the game, make a high contribution to the team, and can provide a continuous gaming experience, rather than just entering the game and then idling or not participating. Such a matching mechanism ensures that the selected players not only match in personal ability, but also match in terms of game attitude and team contribution, thereby improving the overall quality of the game and the satisfaction of players.
[0059] Optionally, in this embodiment, the first participation attribute is used to represent the historical performance of game candidate objects when participating in virtual game sessions. It is an indicator used to measure the performance of game candidate objects in past virtual game sessions, and is used to evaluate their personal ability in the game based on the previous game data of the game candidate objects. To ensure the fairness of the matching, by looking at the historical performance of players, for example, the first participation attribute can be the player's historical win rate, KDA (kills / deaths / assists), average economy, rank, or any data that can reflect the player's personal ability and performance.
[0060] Optionally, in this embodiment, the time attribute is used to represent the ratio between the critical duration when the game candidate is active during the virtual game session and the total duration of the virtual game session that the game candidate participates in. It mainly focuses on the active duration of the game candidate in the virtual game session, and is used to measure the ratio of the time when the player is truly active, engaged, and interacts with other players in the game to their total game time. This ensures that the matched players are not only matched in terms of personal ability, but also in terms of game activity and team contribution, which helps to avoid matching players who may idle or not actively participate in the game, thereby improving the overall game experience.
[0061] To further illustrate with an example, optionally, assume that a player A is in a 30-minute online first-person shooter game, and the time when the player A is truly actively participating in combat, cooperation, and strategic decision-making is 25 minutes. Then the time attribute ratio of player A is 25 / 30 = 83%. This means that player A is active for 83% of the game time. If this ratio is very low, then even if the performance data of player A's other game personal abilities are very good, it may mean that player A is not active in the game or has a low contribution to the team.
[0062] Optionally, this embodiment uses the first participation attribute and the second participation attribute to determine which game camp the players or characters in the candidate object set should be assigned to. By combining the first participation attribute and the second participation attribute to assign players to different game camps, this embodiment can ensure that the players in the two camps are relatively matched in terms of personal ability and team contribution. This can not only ensure the fairness of the game, but also improve the overall quality of the game and the satisfaction of the players. Players are more likely to encounter opponents or teammates with similar levels and activity levels as themselves, and such a game experience will be more challenging and interesting.
[0063] To further illustrate with an example, optionally, for example, assume that there is a team cooperation strategy game that needs to match 10 players, with 5 players in a team. This embodiment evaluates these 10 players according to the first participation attribute and the second participation attribute of the players. Finally, this embodiment selects 5 players with similar personal abilities to be grouped into the first game camp, and the other 5 players with similar activity levels and team contributions to be grouped into the second game camp. Or, this embodiment selects the number of players for the first game camp and the second game camp according to personal ability and team contribution respectively to balance the first game camp and the second game camp.
[0064] Optionally, according to the characteristics and requirements of the game, in this embodiment, different weights are assigned to the first participation attribute and the second participation attribute. For example, in some games that focus on personal ability confrontation, the first participation attribute (such as historical win rate) may be given a higher weight; while in games that focus on teamwork and activity, the second participation attribute may be more emphasized. In this embodiment, a comprehensive score is calculated for each game candidate object based on the assigned weights. This score is obtained by weighted summation of the data of the first participation attribute and the second participation attribute. For example, if a player has a high historical win rate and a high proportion of active time, then his comprehensive score will be correspondingly high. According to the comprehensive scores, this embodiment sorts all the game candidate objects. Then, in the order of sorting and the required number of players, players are started to be assigned to two game camps, ensuring that the number of players and the comprehensive scores in each camp are relatively balanced.
[0065] Optionally, under the condition of meeting specific object matching conditions, this embodiment determines the candidate object as the actual game participation object. In this way, this embodiment can ensure that the finally determined game participants are matched in terms of performance and activity, thus providing a fair and balanced game experience for both parties. By setting object matching conditions based on the first participation attribute and the second participation attribute, it is ensured that the game participation objects selected for the two game camps are relatively matched in terms of personal ability and team contribution. This not only improves the fairness of the game but also enhances the player's game experience. Players are more likely to encounter opponents or teammates with similar levels and activity levels as themselves, and such a game experience will be more challenging and interesting. At the same time, this method also helps to maintain the balance of the game and avoid one side having too much of an advantage due to differences in personal ability and team contribution.
[0066] For further illustration, for example, in a strategy card game, there are 10 candidate objects, and 5 game participation objects are matched for each of the two players. Based on the card win rate (the first participation attribute) and the average online duration (the second participation attribute) of each candidate object, this embodiment sets object matching conditions. Further, under the condition of meeting these conditions, 5 candidate objects with high personal ability and team contribution are selected as game participation objects for the first player, and at the same time, 5 corresponding matching objects are also selected for the second player.
[0067] Optionally, in this embodiment, the object matching conditions can, but are not limited to, refer to a series of criteria or rules based on which game participation objects are selected, used to screen candidate objects to ensure that the selected objects meet certain requirements or have corresponding traits in certain aspects. In a game, the object matching conditions are usually related to the player's personal ability and team contribution or other relevant attributes, such as including the player's historical win rate, level, online duration, activity ratio, etc. By setting these conditions, the game system can more accurately evaluate the suitability of candidate objects and select the most suitable objects to participate in the game.
[0068] For further illustration, optionally, assume there is an online multiplayer cooperative shooting game where players need to form teams to battle against other players. In this game, the first participation attribute can be the player's historical win rate or KDA, and the second participation attribute can be the player's average online duration or the ratio of active duration to total duration. The object matching conditions can be set as follows:
[0069] First participation attribute: The historical win rate must be higher than 50%.
[0070] Second participation attribute: The ratio of active duration to total duration must be greater than 70%.
[0071] In this case, this embodiment starts to screen candidate objects. Assume there are 10 candidate objects, and their historical win rates and active duration ratios are as follows:
[0072] Candidate object A: Historical win rate 55%, active duration ratio 80%
[0073] Candidate object B: Historical win rate 48%, active duration ratio 90%
[0074] ……(other candidate objects)
[0075] According to the object matching conditions, only candidate object A meets the conditions because his historical win rate is higher than 50% and the active duration ratio is greater than 70%. Therefore, this embodiment will select candidate object A as the game participation object that meets the matching conditions.
[0076] It should be noted that when receiving an object matching request, it is necessary to find N game participation objects for a virtual game session and ensure that these objects are all matched in terms of historical performance and in-game contributions. For example, first obtain a set containing M game candidate objects, and then evaluate the two game participation attributes of these candidate objects. Finally, this embodiment combines these two attributes to assign the candidate objects to two game camps and ensure that the total number of objects in each camp is N. If the specific object matching conditions are met, these candidate objects will be determined as the actual game participation objects.
[0077] For further illustration, optionally, for exampleFigure 3 As shown in (a) of , in response to the object matching request triggered by the virtual button "Start Matching" for the account where Player 1 is located, obtain a set of candidate objects to participate in the virtual game session. Among them, the set of candidate objects includes at least Player 1; obtain the game participation attributes corresponding to each game candidate object in the set of candidate objects. The game participation attributes include a first participation attribute and a second participation attribute. The first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session, and the second participation attribute is the time attribute of the game candidate object participating in the virtual game session. The time attribute is used to represent the ratio between the key duration when the game candidate object is active during the virtual game session and the total duration of the game candidate object participating in the virtual game session;
[0078] Furthermore, for example Figure 3 As shown in (b) of , combine the first participation attribute and the second participation attribute, and assign the first number of game candidate objects (such as Player 1, Player 2, Player 3, Player 4, Player 5) in the set of candidate objects to the first game camp (such as the blue camp), and assign the second number of game candidate objects (such as Player 6, Player 7, Player 8, Player 9, Player 10) in the set of candidate objects to the second game camp (such as the red camp).
[0079] Through the embodiments provided in this application, in response to an object matching request, a set of candidate objects to participate in a virtual game session is obtained. Among them, the object matching request is used to request to match N game participating objects for the virtual game session. The game participating objects are the game objects participating in the virtual game session, and the game participating objects belong to the first game camp or the second game camp in the virtual game session. The set of candidate objects includes M game candidate objects. N is an integer greater than 1, and M is an integer greater than or equal to N; the game participation attributes corresponding to each game candidate object in the set of candidate objects are obtained. Among them, the game participation attributes include the first participation attribute and the second participation attribute. The first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session. The second participation attribute is the time attribute of the game candidate object participating in the virtual game session. The time attribute is used to represent the proportion between the key duration when the game candidate object is active when participating in the virtual game session and the total duration of the game candidate object participating in the virtual game session; combining the first participation attribute and the second participation attribute, the first number of game candidate objects in the set of candidate objects are assigned to the first game camp, and the second number of game candidate objects in the set of candidate objects are assigned to the second game camp. Among them, the sum of the first number and the second number is equal to N; when the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching condition, the first number of game candidate objects are determined as the game participating objects belonging to the first game camp, and the second number of game candidate objects are determined as the game participating objects belonging to the second game camp. Among them, the object matching condition is set based on the first participation attribute and the second participation attribute. In this embodiment, in addition to introducing the first participation attribute (historical performance) in the process of object matching, the continuous investment and activity of players in the game are also considered, and further the second participation attribute (time attribute) is introduced into the process of object matching. By combining the first participation attribute (historical performance) and the second participation attribute (time attribute), the strength of players and the behavior patterns of players in the game can be evaluated more accurately, which helps to match players with similar levels more precisely. Furthermore, the purpose of introducing more game participation attributes in the process of object matching and evaluating the strength and investment degree of players more comprehensively is achieved, thus realizing the technical effect of improving the object matching accuracy of virtual game sessions.
[0080] As an alternative solution, combining the first participation attribute and the second participation attribute, and assigning the first number of game candidate objects in the set of candidate objects to the first game camp, and assigning the second number of game candidate objects in the set of candidate objects to the second game camp, includes:
[0081] S1-1. Integrate the first participation attribute and the second participation attribute to obtain the camp contribution scores corresponding to each game candidate object, where there is a positive correlation between the camp contribution score and the degree of contribution of the game candidate object to the game camp to which it belongs;
[0082] S1-2. According to the camp contribution scores, assign the first number of game candidate objects to the first game camp and assign the second number of game candidate objects to the second game camp.
[0083] Optionally, in this embodiment, the camp contribution score can be, but is not limited to, understood as a numerical evaluation criterion for measuring the degree of contribution that a game candidate object may make to a certain game camp after joining it. This score is obtained by integrating the first participation attribute and the second participation attribute of the candidate object. The core meaning of the camp contribution score is to predict and evaluate the value or advantage that a game candidate object can bring to a certain camp after joining it. The higher the score, the more likely it means that the candidate object is a valuable team member.
[0084] It should be noted that in the process of combining the first participation attribute and the second participation attribute and assigning the game candidate objects in the candidate object set to two different game camps, calculate the camp contribution score of each game candidate object, and this score reflects the possible contribution degree of the game object to the camp to which it belongs. Then, according to these scores, assign the candidate objects to two game camps, so as to ensure that the game candidate objects assigned to each game camp are those with relatively high potential contributions to the camp, thereby improving the fairness and competitiveness of the game. At the same time, this method also helps to maintain the balance of the game and avoid one side having too much of an advantage due to team differences.
[0085] For further illustration by example, assume that there is an optional team cooperation strategy game with two main game camps: A and B. This embodiment needs to assign 3 players to each of these two camps. Each game candidate object has two participation attributes: personal win rate (the first participation attribute) and team cooperation duration (the second participation attribute). This embodiment integrates these two attributes through a certain algorithm to calculate a camp contribution score for each candidate object. Then, this embodiment selects the top 3 candidate objects with the highest camp contribution scores and assigns them to camp A, and then selects the next 3 candidate objects with the second-highest scores and assigns them to camp B.
[0086] Through the embodiments provided in this application, the first participation attribute and the second participation attribute are integrated and processed to obtain the camp contribution scores corresponding to each game candidate object. Among them, there is a positive correlation between the camp contribution score and the contribution degree of the game candidate object to the game camp to which it belongs; according to the camp contribution scores, the first number of game candidate objects are assigned to the first game camp, and the second number of game candidate objects are assigned to the second game camp, thereby achieving the purpose of ensuring that the game candidate objects assigned to each game camp are those with relatively high potential contributions to the camp, and thus realizing the technical effect of improving the object matching accuracy of virtual game matches.
[0087] As an optional solution, assigning the first number of game candidate objects to the first game camp and the second number of game candidate objects to the second game camp according to the camp contribution scores includes:
[0088] S2-1. When N game candidate objects are determined from the candidate object set, the N game candidate objects are sorted from high to low according to the camp contribution scores to obtain the sorted game candidate object set;
[0089] S2-2. Determine a preset allocation line from the game candidate object set. Among the game candidate object set, the difference in the total camp contribution scores of the game candidate objects before and after the preset allocation line is less than or equal to the first preset threshold;
[0090] S2-3. According to the preset allocation line, determine the current candidate object from the candidate object set, and obtain the current first total score of the first game camp and the current second total score of the second game camp;
[0091] S2-4. Assign the current candidate object to the first game camp or the second game camp to make the first total score and the second total score close;
[0092] S2-5. When the number of game candidate objects belonging to the first game camp is less than the first number, or the number of game candidate objects belonging to the second game camp is less than the second number, determine the next candidate object from the candidate object set according to the preset allocation line, and use the next candidate object as the current candidate object until the first number of game candidate objects have been assigned to the first game camp and the second number of game candidate objects have been assigned to the second game camp;
[0093] S2-6. When the number of game candidate objects belonging to the first game camp is equal to the first number and the number of game candidate objects belonging to the second game camp is equal to the second number, it is determined that the first number of game candidate objects have been assigned to the first game camp and the second number of game candidate objects have been assigned to the second game camp.
[0094] It should be noted that according to the camp contribution scores, game candidate objects are selected from the set of candidate objects and assigned to two game camps, so as to ensure that the players in the two game camps are relatively matched in terms of personal ability and team contribution. At the same time, by making the total contribution scores of the two camps close, the fairness and competitiveness of the game are ensured, and it also helps to maintain the balance of the game, avoiding one side having too much of an advantage due to differences in personal ability or team contribution.
[0095] For further illustration, optionally, assume there are 10 candidate objects, and in this embodiment, 3 players need to be assigned to each of the two camps. Each candidate object has a camp contribution score. In this embodiment, the 10 candidate objects are first sorted from high score to low score. Then, this embodiment determines a preset allocation line to ensure that the difference in the total scores of the two camps does not exceed a preset value (for example, 50 points). Next, this embodiment starts to assign the candidate objects to the two camps in order from high score to low score to ensure that the total scores of the two camps are as close as possible. When each camp has 3 players, the allocation process ends.
[0096] Through the embodiments provided in this application, in the case of determining N game candidate objects from the set of candidate objects, according to the camp contribution scores, the N game candidate objects are sorted from high to low to obtain a sorted set of game candidate objects; a preset allocation line is determined from the set of game candidate objects, wherein, in the set of game candidate objects, the difference in the total camp contribution scores of the game candidate objects before and after the preset allocation line is less than or equal to a first preset threshold; according to the preset allocation line, the current candidate object is determined from the set of candidate objects, and the current first total score of the first game camp and the current second total score of the second game camp are obtained; the current candidate object is assigned to the first game camp or the second game camp to make the first total score and the second total score close; in the case where the number of game candidate objects belonging to the first game camp is less than a first quantity, or the number of game candidate objects belonging to the second game camp is less than a second quantity, according to the preset allocation line, the next candidate object is determined from the set of candidate objects, and the next candidate object is used as the current candidate object until the first quantity of game candidate objects has been assigned to the first game camp and the second quantity of game candidate objects has been assigned to the second game camp; in the case where the number of game candidate objects belonging to the first game camp is equal to the first quantity and the number of game candidate objects belonging to the second game camp is equal to the second quantity, it is determined that the first quantity of game candidate objects has been assigned to the first game camp and the second quantity of game candidate objects has been assigned to the second game camp, thereby achieving the purpose of maintaining the balance of the game and avoiding one side having too much of an advantage due to differences in personal ability or team contribution, and thus realizing the technical effect of improving the object matching accuracy of virtual game matches.
[0097] As an alternative solution, before determining that the first quantity of game candidate objects belong to the game participants of the first game camp and determining that the second quantity of game candidate objects belong to the game participants of the second game camp, the method further includes:
[0098] S3-1, obtain the first total score corresponding to the first game camp and the second total score corresponding to the second game camp, where the first total score is the total camp contribution score corresponding to all game candidate objects belonging to the first game camp, and the second total score is the total camp contribution score corresponding to all game candidate objects belonging to the second game camp;
[0099] S3-2, in the case where the difference between the first total score and the second total score is less than or equal to the second preset threshold, determine that the object matching condition is satisfied between the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp.
[0100] Optionally, in this embodiment, to ensure the fairness of the game, in addition to the total camp contribution score, this embodiment may also consider other factors, such as the number of high-level players in each camp, the average winning rate, etc., to determine whether the object matching condition is satisfied. In addition, the second preset threshold may be dynamically adjusted according to the actual situation of the game to ensure the best player matching and game experience.
[0101] It should be noted that before allocating game candidate objects to the two game camps, this embodiment will conduct a preliminary check to ensure that the total camp contribution scores of the two camps are close. Only when the gap between these two totals is less than or equal to a preset threshold, will this embodiment consider that the object matching condition is satisfied and then proceed with the subsequent allocation operation.
[0102] Thus, this embodiment ensures that the overall personal abilities and team contributions of the players assigned to each game camp are similar. This helps to improve the fairness and competitiveness of the game, ensuring that each player can have a balanced game experience. At the same time, by considering multiple factors and possibly making dynamic adjustments, this embodiment can further ensure the accuracy and adaptability of the matching. Ultimately, such a matching mechanism helps to maintain the long-term attractiveness and player satisfaction of the game.
[0103] For further illustration, assume that there are 10 candidate objects, 5 of which have been pre-assigned to the first game camp and the other 5 to the second game camp. In this embodiment, the total camp contribution score of the 5 candidate objects in the first camp is calculated to be 500 points, while the total camp contribution score of the 5 candidate objects in the second camp is 480 points. If the second preset threshold is set to 20 points, then since the difference between 500 and 480 (20 points) is less than or equal to 20 points, this embodiment considers that the two camps meet the object matching condition and subsequent allocation operations can be performed.
[0104] Through the embodiments provided in this application, the first total score corresponding to the first game camp and the second total score corresponding to the second game camp are obtained, where the first total score is the total camp contribution score corresponding to all game candidate objects belonging to the first game camp, and the second total score is the total camp contribution score corresponding to all game candidate objects belonging to the second game camp; when the difference between the first total score and the second total score is less than or equal to the second preset threshold, it is determined that the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching condition, thereby achieving the purpose of ensuring that the overall personal abilities and team contributions of the players assigned to each game camp are similar, and thus achieving the technical effect of improving the object matching accuracy of virtual game matches.
[0105] As an optional solution, assigning the first number of game candidate objects to the first game camp and the second number of game candidate objects to the second game camp according to the camp contribution scores includes:
[0106] Assigning the first number of game candidate objects with a score difference of camp contribution scores less than or equal to the fourth preset threshold to the first game camp, and assigning the second number of game candidate objects with a score difference of camp contribution scores less than or equal to the fourth preset threshold to the second game camp.
[0107] It should be noted that in the process of allocating game candidate objects to the two game camps, this embodiment will consider the gap between the camp contribution scores. Only when the difference between the camp contribution scores of two candidate objects is less than or equal to a fourth preset threshold will this embodiment assign them to the first game camp and the second game camp respectively.
[0108] Thus, this embodiment ensures that players assigned to each game faction are relatively close in terms of personal ability and team contribution. This helps maintain the fairness and competitiveness of the game because each faction has players of similar levels. At the same time, this method also helps maintain the balance of the game, preventing one side from having too much of an advantage due to differences in skills or activity levels. Additionally, by considering the score difference of the faction contribution scores, this embodiment can further refine the allocation of players, ensuring that each faction has a diverse combination of players, which helps enhance the complexity and playability of the game. Ultimately, such an allocation strategy helps provide a fair and interesting gaming environment for players.
[0109] For further illustration by example, optionally assume there are two candidate objects A and B. The faction contribution score of A is 50, and the faction contribution score of B is 55. If the fourth preset threshold is set to 5, then because the score difference between A and B (5 points) is less than or equal to 5, this embodiment can assign A to the first game faction and B to the second game faction.
[0110] Through the embodiment provided by this application, according to the faction contribution scores, the first number of game candidate objects with a score difference of the faction contribution scores less than or equal to the fourth preset threshold are assigned to the first game faction, and the second number of game candidate objects with a score difference of the faction contribution scores less than or equal to the fourth preset threshold are assigned to the second game faction, thereby achieving the purpose of ensuring that players assigned to each game faction are relatively close in terms of personal ability and team contribution, and thus achieving the technical effect of improving the object matching accuracy of virtual game matches.
[0111] As an optional solution, obtain the game participation attributes corresponding to each game candidate object in the candidate object set, including:
[0112] S4-1, when the number of game positions allowed to be configured in a virtual game match by the game participation object is greater than 1, obtain the pre-configured match game positions of each game candidate object;
[0113] S4-2, obtain the game position attributes corresponding to each game candidate object. Among them, the game participation attributes include game position attributes, and the game position attributes include the first position attribute and the second position attribute. The first position attribute is the historical performance when each game candidate object configures the match game position and participates in the virtual game match. The second position attribute is the time position attribute when the game candidate object configures the match game position and participates in the virtual game match. The time position attribute is used to represent the proportion between the key duration when the game candidate object configures the match game position and participates in the virtual game match and is active, and the total duration when the game candidate object configures the match game position and participates in the virtual game match.
[0114] Optionally, in this embodiment, in a multiplayer online battle arena game or other team-based cooperation games, players often choose a specific character or strategy to participate in the game, and this kind of character or strategy selection is usually referred to as the in-game positioning. For example, in a MOBA (Multiplayer Online Battle Arena), a player may choose a "tank" character to absorb enemy damage and protect teammates, or choose a "mage" character to release high-damage skills. Each in-game positioning has its unique characteristics and responsibilities.
[0115] The choice of in-game positioning usually reflects a player's skills, tactical preferences, and team cooperation methods. Some players may be more proficient in melee combat, so they may choose a positioning such as "warrior" or "assassin". Other players may prefer to support from the rear, so they may choose an "assistant" positioning.
[0116] Optionally, in this embodiment, the in-game positioning attribute can be, but is not limited to, an attribute that describes a player's performance and behavior under a specific in-game positioning. These attributes provide valuable information about the player's efficiency and activity in the game. For example, the first positioning attribute is an attribute evaluated based on a player's historical performance after choosing a certain in-game positioning. Specifically, if a player has a high historical win rate after choosing the "tank" positioning, then in this embodiment, it can be considered that the player's first positioning attribute under this positioning is high, which also reflects the player's personal ability under this specific character or strategy.
[0117] Another example is that the second positioning attribute is an attribute that describes the active period of a player under a certain in-game positioning. Specifically, the second positioning attribute represents the ratio between the critical duration and the total duration when a player chooses a certain positioning and participates in the game. Specifically, a player may have a total playing time of 100 hours when choosing the "mage" positioning and playing the game, but only 40 hours of the time is truly active and makes a key contribution to the team. This means that the player's second positioning attribute is 40%.
[0118] It should be noted that before the game starts, this embodiment will analyze each game candidate object in the candidate object set and obtain the game participation attributes related to each game candidate object. Among them, an important attribute is the in-game positioning attribute, which is further divided into the first positioning attribute and the second positioning attribute. When the number of positions in the game is greater than 1, this embodiment will consider the in-game positioning pre-configured for each game candidate object. These attributes help this embodiment better understand the performance and active period of each game candidate object in the game, and thus help this embodiment, when assigning players to different camps, take into account the players' positions and habits to ensure that each camp has balanced combat power and strategies. In addition, considering multiple positioning attributes and active periods can help this embodiment more accurately predict the behavior of players in the game, so as to optimize the team combination and tactical arrangements.
[0119] For further illustration, assume that there is a MOBA game where players can choose from three roles: "Tank", "Mage", or "Shooter". Player A has a historical win rate of 70% when choosing the "Tank" role, with a total playtime of 100 hours, and an active period (key duration) of 40 hours. Then, Player A's first role attribute is 70%, and the second role attribute is 40 / 100 = 0.4 or 40%.
[0120] Through the embodiments provided in this application, when the number of game roles allowed to be configured by a game participant in a virtual game match is greater than 1, obtain the pre-configured match game roles of each game candidate object; obtain the game role attributes corresponding to each game candidate object, where the game participation attributes include game role attributes, and the game role attributes include a first role attribute and a second role attribute. The first role attribute is the historical performance of each game candidate object when configuring the match game role and participating in the virtual game match, and the second role attribute is the time role attribute of the game candidate object when configuring the match game role and participating in the virtual game match. The time role attribute is used to represent the ratio between the key duration when the game candidate object is active when configuring the match game role and participating in the virtual game match, and the total duration when the game candidate object configures the match game role and participates in the virtual game match. Thus, the purpose of more accurately predicting the behavior of players in the game is achieved, and the technical effect of improving the accuracy of object matching in virtual game matches is realized.
[0121] As an alternative solution, obtaining the game role attributes corresponding to each game candidate object includes:
[0122] S5-1, when the number of matches in which the first candidate object configures the first match role and participates in the virtual game match is less than or equal to a third preset threshold, assign a first weight to the game role attribute corresponding to the first candidate object, where the M game candidate objects include the first candidate object, and the match game role includes the first match role;
[0123] S5-2, when the number of matches in which the second candidate object configures the second match role and participates in the virtual game match is greater than the third preset threshold, assign a second weight to the game role attribute corresponding to the second candidate object, where the M game candidate objects include the second candidate object, and the match game role includes the second match role, and the second weight is greater than the first weight.
[0124] It should be noted that when evaluating the positioning attributes of game candidate objects, this embodiment will consider the number of times a game candidate object participates in the game. Specifically, if a certain candidate object selects a specific positioning and participates in the game less frequently, a lower weight will be assigned to the attributes of the game candidate object under that positioning; conversely, if the game candidate object selects that positioning and participates in the game multiple times, then a higher weight will be assigned to the attributes of the game candidate object under that positioning.
[0125] Thus, this embodiment can more accurately evaluate the true capabilities and experiences of each game candidate object under different in-game positioning. Assigning a higher weight to players who more frequently select a certain positioning and participate in the game means that their in-game positioning attributes are more reliable and representative. Such an evaluation method helps improve the accuracy of team formation and the effect of player matching, thereby providing a more fair and interesting gaming experience for players.
[0126] For further illustration by example, optionally, assume there are two players, A and B. Player A selects the "tank" positioning and plays 3 games, while player B selects the "mage" positioning and plays 15 games. If the third preset threshold is set to 10, then the in-game positioning attributes of A will be assigned a first weight (because he plays fewer than 10 times), and the in-game positioning attributes of B will be assigned a second weight (because he plays more than 10 times), and this second weight is greater than the first weight.
[0127] Through the embodiment provided by this application, when the number of games in which the first candidate object configures the first in-game positioning and participates in the virtual game is less than or equal to the third preset threshold, a first weight is assigned to the in-game positioning attributes corresponding to the first candidate object, where the M game candidate objects include the first candidate object, and the in-game positioning includes the first in-game positioning; when the number of games in which the second candidate object configures the second in-game positioning and participates in the virtual game is greater than the third preset threshold, a second weight is assigned to the in-game positioning attributes corresponding to the second candidate object, where the M game candidate objects include the second candidate object, and the in-game positioning includes the second in-game positioning, and the second weight is greater than the first weight, thereby achieving the purpose of more accurately predicting the behavior of players in the game, and thus realizing the technical effect of improving the accuracy of object matching in virtual game.
[0128] As an optional solution, in the process of obtaining the game participation attributes corresponding to each game candidate object in the candidate object set, the method further includes:
[0129] When the candidate object set includes at least two candidate objects who play together in a team and the game participation attributes corresponding to the at least two candidate objects are obtained, optimize the game participation attributes corresponding to the at least two candidate objects.
[0130] It should be noted that during the process of evaluating the game participation attributes of candidate objects, if there are multiple candidate objects with a history of teaming up together, then this embodiment will optimize the attributes of these candidate objects that have teamed up together. By optimizing the game participation attributes of the candidate objects that have teamed up together, this embodiment can more accurately evaluate the true abilities of these objects in the game and the team collaboration effect, which helps to improve the accuracy of team formation and the effect of player matching, and avoid the imbalance of the overall team due to the outstanding performance or poor performance of individual players in specific situations.
[0131] For further illustration, optionally assume that there are three players, A, B, and C, in the set of candidate objects. Player A and B have a history of teaming up together multiple times, or player A and B are currently teaming up for matching, while C has no history of teaming up with the other two, or is not teaming up with the other two for matching. This embodiment first obtains the game participation attributes of A, B, and C, and then discovers that A and B have information about teaming up together, so it optimizes the game participation attributes of A and B.
[0132] Through the embodiment provided by this application, in the case where the set of candidate objects includes at least two candidate objects that have teamed up together and the game participation attributes corresponding to the at least two candidate objects are obtained, the game participation attributes corresponding to the at least two candidate objects are optimized, thereby achieving the purpose of more accurately evaluating the true abilities of the game objects that have teamed up together in the game and the team collaboration effect, and thus realizing the technical effect of improving the accuracy of object matching in virtual game rounds.
[0133] As an optional solution, for the convenience of understanding, the above object matching method for virtual game rounds is applied to the matching scenario of MOBA games using the Elo Rating System (abbreviated as elo) algorithm. The elo algorithm has obvious defects. For example, the convergence speed is average. Before a large enough number of game rounds, the ELO rating of a player does not necessarily represent the true level of the player. There is generally a certain gap between 1500 points in 10 rounds and 1500 points in 100 rounds; the processing of N vs. N is still not precise enough. It does not support native team matching, etc.
[0134] Optionally, in this embodiment, to overcome the above-mentioned defects of the Elo algorithm, this embodiment combines the Elo algorithm and the TrueSkill2 algorithm. TrueSkill2 is designed on the basis of the TrueSkill algorithm to better meet the actual needs of the game. First, weights are used to fit the performance of teams in different periods. The performance of each team is defined as the weighted sum of players, where the weights are the time they participated in the game in the team / the total game time. Then TrueSkill2 takes into account the actual personal improvement of each player in each game. By listing various statistical data of players, such as the number of kills and deaths, this part of the factor is added to the model. And the actual game situation of AFK and troll players in each game is considered. In summary, TrueSkill2 is more suitable for the actual application scenario in the game compared to the TrueSkill algorithm. However, in actual applications, since the matching algorithm used online is the Elo algorithm, and after several years of online operation data, it is somewhat difficult to directly replace the Elo algorithm with the TrueSkill2 algorithm. For example, the TrueSkill2 algorithm assumes that the team performance starts from 0, but in fact, the personal Elo scores have been accumulated after years of game operation, and it is difficult to fit the distribution when forming teams. But TrueSkill assumes that the number of players in the game is relatively large, but in fact, in a 5v5 game, the 5-person team can be composed of 1, 2, 3, or 5 people, so the distribution difference is relatively large. There are small teams in large teams, so it is necessary to consider the iteration by combining the performance of individuals and teams. Therefore, for the game, it is not possible to directly replace Elo with algorithms such as TrueSkill online.
[0135] Optionally, in this embodiment, as Figure 4 shown in the game matching page, 5v5 team formation is one way of team matching, indicating that two teams play against each other, and each team has 5 people. In ranked team play, 5v5 can be further divided into 2-person friend teams and 3-person friend teams, and then combined into a 5-person team to fight together. As Figure 4 shown, player 1 can invite others (such as member 4) to form 2, 3, or 5-person teams with him, or start a game alone. Finally, the players matched must be 5 people on the same side and 5 people on the opposite side. Then they will have a 5v5 battle.
[0136] Optionally, the part of this embodiment that reflects the matching is after the start matching button, and it waits for 5 - 60 seconds. During this period, the matching algorithm will automatically match players with teammates of comparable strength. Among them, because there are promotions and rank improvements in the ranked matches, there will be rank matching restrictions. For example, players in the first rank cannot be matched with players in the second rank. A matching isolation mechanism will also be set up. For example, players below the first rank do not have the ban pick mechanism, while those above the second rank do.
[0137] Optionally, the overall architecture of this embodiment is asFigure 5 As shown, it includes a hardware environment, a client, and a server. Assuming the game is a mobile game, in terms of the hardware environment, the game is an application (abbreviated as app) running on a mobile phone. This app occupies approximately 1g of storage and can be driven with a network of 2G or above. The matching algorithm in this embodiment is deployed in the cloud, and when the mobile game app clicks the match button on the client, it requests a return from the cloud server.
[0138] Optionally, on the server side in this embodiment, only the data required for matching needs to be passed in, and the log of successful matching needs to be reported. Optionally, based on Figure 5 the scenario shown, continue as Figure 6 shown, the server side is responsible for protocol forwarding of the data transmitted by the gateway. Gamesvr represents the lobby server, which is the game login page, the mall, etc. If people from different regions (even different countries) match together, the server can make the lobby server public. Loadsvr represents load management, which minimizes the load management of different region servers. If there are additional requirements (such as various Asian Games versions, the smallest isolatable region servers), Relaysvr represents the battle server, which is strongly related to the game session. There will be one server for each region, and finally, data is transmitted through the protocol.
[0139] Optionally, in this embodiment, requests from different region servers of the server will undergo one - layer protocol forwarding through a proxy and call the match engine for matching. Optionally, based on Figure 5 the scenario shown, continue as Figure 7 shown, the match engine processes different types of roommatch requests and returns the results of roommatch. Among them, requests for different modes include ordinary ranked matches and matching matches, peak ranked matches and matching matches, entertainment modes, etc. In the request to open a room, there will be single - row / single - match, double - row / double - match, triple - row / triple - match, five - row and five - match. Finally, the match engine must give results in groups of 5 on each side. In this step of roommatch, people with the same type of requests will be put into a pool, and according to the rank limit, they will be pre - selected by lanes and combined into candidate lists. The roomagent will then divide teams based on the candidate lists and start a game to form individual rooms.
[0140] In the game app, in each game session, each player has their chosen lane and hero. In the game, the initial rank is Bronze III. After winning a ranked match, one star is added. From Bronze to Platinum, each rank has 5 stars. So each player has their own rank and the elo score inherited from the previous season.
[0141] Optionally, in this embodiment, for the calculation of ELO score, assume that a player is currently Bronze I and is playing a ranked game. The match engine will first find a set that includes players in the three ranks of {Bronze, Silver, and Gold}. Assuming the player has a preselected lane, it will also filter out players who have played in other lanes except this lane to avoid lane conflicts. Each rank will have an initial rank ELO score. Assume that the ELO scores of players who have reached this rank follow a Gaussian normal distribution. The initial ability of a player who has just reached this rank can be represented by the following function:
[0142]
[0143] Among them, the above function is the probability density function of a one-dimensional Gaussian distribution. The average expectation represents that the player's basic level is the average level of all players in this rank, and the deviation represents the degree to which the player's personal performance level deviates from the average level.
[0144] Assume that for player i in this rank, opponent j in the same lane cannot beat this player. Then this player follows a probability distribution as shown in the following formula:
[0145]
[0146] After a game, the player's ability score is updated to the following score, as shown in the following formula:
[0147] R p =R c +D(P)
[0148] Among them, Rc represents the ELO score before the game, and D(P) is the inverse function of P(D).
[0149] Optionally, in this embodiment, the steps after candidate selection are replaced by the TrueSkill2 algorithm, as Figure 8 shown. Specifically, in the match engine, it can be divided into two parts: one part is to find candidates, and the other part is to divide teams. The part of finding candidates is determined by the players who are online in the system in real time. The same type of matching requests are put together, restricted by rank and lane preference, and divided into sets of 10-person combinations. There are many such candidate sets, forming a list. In the part of dividing teams, restrictions on TrueSkill2 team division are carried out. As shown above, originally, after finding candidates, the 10-person list is selected, and the players with the highest ELO scores are divided into two sides. Then the sums of the two sides are calculated to see if the weighted total scores by lane meet a certain score difference limit. If so, the matching ends.
[0150] For further illustration, optionally, for example Figure 9As shown, in this embodiment, the elo scores of 10 individuals are used as part of the initialization. Also input are
[0151] perf_i = \sum{elo score, KDA, pvp level, total economy, mvp score}
[0152] It means that the score of the i-th individual is obtained by weighted summation of the elo score, kda, economy, mvp score, and pvp level.
[0153] The performance level of the entire team can be expressed by the following formula:
[0154]
[0155] Among them, perf_i represents the performance of the members of team_i, followed by weights, where the weights are the time they participated in the game in the team / total game time.
[0156] Among the 10 individuals, each has perf_i. The optimal perf_team is quickly found using the binary search method. The total weighted score of the team obtained through the trueskill2 algorithm takes into account multiple factors: elo score, kda, pvp level, total economy, mvp score. Among them, the trueskill2 paper mentions the relationship between kda and win rate, and in the game, it is also a similar positive correlation relationship.
[0157] Compared with the simple elo score, the trueskill2 algorithm itself can also be used to consider individual performances such as AFK and trolling. For example, in the case of AFK, it is equivalent to excluding the performance of a certain person in a certain team to calculate the team score of the completed game, as shown in the following formula:
[0158]
[0159] Among them, m_q and v_q are adjustable parameters (m_q <= 0 during the prediction period), allowing the degree of poor player performance to change.
[0160] It should be noted that for trolling players, the economy and kda within different times will vary greatly from those of players at the same level. An occasional instance of trolling will affect the perf_i of the current game. At the same time, trolling players do not affect the level of normal players, as shown in the following formula:
[0161]
[0162] Among them, count represents the counting of kda and economy. Since the calculation is only related to the kda and economy of an individual at different times and the influence of teammates is very small, the dependence on teammates is abandoned.
[0163] Therefore, the team score calculated by the TrueSkill2 algorithm is more accurate, not only combining multiple factors (in addition to the elo score, it also considers KDA, PVP level, total economy, and MVP score). In addition, compared with the single elo score, it also takes into account the phenomenon of AFK and slacking in the team.
[0164] Optionally, in this embodiment, the data flow describes how data is transmitted from the mobile game app client log management report to the cloud, how the server manages the log report to the cloud, the server requests the matchengine, returns the start result to the cloud, and the cloud returns it to the mobile game app. Optionally based on Figure 9 The scene shown, continue as Figure 10 As shown in the figure, in the matchengine, each matching process result will be written into redis or offline database table, from the start of matching, matching success, room opening, game, settlement results, etc., each has an intermediate table to trace the beginning and end of each game. Among them, the process length of the entire data flow is equivalent to the matching time displayed by the mobile game, which is about within 60s.
[0165] Through the embodiments provided by this application, two problems of directly replacing the elo algorithm online are solved. The trueskill2 algorithm assumes the team performance starting from 0, but in fact, the individual elo points that have been accumulated over the years of game operation are difficult to fit the distribution when forming a team. Trueskill2 assumes that there are more people in the game, but in fact, a 5v5 game can be a 5-person team composed of 1, 2, 3, or 5 people, so the distribution difference is relatively large. There are small teams in the large team, so it is necessary to consider iteration in combination with individual and team performance. This embodiment not only takes into account the inheritance of ranks and elo points, but also solves many problems such as slacking and hanging up that are often complained about in the online matching mechanism.
[0166] It is understandable that in the specific implementation of this application, related data such as user information is involved. When the above embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
[0167] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.
[0168] According to another aspect of the embodiments of the present application, there is also provided an object matching device for a virtual game session for implementing the object matching method of the above virtual game session. As Figure 11 shown, the device includes:
[0169] A first acquisition unit 1102, configured to acquire a set of candidate objects to participate in a virtual game session in response to an object matching request, where the object matching request is used to request to match N game participating objects for the virtual game session, the game participating objects are game objects participating in the virtual game session, the game participating objects belong to a first game camp or a second game camp in the virtual game session, the set of candidate objects includes M game candidate objects, N is an integer greater than 1, and M is an integer greater than or equal to N;
[0170] A second acquisition unit 1104, configured to acquire game participation attributes corresponding to each game candidate object in the set of candidate objects, where the game participation attributes include a first participation attribute and a second participation attribute, the first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session, and the second participation attribute is a time attribute of the game candidate object participating in the virtual game session, and the time attribute is used to represent the ratio between the critical duration when the game candidate object is active when participating in the virtual game session and the total duration of the game candidate object participating in the virtual game session;
[0171] A combination unit 1106, configured to combine the first participation attribute and the second participation attribute, and ascribe the first number of game candidate objects in the set of candidate objects to the first game camp, and ascribe the second number of game candidate objects in the set of candidate objects to the second game camp, where the sum of the first number and the second number is equal to N;
[0172] A determination unit 1108, configured to, when the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching condition, determine the first number of game candidate objects as game participating objects belonging to the first game camp, and determine the second number of game candidate objects as game participating objects belonging to the second game camp, where the object matching condition is set based on the first participation attribute and the second participation attribute.
[0173] For specific embodiments, reference may be made to the examples shown in the above object matching method for a virtual game session, and details are not described herein again.
[0174] As an optional solution, the combination unit 1106 includes:
[0175] An integration module for integrally processing the first participation attribute and the second participation attribute to obtain the camp contribution scores corresponding to each game candidate object, where there is a positive correlation between the camp contribution score and the contribution degree of the game candidate object to the game camp to which it belongs;
[0176] An attribution module for attributing the first quantity of game candidate objects to the first game camp and attributing the second quantity of game candidate objects to the second game camp according to the camp contribution scores.
[0177] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game rounds, and these examples will not be elaborated here.
[0178] As an optional solution, the attribution module includes:
[0179] A sorting sub-module for, when determining N game candidate objects from the candidate object set, sorting the N game candidate objects from high to low according to the camp contribution scores to obtain a sorted set of game candidate objects;
[0180] A first determination sub-module for determining a preset allocation line from the set of game candidate objects, where, in the set of game candidate objects, the difference in the total camp contribution scores of the game candidate objects before and after the preset allocation line is less than or equal to a first preset threshold;
[0181] A second determination sub-module for determining a current candidate object from the candidate object set according to the preset allocation line, and obtaining the current first total score of the first game camp and the current second total score of the second game camp;
[0182] A first attribution sub-module for attributing the current candidate object to the first game camp or the second game camp to make the first total score and the second total score close;
[0183] A third determination sub-module for, when the number of game candidate objects belonging to the first game camp is less than the first quantity, or the number of game candidate objects belonging to the second game camp is less than the second quantity, determining the next candidate object from the candidate object set according to the preset allocation line, and taking the next candidate object as the current candidate object until the first quantity of game candidate objects have been attributed to the first game camp and the second quantity of game candidate objects have been attributed to the second game camp;
[0184] A fourth determination sub-module for, when the number of game candidate objects belonging to the first game camp is equal to the first quantity and the number of game candidate objects belonging to the second game camp is equal to the second quantity, determining that the first quantity of game candidate objects have been attributed to the first game camp and the second quantity of game candidate objects have been attributed to the second game camp.
[0185] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game matches, and these examples will not be elaborated here.
[0186] As an alternative solution, the apparatus further includes:
[0187] A first acquisition module, configured to, before determining that a first number of game candidate objects are game participating objects belonging to a first game camp and determining that a second number of game candidate objects are game participating objects belonging to a second game camp, acquire a first total score corresponding to the first game camp and a second total score corresponding to the second game camp, where the first total score is the total camp contribution score corresponding to all game candidate objects belonging to the first game camp, and the second total score is the total camp contribution score corresponding to all game candidate objects belonging to the second game camp;
[0188] A determination module, configured to, before determining that a first number of game candidate objects are game participating objects belonging to a first game camp and determining that a second number of game candidate objects are game participating objects belonging to a second game camp, determine that the object matching condition is satisfied between the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp when the difference between the first total score and the second total score is less than or equal to a second preset threshold.
[0189] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game matches, and these examples will not be elaborated here.
[0190] As an alternative solution, the attribution module includes:
[0191] A second attribution sub-module, configured to attribute a first number of game candidate objects with a score difference of the camp contribution score less than or equal to a fourth preset threshold to the first game camp according to the camp contribution score, and attribute a second number of game candidate objects with a score difference of the camp contribution score less than or equal to a fourth preset threshold to the second game camp.
[0192] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game matches, and these examples will not be elaborated here.
[0193] As an alternative solution, the second acquisition unit 1104 includes:
[0194] A second acquisition module, configured to, when the number of game positions allowed to be configured in a virtual game match by a game participating object is greater than 1, acquire the pre-configured game positions of each game candidate object.
[0195] A third acquisition module, configured to acquire the game positioning attributes corresponding to each game candidate object. The game participation attributes include game positioning attributes, and the game positioning attributes include a first positioning attribute and a second positioning attribute. The first positioning attribute is the historical performance when each game candidate object configures a game positioning for a game session and participates in a virtual game session. The second positioning attribute is the time positioning attribute when the game candidate object configures a game positioning for a game session and participates in a virtual game session. The time positioning attribute is used to represent the proportion between the key duration when the game candidate object is active when configuring a game positioning for a game session and participating in a virtual game session, and the total duration when the game candidate object configures a game positioning for a game session and participates in a virtual game session.
[0196] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game sessions, and details are not described herein again in this example.
[0197] As an alternative solution, the third acquisition module includes:
[0198] A first allocation sub-module, configured to allocate a first weight to the game positioning attributes corresponding to a first candidate object when the number of game sessions in which the first candidate object configures a first game session positioning and participates in a virtual game session is less than or equal to a third preset threshold. Among the M game candidate objects, there is a first candidate object, and the game session positioning includes a first game session positioning;
[0199] A second allocation sub-module, configured to allocate a second weight to the game positioning attributes corresponding to a second candidate object when the number of game sessions in which the second candidate object configures a second game session positioning and participates in a virtual game session is greater than the third preset threshold. Among the M game candidate objects, there is a second candidate object, and the game session positioning includes a second game session positioning, and the second weight is greater than the first weight.
[0200] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game sessions, and details are not described herein again in this example.
[0201] As an alternative solution, the apparatus further includes:
[0202] An optimization unit, configured to optimize the game participation attributes corresponding to at least two candidate objects in the process of acquiring the game participation attributes corresponding to each game candidate object in the candidate object set, when there are at least two candidate objects in the candidate object set that are in the same team and the game participation attributes corresponding to the at least two candidate objects are acquired.
[0203] For specific embodiments, reference may be made to the examples shown in the above object matching method for virtual game sessions, and details are not described herein again in this example.
[0204] According to another aspect of the embodiments of the present application, there is also provided an electronic device for implementing the object matching method for the above virtual game session. The electronic device may be, but is not limited to, Figure 1 the user device 102 or the server 112 shown in Figure 12 . Taking the electronic device as the user device 102 as an example, further as shown in
[0205] , the electronic device includes a memory 1202 and a processor 1204. A computer program is stored in the memory 1202, and the processor 1204 is configured to execute the steps in any of the above method embodiments through the computer program.
[0206] Optionally, in this embodiment, the above processor may be configured to execute the following steps through the computer program:
[0207] S1. In response to an object matching request, obtain a set of candidate objects to participate in the virtual game session. Among them, the object matching request is used to request to match N game participating objects for the virtual game session. The game participating object is a game object participating in the virtual game session, and the game participating object belongs to the first game camp or the second game camp in the virtual game session. The set of candidate objects includes M game candidate objects. N is an integer greater than 1, and M is an integer greater than or equal to N;
[0208] S2. Obtain the game participation attributes corresponding to each game candidate object in the set of candidate objects. Among them, the game participation attributes include a first participation attribute and a second participation attribute. The first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session. The second participation attribute is the time attribute of the game candidate object participating in the virtual game session. The time attribute is used to represent the ratio between the key duration when the game candidate object is active when participating in the virtual game session and the total duration of the game candidate object participating in the virtual game session;
[0209] S3. Combining the first participation attribute and the second participation attribute, assign the first number of game candidate objects in the set of candidate objects to the first game camp, and assign the second number of game candidate objects in the set of candidate objects to the second game camp, where the sum of the first number and the second number is equal to N;
[0210] S4. When an object matching condition is satisfied between game candidate objects belonging to a first game camp and game candidate objects belonging to a second game camp, determine a first quantity of game candidate objects as game participating objects belonging to the first game camp, and determine a second quantity of game candidate objects as game participating objects belonging to the second game camp, where the object matching condition is set based on a first participation attribute and a second participation attribute.
[0211] Optionally, those of ordinary skill in the art can understand that Figure 12 the structure shown is only schematic Figure 12 and does not limit the structure of the above electronic device. For example, the electronic device may further include more or fewer components (such as a network interface, etc.) than those shown Figure 12 in the figure, or have a different configuration from that shown Figure 12 in the figure.
[0212] Among them, the memory 1202 can be used to store software programs and modules, such as the program instructions / modules corresponding to the object matching method and device for virtual game sessions in the embodiments of the present application. The processor 1204 executes various functional applications and data processing by running the software programs and modules stored in the memory 1202, that is, implements the above object matching method for virtual game sessions. The memory 1202 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memories. In some instances, the memory 1202 may further include a memory remotely provided relative to the processor 1204, and these remote memories can be connected to the electronic device through a network. Examples of the above network include but are not limited to the Internet, enterprise intranet, local area network, mobile communication network, and combinations thereof. Among them, the memory 1202 can specifically but not limitedly be used to store information such as a set of candidate objects, game participation attributes, and game participating objects. As an example, as Figure 12 shown, the above memory 1202 may include, but is not limited to, the first acquisition unit 1102, the second acquisition unit 1104, the combination unit 1106, and the determination unit 1108 in the object matching device for virtual game sessions. In addition, it may also include, but is not limited to, other module units in the object matching device for virtual game sessions, which will not be elaborated in this example.
[0213] Optionally, the above-mentioned transmission device 1206 is used to receive or send data via a network. Specific examples of the above-mentioned network may include a wired network and a wireless network. In one example, the transmission device 1206 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices and routers through a network cable, so as to communicate with the Internet or a local area network. In one example, the transmission device 1206 is a Radio Frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0214] In addition, the above-mentioned electronic device further includes: a display 1208, which is used to display information such as the above-mentioned candidate object set, game participation attributes, and game participation objects; and a connection bus 1210, which is used to connect each module component in the above-mentioned electronic device.
[0215] In other embodiments, the above-mentioned user equipment or server may be a node in a distributed system. Among them, the distributed system may be a blockchain system, and the blockchain system may be a distributed system formed by connecting the multiple nodes in the form of network communication. Among them, the nodes can form a peer-to-peer network, and any form of computing device, such as an electronic device such as a server or a user equipment, can become a node in the blockchain system by joining the peer-to-peer network.
[0216] According to one aspect of the present application, there is provided a computer program product, which includes computer programs / instructions, and the computer programs / instructions include program codes for executing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part, and / or installed from a removable medium. When the computer program is executed by a central processing unit, it executes various functions provided by the embodiments of the present application.
[0217] The serial numbers of the above-mentioned embodiments of the present application are only for description and do not represent the advantages and disadvantages of the embodiments.
[0218] It should be noted that the computer system of the electronic device is only an example and should not bring any limitations to the functions and usage scopes of the embodiments of the present application.
[0219] A computer system includes a Central Processing Unit (CPU), which can perform various appropriate actions and processes according to a program stored in a Read-Only Memory (ROM) or a program loaded from a storage section into a Random Access Memory (RAM). In the random access memory, various programs and data required for system operation are also stored. The central processing unit, the read-only memory, and the random access memory are connected to each other via a bus. An Input / Output interface (I / O interface) is also connected to the bus.
[0220] The following components are connected to the input / output interface: an input section including a keyboard, a mouse, etc.; an output section including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), etc. and a speaker, etc.; a storage section including a hard disk, etc.; and a communication section including a network interface card such as a local area network card, a modem, etc. The communication section performs communication processing via a network such as the Internet. A drive is also connected to the input / output interface as needed. A removable medium, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive as needed so that a computer program read from it can be installed into the storage section as needed.
[0221] In particular, according to an embodiment of the present application, the processes described in each method flow chart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes program code for executing the method shown in the flow chart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication section, and / or installed from a removable medium. When the computer program is executed by the central processing unit, various functions defined in the system of the present application are executed.
[0222] According to one aspect of the present application, there is provided a computer-readable storage medium, and a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the methods provided in the above various optional implementation manners.
[0223] Optionally, in this embodiment, the above computer-readable storage medium may be set to store a computer program for executing the following steps:
[0224] S1. In response to an object matching request, obtain a set of candidate objects to participate in a virtual game session. The object matching request is used to request the matching of N game participating objects for the virtual game session. A game participating object is a game object participating in the virtual game session, and the game participating objects belong to the first game camp or the second game camp in the virtual game session. The set of candidate objects includes M game candidate objects, where N is an integer greater than 1, and M is an integer greater than or equal to N.
[0225] S2. Obtain the game participation attributes corresponding to each game candidate object in the set of candidate objects. The game participation attributes include a first participation attribute and a second participation attribute. The first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session, and the second participation attribute is the time attribute of the game candidate object participating in the virtual game session. The time attribute is used to represent the ratio between the key duration when the game candidate object is active during the virtual game session and the total duration of the game candidate object participating in the virtual game session.
[0226] S3. Combine the first participation attribute and the second participation attribute to assign the first number of game candidate objects in the set of candidate objects to the first game camp and the second number of game candidate objects in the set of candidate objects to the second game camp, where the sum of the first number and the second number is equal to N.
[0227] S4. When the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching condition, determine the first number of game candidate objects as the game participating objects belonging to the first game camp and the second number of game candidate objects as the game participating objects belonging to the second game camp, where the object matching condition is set based on the first participation attribute and the second participation attribute.
[0228] Optionally, in the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an overall module or unit that includes the function of that module or unit.
[0229] Optionally, in this embodiment, those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by a program instructing the relevant hardware of the electronic device. The program can be stored in a computer-readable storage medium, which can include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, an optical disk, etc.
[0230] The serial numbers of the embodiments of the present application above are only for description and do not represent the superiority or inferiority of the embodiments.
[0231] If the integrated unit in the above embodiments is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in the above computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in the storage medium and includes several instructions for causing one or more computer devices (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.
[0232] In the above embodiments of the present application, the descriptions of the various embodiments each have their own emphases. For the parts not detailed in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0233] In the several embodiments provided by the present application, it should be understood that the disclosed user equipment can be implemented in other ways. Among them, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection to each other can be through some interfaces. The indirect coupling or communication connection of the units or modules can be in an electrical or other form.
[0234] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place, or they can be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0235] In addition, each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit. The above-mentioned integrated units may be implemented in the form of hardware or in the form of software functional units.
[0236] The above are only the preferred embodiments of the present application. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present application, several improvements and refinements can be made, and these improvements and refinements should also be regarded as the protection scope of the present application.
Claims
1. A method for object matching in a virtual game session, characterized in that, include: In response to an object matching request, a set of candidate objects to be involved in a virtual game match is obtained, wherein the object matching request is used to request matching of N game participating objects for the virtual game match, the game participating objects are game objects participating in the virtual game match, the game participating objects belong to a first game camp or a second game camp in the virtual game match, and the candidate object set includes M game candidate objects, where N is an integer greater than 1, and M is an integer greater than or equal to N; Obtaining a game participation attribute corresponding to each game candidate object in the candidate object set, wherein the game participation attribute includes a first participation attribute and a second participation attribute, the first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game game, the second participation attribute is the time attribute of the game candidate object participating in the virtual game game, and the time attribute is used to represent the ratio between the key duration of the game candidate object's active performance when participating in the virtual game game and the total duration of the game candidate object participating in the virtual game game; combining the first participation attribute and the second participation attribute, assigning a first number of game candidate objects in the candidate object set to the first game camp, and assigning a second number of game candidate objects in the candidate object set to the second game camp, wherein the sum of the first number and the second number is equal to N; When the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp satisfy the object matching condition, the first number of game candidate objects are determined as game participating objects belonging to the first game camp, and the second number of game candidate objects are determined as game participating objects belonging to the second game camp, wherein the object matching condition is set based on the first participation attribute and the second participation attribute.
2. The method according to claim 1, characterized in that, The combining the first participation attribute and the second participation attribute to assign a first number of game candidate objects in the candidate object set to the first game camp, and assigning a second number of game candidate objects in the candidate object set to the second game camp, comprises: Integrate the first participation attribute and the second participation attribute to obtain a camp contribution score corresponding to each of the game candidate objects, wherein the camp contribution score is positively correlated with the degree of contribution of the game candidate object to the game camp to which it belongs; According to the camp contribution scores, the first number of game candidate objects are assigned to the first game camp, and the second number of game candidate objects are assigned to the second game camp.
3. The method according to claim 2, characterized in that The step of assigning the first number of game candidate objects to the first game camp and assigning the second number of game candidate objects to the second game camp according to the camp contribution scores includes: When N game candidate objects are determined from the set of candidate objects, sort the N game candidate objects from high to low according to the camp contribution scores to obtain a sorted set of game candidate objects; Determine a preset allocation line from the set of game candidate objects, where, in the set of game candidate objects, the difference between the total camp contribution scores corresponding to the game candidate objects before and after the preset allocation line is less than or equal to a first preset threshold; Determine a current candidate object from the set of candidate objects according to the preset allocation line, and obtain the current first total score of the first game camp and the current second total score of the second game camp; Assign the current candidate object to the first game camp or the second game camp so that the first total score and the second total score are close; When the number of game candidate objects belonging to the first game camp is less than the first number, or the number of game candidate objects belonging to the second game camp is less than the second number, determine the next candidate object from the set of candidate objects according to the preset allocation line, and use the next candidate object as the current candidate object until the first number of game candidate objects have been assigned to the first game camp and the second number of game candidate objects have been assigned to the second game camp; When the number of game candidate objects belonging to the first game camp is equal to the first number and the number of game candidate objects belonging to the second game camp is equal to the second number, determine that the first number of game candidate objects have been assigned to the first game camp and the second number of game candidate objects have been assigned to the second game camp.
4. The method according to claim 2, characterized in that Before determining that the first number of game candidate objects are game participation objects belonging to the first game camp and that the second number of game candidate objects are game participation objects belonging to the second game camp, the method further includes: Obtain a first total score corresponding to the first game camp and a second total score corresponding to the second game camp, where the first total score is the sum of the camp contribution scores corresponding to all game candidate objects belonging to the first game camp, and the second total score is the sum of the camp contribution scores corresponding to all game candidate objects belonging to the second game camp; When the difference between the first total score and the second total score is less than or equal to a second preset threshold, determine that the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp satisfy the object matching condition.
5. The method according to claim 2, wherein The step of assigning the first number of game candidate objects to the first game camp and the second number of game candidate objects to the second game camp according to the camp contribution scores includes: According to the camp contribution scores, the first quantity of game candidate objects with the score difference of the camp contribution scores less than or equal to the fourth preset threshold belong to the first game camp, and the second quantity of game candidate objects with the score difference of the camp contribution scores less than or equal to the fourth preset threshold belong to the second game camp.
6. The method according to claim 1, characterized in that The obtaining of the game participation attributes corresponding to each game candidate object in the candidate object set includes: When the number of game positions allowed to be configured by the game participation object in the virtual game session is greater than 1, obtain the pre-configured game positions for each game candidate object in the session. Obtain the game position attributes corresponding to each game candidate object, where the game participation attributes include the game position attributes, the game position attributes include the first position attribute and the second position attribute, the first position attribute is the historical performance when each game candidate object configures the game position for the session and participates in the virtual game session, and the second position attribute is the time position attribute of the game candidate object when configuring the game position for the session and participating in the virtual game session, and the time position attribute is used to represent the proportion between the key duration when the game candidate object is active when configuring the game position for the session and participating in the virtual game session and the total duration when the game candidate object configures the game position for the session and participates in the virtual game session.
7. The method according to claim 6, wherein The obtaining of the game position attributes corresponding to each game candidate object includes: In the case where the number of sessions in which the first candidate object configures the first session position and participates in the virtual game session is less than or equal to the third preset threshold, assign a first weight to the game position attributes corresponding to the first candidate object, where the M game candidate objects include the first candidate object, and the game position for the session includes the first session position; In the case where the number of sessions in which the second candidate object configures the second session position and participates in the virtual game session is greater than the third preset threshold, assign a second weight to the game position attributes corresponding to the second candidate object, where the M game candidate objects include the second candidate object, the game position for the session includes the second session position, and the second weight is greater than the first weight.
8. The method according to any one of claims 1 to 7, characterized in that, In the process of obtaining the game participation attributes corresponding to each game candidate object in the candidate object set, the method further includes: In the case where the candidate object set includes at least two candidate objects in a common team and the game participation attributes corresponding to the at least two candidate objects are obtained, optimize the game participation attributes corresponding to the at least two candidate objects.
9. An object matching device for a virtual game session, characterized in that including: A first acquisition unit, configured to acquire a set of candidate objects to participate in a virtual game session in response to an object matching request, where the object matching request is used to request to match N game participating objects for the virtual game session, the game participating objects are game objects participating in the virtual game session, the game participating objects belong to a first game camp or a second game camp in the virtual game session, the set of candidate objects includes M game candidate objects, N is an integer greater than 1, and M is an integer greater than or equal to N; A second acquisition unit, configured to acquire game participation attributes corresponding to each game candidate object in the set of candidate objects, where the game participation attributes include a first participation attribute and a second participation attribute, the first participation attribute is used to represent the historical performance of the game candidate object when participating in the virtual game session, and the second participation attribute is a time attribute of the game candidate object participating in the virtual game session, and the time attribute is used to represent the ratio between the key duration when the game candidate object is active when participating in the virtual game session and the total duration of the game candidate object participating in the virtual game session; A combination unit, configured to combine the first participation attribute and the second participation attribute, and ascribe a first number of game candidate objects in the set of candidate objects to the first game camp, and ascribe a second number of game candidate objects in the set of candidate objects to the second game camp, where the sum of the first number and the second number is equal to N; A determination unit, configured to, when the game candidate objects belonging to the first game camp and the game candidate objects belonging to the second game camp meet the object matching condition, determine the first number of game candidate objects as game participating objects belonging to the first game camp, and determine the second number of game candidate objects as game participating objects belonging to the second game camp, where the object matching condition is set based on the first participation attribute and the second participation attribute.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, where the program, when run by an electronic device, executes the method described in any one of claims 1 to 8.
11. A computer program product comprising computer programs / instructions, characterized in that, The computer program / instructions, when executed by a processor, implement the steps of the method described in any one of claims 1 to 8.
12. An electronic device, comprising a memory and a processor, characterized in that, A computer program is stored in the memory, and the processor is configured to execute the method described in any one of claims 1 to 8 through the computer program.