A virtual player training method, game matching method and system
By configuring the reward level and generating an action list using random number markers, the system simulates the actions of virtual players with different personalities, thus solving the problem of rigid AI algorithm operations, improving user experience, and reducing CPU consumption.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TUYOO GAMES
- Filing Date
- 2022-08-26
- Publication Date
- 2026-07-14
AI Technical Summary
In existing technologies, virtual players controlled by AI algorithms operate in a rigid manner and consume a lot of CPU in game battle mode, which makes players aware of the robot's operation, reducing the willingness to match and the user experience.
By configuring the placement of game elements based on profitability and using random numbers to mark the game elements and their placement positions to generate an action list, the system simulates the actions of virtual players with different personalities, thereby reducing CPU usage.
It enables diverse operations for virtual players, increases the willingness and participation of real players in matchmaking, and reduces the computational burden on the CPU.
Smart Images

Figure CN117654059B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a virtual player training method, a game matching method, a training device, a matching system, a computing device, and a readable storage medium. Background Technology
[0002] In the game's battle mode, when there are few players in the early stages, matchmaking usually involves real players being matched with virtual players based on AI algorithms in order to retain those players.
[0003] However, virtual players created by typical AI algorithms tend to have rigid and predictable game controls. The AI computation process consumes a lot of CPU, and sensitive players can detect that it is a robot, which reduces the willingness to match with other players, affects player participation, and results in a poor user experience.
[0004] Therefore, how to solve the above problems has become a technical problem that urgently needs to be solved by those skilled in the art. Summary of the Invention
[0005] The purpose of this invention is to provide a virtual player training method, a game matching method, a training device, a matching system, a computing device, and a readable storage medium.
[0006] To address the above problems, a first aspect of the present invention provides a virtual player training method, comprising:
[0007] The placement of game elements is configured based on profitability;
[0008] Use random numbers to mark all game elements and their corresponding placement positions, and generate an operation list;
[0009] The profitability is defined as the ability of a game element to generate game benefits based on its placement position during the game.
[0010] In some embodiments, the placement of game elements in the game is configured based on the degree of benefit control to obtain a game strategy; wherein the game strategy corresponds to the preset personality of the virtual player.
[0011] In some embodiments, the game strategy includes splicing or combining game elements to obtain corresponding game benefits.
[0012] In some embodiments, the operation list includes a multidimensional array, which includes the position information and identification information of game elements; wherein each array corresponds to the operation steps of the virtual player.
[0013] In some embodiments, the random number is a pseudo-random number.
[0014] According to a second aspect of the present invention, a game matching method is provided, comprising:
[0015] When matching players, virtual players trained using the aforementioned virtual player training method are randomly inserted, based on the fact that the game's preset matching time has been exceeded.
[0016] According to a third aspect of the present invention, a virtual player training device is provided, comprising:
[0017] The control module configures the placement of game elements based on profitability.
[0018] The marking module uses random numbers to mark all game elements and their corresponding placement positions.
[0019] The list module generates a list of operations;
[0020] The profitability is defined as the ability of a game element to generate game benefits based on its placement position during the game.
[0021] According to a fourth aspect of the present invention, a game matching system is provided, comprising:
[0022] The judgment module is used to determine the matching time when matching players.
[0023] The insertion module randomly inserts virtual players trained according to the virtual player training method described in claim 1, based on the game's preset matching time.
[0024] According to a fifth aspect of the present invention, a computing device is provided, including a memory, a processor, and computer instructions stored in the memory and executable on the processor, wherein the processor, when executing the instructions, implements the steps of any of the methods described above.
[0025] According to a sixth aspect of the present invention, a computer-readable storage medium is provided, wherein the instructions, when executed by a processor, implement the steps of any of the methods described above.
[0026] The above-described technical solution of the present invention has the following beneficial technical effects:
[0027] This application provides a virtual player training method, comprising: configuring the placement positions of game elements based on profitability; marking all game elements and their corresponding placement positions using random numbers and generating an operation list; wherein, profitability is defined as the ability of a game element to obtain game benefits based on its placement position during the game. In this application, on the one hand, by configuring profitability, the operations of players with different personalities in placing game elements during the game can be simulated, thus obtaining virtual players with different game styles; on the other hand, by recording game elements and their corresponding placement positions using random numbers and generating an operation list for the virtual player, the operation steps of the virtual player can be recorded, and the operation can be reconstructed using this operation list, without requiring real-time calculation and reducing CPU usage. Attached Figure Description
[0028] Figure 1 This is a structural block diagram of a computing device according to a first embodiment of the present invention;
[0029] Figure 2 This is a flowchart of a virtual player training method according to an embodiment of the present invention;
[0030] Figure 3 This is a schematic diagram of the game interface of a virtual player training method according to an embodiment of the present invention;
[0031] Figure 4 This is a schematic diagram of a game interface for a virtual player training method according to another embodiment of the present invention;
[0032] Figure 5 This is a schematic diagram of the game interface of a virtual player training method according to another embodiment of the present invention;
[0033] Figure 6 This is a structural block diagram of a virtual player training device according to an embodiment of the present invention;
[0034] Figure 7 This is a structural block diagram of a game matching system according to an embodiment of the present invention. Detailed Implementation
[0035] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to specific embodiments and the accompanying drawings. It should be understood that these descriptions are merely exemplary and not intended to limit the scope of the invention. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concept of the invention.
[0036] Many specific details are set forth in the following description to provide a full understanding of this application. However, this application can be implemented in many other ways different from those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this application; therefore, this application is not limited to the specific embodiments disclosed below.
[0037] The terminology used in one or more embodiments of this application is for the purpose of describing particular embodiments only and is not intended to limit the scope of one or more embodiments of this application. The singular forms “a,” “the,” and “the” used in one or more embodiments of this application and in the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” used in one or more embodiments of this application refers to and includes any or all possible combinations of one or more associated listed items.
[0038] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this application, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this application, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "in response to a determination".
[0039] Figure 1 A structural block diagram of a computing device 100 according to an embodiment of this application is shown. The components of the computing device 100 include, but are not limited to, a memory 110 and a processor 120. The processor 120 is connected to the memory 110 via a bus 130, and a database 150 is used to store data.
[0040] The computing device 100 also includes an access device 140, which enables the computing device 100 to communicate via one or more networks 160. Examples of these networks include a Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 140 may include one or more of any type of wired or wireless network interface (e.g., a Network Interface Card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) interface, a Wi-MAX interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.
[0041] In one embodiment of this application, the aforementioned components of the computing device 100 and Figure 1Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 1 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this application. Those skilled in the art can add or replace other components as needed.
[0042] The computing device 100 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or PCs. The computing device 100 can also be a mobile or stationary server.
[0043] Among them, processor 120 can execute Figure 2 The steps in the virtual player training method shown. Figure 2 A flowchart of a virtual player training method according to an embodiment of this application is shown, including steps 101 to 102.
[0044] S101. Configure the placement of game elements based on profitability;
[0045] This application includes a virtual player training method for match-3 games. Match-3 games are a type of puzzle game where players match and eliminate adjacent game elements, including fruits, gems, animal heads, and building blocks, to gain game points. The game interface of match-3 games also includes game elements arranged according to preset rules, such as Tetris blocks.
[0046] The yield score is used to control the placeable positions of game elements on the game interface; it can be understood that the yield score represents the ability of a game element to generate revenue in different placement positions on the game interface, according to the elimination game rules.
[0047] In some embodiments, the game strategy includes splicing or combining game elements to obtain corresponding game benefits; wherein, in the elimination game, the benefit level is represented by the scoring ability.
[0048] In some embodiments, the placement of game elements in the game is configured based on the degree of benefit control to obtain a game strategy; wherein the game strategy corresponds to the personality of the virtual player.
[0049] In one exemplary embodiment provided in this application, reference is made to... Figure 3-4 , Figure 3The illustration shows the interface of the Tetris-like elimination game of this application, which includes game elements of various shapes. Specifically, a2 is a large block game element composed of four small blocks, and c1, c2, and c3 are the possible placement positions of this game element. The different placement positions of the game elements in the game interface correspond to different scores, and the scores are related to the elimination rules of splicing or combining game elements.
[0050] Virtual players' personalities can be trained as needed, including but not limited to cautious and reckless personalities. The following specific examples use cautious and reckless personalities as illustrations:
[0051] Further, please refer to the table below:
[0052]
[0053] Table 1
[0054] In Table 1, game element a2 corresponding to serial number 2 is used as an example, and reference is made to... Figure 3 The game element a2 can be placed in positions c1, c2, and c3. a2 is a game element that is falling within the game interface and can be placed in positions c1, c2, and c3. The coordinates of position c1 are (7, 3), the coordinates of position c2 are (6, 5), and the coordinates of position c3 are (3, 6).
[0055] Furthermore, in positions c1, c2, and c3, based on the splicing or combination rules between elements, placing game element a2 in position c1 can directly eliminate the eighth row of game elements on the game interface. Figure 4 The X region. Therefore, based on the survival-oriented virtual player benefit configuration, game element a2 is placed in position c1, as follows. Figure 4 The placement effect shown illustrates a fast-elimination game strategy, used to eliminate game elements promptly (the game elements in the eighth row of the game interface will be eliminated later) to quickly gain game benefits. Similarly, based on the survival-oriented virtual player's benefit configuration, all game elements are assigned corresponding placement positions.
[0056] The configured table is shown below:
[0057] Serial Number Location element 1 (1,6) a1 2 (7,3) a2 3 (4,2) a3 …… …… ……
[0058] Table 2
[0059] In Table 2, the game elements are configured according to the profit level. Game element a1 is placed at position [1, 6]; game element a2 is placed at position c1[7, 3] (the seventh row and third column of the game interface); game element a3 is placed at position [4, 2]. It should be noted that the position coordinates are based on the upper left corner of the four small square units.
[0060] In the reckless virtual player training method, game element a2 corresponding to number 2 is also used as an example, and references are made to... Figure 3 and Figure 5 The game element a2 can be placed in positions c1, c2, and c3. a2 is a game element that is falling within the game interface and can be placed in positions c1, c2, and c3. The coordinates of position c1 are (7, 3), the coordinates of position c2 are (6, 5), and the coordinates of position c3 are (3, 6).
[0061] Furthermore, among positions c1, c2, and c3, based on the splicing or combination rules between elements, placing game element a2 at position c2 results in the closest possible elimination of the seventh and eighth rows of game elements on the game screen under the elimination rules (there is a chance to eliminate the seventh and eighth rows of game elements in subsequent game progress), that is... Figure 5 The Y region. Therefore, based on the reckless virtual player's reward configuration, game element a2 is placed at position c2 to obtain the highest reward, in order to strive for the maximum game reward. Similarly, based on the reckless virtual player's reward configuration, all game elements are assigned corresponding placement positions.
[0062] The configured table is shown below:
[0063] Serial Number Location element 1 (1,6) a1 2 (6,5) a2 3 (3,1) a3 …… …… ……
[0064] Table 3
[0065] In Table 3, the game elements are configured according to the profit level. Game element a1 is placed at position [1, 6]; game element a2 is placed at position c2[6, 5] (the sixth row and fifth column of the game interface); game element a3 is placed at position [3, 1]. It should be noted that the position coordinates are based on the upper left corner of the four small square units.
[0066] S102. Use random numbers to mark game elements and their corresponding placement positions and generate an operation list; where, the profitability is defined as the ability of a game element to obtain game benefits based on the placement position of the game element during the game.
[0067] One example provided in this application is shown in the table below:
[0068]
[0069]
[0070] Table 4
[0071] In Table 4, the game elements and their placement positions of the reckless virtual player were marked using the random number 77, and the following operation list was generated, as shown in the table below:
[0072] [Location.Identifier] [(1,6),a1] [(6,5),a2] [(3,1),a3] ……
[0073] Table 5
[0074] Operation list 5 is the training result table for the reckless virtual player, in which each game element and its placement position are marked with a random number 77.
[0075] Table 5 includes at least the arrays [(1,6),a1], [(6,5),a2], and [(3,1),a3], where each array corresponds to an operation step of the corresponding virtual player. Furthermore, during game matching, when the pseudo-random generator generates a pseudo-random number 77 based on the random number seed, it uses this pseudo-random number to obtain the aforementioned operation list of the virtual player corresponding to their personality, and applies it to game battles.
[0076] In this application, on the one hand, by configuring the benefit level, the operation of placing game elements by players with different personalities during the game can be simulated to obtain virtual players with different game styles; on the other hand, by recording game elements and their corresponding placement positions by random numbers and generating an operation list of virtual players, the operation steps of virtual players can be recorded, and the operation can be restored by using this operation list without real-time calculation, thus reducing CPU usage.
[0077] In some embodiments, the random number is a pseudo-random number, which is generated by a pseudo-random number generator.
[0078] Furthermore, the random seed is used as input to the pseudo-random number generator to generate corresponding pseudo-random numbers.
[0079] Pseudo-random number generators (Deterministic Random Bit Generators (DRBGs)) are called deterministic random number generators because, given a fixed input (random number seed), their output is also determined; the same input will inevitably lead to the same output. These random number generators generally rely solely on software algorithms, have low system requirements, and are widely applicable. In this application, given a fixed random number seed, a pseudo-random number generator can generate pseudo-random numbers, which are then used to match a trained operation list and applied to game battles.
[0080] Pseudo-random numbers are numerical sequences generated through a mathematical formula or algorithm. Although pseudo-random numbers are not random in a mathematical sense, they can be used as true random numbers if they pass statistical tests.
[0081] Pseudo-random number generators include: linear congruential method, BBS, block cipher forms, ANIS X.917, one-way hash function, and cryptography.
[0082] In some embodiments, random numbers are used to mark the placement position of the game element corresponding to the highest reward within the game interface.
[0083] Furthermore, the operation list is used to restore operations during game battles.
[0084] Furthermore, during game matchmaking, a pseudo-random number generator produces pseudo-random numbers based on a random number seed. These pseudo-random numbers are then used to obtain the virtual player's action list, which is then applied to game battles.
[0085] In some embodiments, the operation list includes a multidimensional array, which includes the position information and identification information of the game element; wherein, the position information is the placement position of the game element, and the identification information is the ID identifier of the game element; the operation list includes a collection of arrays, and each array corresponds to the operation steps of the virtual player.
[0086] This application provides a game matching method, including:
[0087] When matching players for a game, virtual players trained using the aforementioned virtual player training method are randomly inserted, based on the game's preset matching time.
[0088] In some embodiments, virtual players with different personalities are inserted to compete against each other, based on the game's preset matchmaking time.
[0089] Specifically, when game matchmaking begins, if no players have entered the matchmaking process before the game's preset matchmaking time, virtual players (also known as AI bots) with different personalities are inserted to simulate real matchmaking operations. Specifically, a pseudo-random number generator generates pseudo-random numbers based on a random number seed, uses these pseudo-random numbers to obtain the aforementioned list of actions performed by the virtual players, and applies it to game battles.
[0090] In some implementations, the game waiting time can be 10 seconds. If no player enters the room within 10 seconds, the system will match virtual players with different personalities to enter the game room.
[0091] In this application, firstly, by randomly selecting players with different personalities to join the game, the willingness and participation of real users to match can be increased; secondly, by controlling random numbers to obtain the operation list of virtual players and restore the operation steps recorded during operation training, the CPU usage can be reduced without real-time calculation during the battle; thirdly, without considering the device and system environment, the actual personality of each virtual player is fixed according to different benefits, which is closer to real players; fourthly, using the operation list to reproduce the operation of virtual players has the advantages of high flexibility and pure data-driven approach, and placing the operation list at the front end of the game allows for single-player battles.
[0092] refer to Figure 6 This application provides a virtual player training device. Figure 6 A schematic diagram of the structure of a virtual player training device according to an embodiment of this application is shown. Figure 6 As shown, the device includes:
[0093] The control module configures the placement of game elements based on profitability.
[0094] The marking module uses random numbers to mark all game elements and their corresponding placement positions.
[0095] The list module generates a list of operations;
[0096] The profitability is defined as the game profitability of eliminating game elements based on their placement position during the game.
[0097] The above is an illustrative scheme of a virtual player training device according to this embodiment. It should be noted that the technical solution of this virtual player training device and the technical solution of the virtual player training method described above belong to the same concept. For details not described in detail in the technical solution of this virtual player training device, please refer to the description of the technical solution of the virtual player training method described above.
[0098] This application provides a game matchmaking system. Figure 7 A schematic diagram of the structure of a game matching system according to an embodiment of this application is shown. Figure 7 As shown, the device includes:
[0099] The judgment module is used to determine the matching time when matching players.
[0100] The insertion module randomly inserts virtual players trained using the virtual player training method described above, based on the game's preset matching time.
[0101] The above is an illustrative scheme of a game matching system according to this embodiment. It should be noted that the technical solution of this game matching system and the technical solution of the game matching method described above belong to the same concept. For details not described in detail in the technical solution of this game matching system, please refer to the description of the technical solution of the game matching method described above.
[0102] According to another aspect of the present invention, a computing device is provided, including a memory, a processor, and computer instructions stored in the memory and executable on the processor, wherein the processor executes the instructions to implement the steps of any of the methods described above.
[0103] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the instructions, when executed by a processor, implement the steps of any of the methods described above.
[0104] It should be understood that the specific embodiments described above are merely illustrative or explanatory of the principles of the invention and do not constitute a limitation thereof. Therefore, any modifications, equivalent substitutions, improvements, etc., made without departing from the spirit and scope of the invention should be included within the protection scope of the invention. Furthermore, the appended claims are intended to cover all variations and modifications falling within the scope and boundaries of the appended claims, or equivalent forms of such scope and boundaries.
[0105] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium belongs to the same concept as the technical solution of the method for ensuring the security of enterprise login credentials described above. Details not described in detail in the technical solution of the storage medium can be found in the description of the technical solution of the method for ensuring the security of enterprise login credentials described above.
[0106] The foregoing has described specific embodiments of this application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired results. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0107] Computer instructions include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. Computer-readable media can include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in computer-readable media can be appropriately added to or removed according to the requirements of legislation and patent practice in a jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electrical carrier signals and telecommunication signals.
[0108] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0109] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0110] The preferred embodiments disclosed above are merely illustrative of this application. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to specific implementations. Clearly, many modifications and variations can be made based on the content of this application. These embodiments are selected and specifically described in this application to better explain the principles and practical applications of this application, thereby enabling those skilled in the art to better understand and utilize this application. This application is limited only by the claims and their full scope and equivalents.
Claims
1. A virtual player training method, characterized in that, include: The placement of game elements is configured based on profitability, including: controlling the placement of game elements in the game based on profitability to obtain game strategies; wherein, the game strategies correspond to the preset personality of the virtual player; the game strategies include splicing or combining game elements to obtain corresponding game profitability. All game elements and their corresponding placement positions are marked with random numbers, and an operation list is generated; the random numbers are pseudo-random numbers. The operation list includes a multi-dimensional array, which includes the position information and identification information of game elements; each array corresponds to the operation steps of the virtual player. The "yield" refers to the ability of a game element to generate game rewards based on its placement position during gameplay.
2. A game matching method, characterized in that, include: When matching players, virtual players trained according to the virtual player training method described in claim 1 are randomly inserted based on the game's preset matching time.
3. A virtual player training device, characterized in that, include: The control module configures the placement of game elements based on profitability, including: controlling the placement of game elements in the game based on profitability to obtain game strategies; wherein, the game strategies correspond to the preset personality of the virtual player; the game strategies include splicing or combining game elements to obtain corresponding game profitability. The marking module uses random numbers to mark all game elements and their corresponding placement positions; the random numbers are pseudo-random numbers. The list module generates an operation list based on the game elements marked by the tag module and their placement positions. The operation list includes a multi-dimensional array, which includes the position information and identification information of the game elements. Each array corresponds to the operation steps of the virtual player. The "yield" refers to the ability of a game element to generate game rewards based on its placement position during gameplay.
4. A game matchmaking system, characterized in that, include: The judgment module is used to determine the matching time when matching players. The insertion module randomly inserts virtual players trained according to the virtual player training method described in claim 1, based on the game's preset matching time.
5. A computing device, comprising a memory, a processor, and computer instructions stored in the memory and executable on the processor, wherein the processor, when executing the instructions, performs the steps of the method according to any one of claims 1-2.
6. A computer-readable storage medium storing computer instructions, characterized in that, When executed by the processor, this instruction implements the steps of the method described in claim 1 or 2.
Citation Information
Patent Citations
Robot player control method and device
CN108553903A
Game strategy model generation method and control method of intelligent agent in game
CN114344889A