Game matching test method and related device

By generating simulated match requests in an independent test server, the problems of complex game matchmaking service logic and online test pollution are solved, enabling flexible testing and accurate result analysis, and supporting multiple test scenarios.

CN115445209BActive Publication Date: 2025-11-04BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211092507.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-07
Publication Date
2025-11-04
Estimated Expiration
2042-09-07

AI Technical Summary

Technical Problem

Existing game matchmaking services have complex logic, are easily affected by environmental factors, and are difficult to test in terms of functionality and verify in terms of matchmaking algorithms. Furthermore, online server testing can pollute the online environment, making it difficult to achieve effective isolation and compatibility.

Method used

By receiving event data from the game client, a simulated match request is generated and sent to an independent test server for matching and test analysis to generate the first test result data, thus avoiding direct impact on the online server.

Benefits of technology

It enables flexible testing of game matchmaking services, enhances scalability, reduces the impact on online servers, provides accurate test results, and supports the verification and stress testing of different algorithm strategies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115445209B_ABST
    Figure CN115445209B_ABST
Patent Text Reader

Abstract

The application provides a game matching test method and related equipment. The game matching test method execution process includes: receiving game event data sent by a game client, the game event data being associated with a game matching request of the game client; generating a simulated matching request based on the game event data; sending the simulated matching request to at least one to-be-tested matching model, receiving a matching result of the at least one to-be-tested matching model; and performing test analysis on the matching result to obtain first test result data. The whole process can flexibly set the to-be-tested matching model, so that the scalability of the scheme is enhanced, and each to-be-tested matching model is independent of an online server, so that the online server is not affected during the test process.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data processing, and particularly relates to a game matching test method and related equipment. BACKGROUND

[0002] With the development of the network level, there are more and more types of network games at present, and when players play games, matching services are provided for the players so that the players can play smoothly.

[0003] However, in the process of the existing game matching service, the following situations exist:

[0004] 1. The matching request has a state, and each matching request will interfere with each other;

[0005] 2. There are multiple zones, the player levels of each zone are different, and there are certain isolation conditions between the players of different zones;

[0006] 3. The matching rules are very complex, and there are various restrictions on the construction of matching combinations.

[0007] Therefore, the game matching service logic is complex, the matching result is easily affected by various factors in the environment, and it is difficult to perform function testing and offline verification of the matching algorithm. SUMMARY

[0008] Therefore, the game matching service logic is complex, the matching result is easily affected by various factors in the environment, and it is difficult to perform function testing and offline verification of the matching algorithm.

[0009] In order to achieve the above purpose, a first aspect of the present application provides a game matching test method, comprising:

[0010] receiving game event data sent by a game client, the game event data being associated with a game matching request of the game client;

[0011] generating a simulated matching request based on the game event data;

[0012] sending the simulated matching request to at least one to-be-tested matching model, and receiving a matching result of the at least one to-be-tested matching model;

[0013] testing and analyzing the matching result to obtain first test result data.

[0014] Based on the same inventive concept, a second aspect of the present application provides a game matching test device, comprising:

[0015] a receiving module configured to receive game event data sent by a game client, the game event data being associated with a game matching request of the game client;

[0016] request generation module configured to generate a simulation matching request based on the game event data;

[0017] a matching module configured to send the simulation matching request to at least one to-be-tested matching model, and receive a matching result of the at least one to-be-tested matching model;

[0018] a testing module configured to perform testing analysis on the matching result to obtain first testing result data.

[0019] Based on the same inventive concept, a third aspect of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method of the first aspect when executing the program.

[0020] Based on the same inventive concept, a fourth aspect of the present application provides a non-transitory computer-readable storage medium, which stores computer instructions for causing a computer to execute the method of the first aspect.

[0021] As can be seen from the above, the game matching test method and related device provided by the present application can generate a corresponding simulation matching request based on game event data fed back by a game client, send the simulation matching request to at least one to-be-tested matching model for matching, then receive a matching result of the at least one to-be-tested matching model, and perform testing analysis according to the matching result to determine first testing result data. In this way, the process of simulation matching and testing using the simulation matching request is completed, the replay of game events is realized, and then the first testing result data of the game is obtained. The entire process can flexibly set the to-be-tested matching model, so that the scalability of the present application is enhanced, and the to-be-tested matching model and the online server are independent of each other, so that the online server is not affected during the testing process. BRIEF DESCRIPTION OF DRAWINGS

[0022] In order to more clearly illustrate the technical solutions in the present application or related art, the following will briefly introduce the drawings needed to be used in the embodiments or related art descriptions. Obviously, the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor based on these drawings.

[0023] Figure 1 Application scenario diagram of the embodiments of the present application;

[0024] Figure 2A Flowchart of the game matching test method of the embodiments of the present application;

[0025] Figure 2B An execution process schematic diagram of a game matching test method of an embodiment of the present application;

[0026] Figure 2C An execution process schematic diagram of a request simulation service of an embodiment of the present application;

[0027] Figure 2D A line graph of a matching duration of a big board of an embodiment of the present application;

[0028] Figure 2E A line graph of a matching duration of each rank of an embodiment of the present application;

[0029] Figure 2F A line graph of a second matching rate and a timeout rate of a big board of an embodiment of the present application;

[0030] Figure 2G A line graph of a second matching rate of each rank of an embodiment of the present application;

[0031] Figure 2H A line graph of a timeout rate of each rank of an embodiment of the present application;

[0032] Figure 2I A line graph of a cross-rank rate of an embodiment of the present application;

[0033] Figure 3 A structural block diagram of a game matching test device of an embodiment of the present application;

[0034] Figure 4 A structural schematic diagram of an electronic device of an embodiment of the present application. DETAILED DESCRIPTION

[0035] The principles and spirits of the present application will be described below with reference to a number of exemplary embodiments. It should be understood that these embodiments are given only to enable those skilled in the art to better understand and implement the present application, and do not limit the scope of the present application in any way. On the contrary, these embodiments are provided to make the present application more thorough and complete, and to fully convey the scope of the present application to those skilled in the art.

[0036] In this document, it should be understood that any number of elements in the drawings are used for illustration only and not limitation, and any naming is only for differentiation and does not have any limiting meaning.

[0037] Based on the description of the above background art, there are also the following situations in the related art:

[0038] There are several common methods for functional testing and algorithm verification of game matching services:

[0039] 1. Divide the game matching service into multiple modules, and perform functional testing on each module.

[0040] 2. Using offline data, simulating online server logic by scripts and outputting results to verify the matching algorithm.

[0041] 3. Building a similar service in the test environment to simulate the online environment as much as possible, and using the following methods to construct requests:

[0042] (1) According to experience and requirements, construct request cases by yourself;

[0043] (2) Reconstruct requests from offline data;

[0044] (3) Copy the traffic of online requests, and let the request service request the test environment at the same time.

[0045] For the above-described several common methods, there are the following shortcomings:

[0046] 1. Dividing modules for testing cannot test the functions of the complete service;

[0047] 2. The matching rules are complex, the use of offline data and scripts simulates the workload of the online server, and the device environment cannot be simulated (CPU, memory load), the simulation results and online results have a large gap;

[0048] 3. There is a large gap between the requests constructed according to experience and the real requests on the line, and only some basic matching logic can be tested, and the output results are far from the online results;

[0049] 4. The timeliness is poor when constructing requests from offline data;

[0050] 5. Using online server requests to test the test environment will pollute the online server, and it is not easy to isolate the online environment and the test environment, and it is not convenient to be compatible with the previous version when the environment is changed.

[0051] Based on the above-described situation, the principles and spirits of the present application will be explained in detail with reference to several representative embodiments of the present application.

[0052] Reference Figure 1This diagram illustrates an application scenario for the game matching testing method provided in this application. The application scenario includes a terminal device 101 (e.g., a player's terminal device with the game client installed), a server 102, and a data storage system 103. The terminal device 101, server 102, and data storage system 103 can all be connected via wired or wireless communication networks. The terminal device 101 includes, but is not limited to, desktop computers, mobile phones, mobile computers, tablets, media players, smart wearable devices, personal digital assistants (PDAs), or other electronic devices capable of performing the aforementioned functions. The server 102 and data storage system 103 can both be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.

[0053] Server 102 provides game matchmaking testing services to users of terminal device 101. Terminal device 101 has a client (e.g., a game client) installed that communicates with server 102. Users can send game event data to server 102 through the client. Server 102 has a testing environment similar to the online server, but independent of it. The following actions are performed in this testing environment: receiving game event data from the game client; generating a simulated matchmaking request based on the game event data; sending the simulated matchmaking request to at least one matchmaking model to be tested for matching, and receiving the corresponding matching results; performing test analysis based on the matching results to obtain first test result data, and visually displaying the first test result data. Data storage system 103 provides data storage support for the operation of server 102, for example, for storing the program code executed by server 102.

[0054] The following is combined Figure 1 The application scenarios described above illustrate the game matching test method according to exemplary embodiments of this application. It should be noted that the above application scenarios are merely shown to facilitate understanding of the spirit and principles of this application, and the embodiments of this application are not limited in any way. Rather, the embodiments of this application can be applied to any applicable scenario.

[0055] The application scenarios of the method implemented in this application include at least one of the following:

[0056] 1. The online server is the online matchmaking environment for the game client, while the test server is a test environment built to be as close as possible to the online matchmaking environment.

[0057] 2. Configure different algorithm strategies in the online server and the test server, and compare the matching results of the online server and the test server to verify the effectiveness of different algorithm strategies.

[0058] 3. New module features in the game client need to be tested using real traffic, utilizing both online and test servers.

[0059] 4. Before launching a new matching service / feature, you can use the online server and test server to simulate requests and verify stability, so as to discover problems in advance before going live.

[0060] 5. Set up a test server for the matching test environment of the unlaunched server. Reconstruct the corresponding requests using the received event tracking points on the test server to predict future traffic, performance and service stability.

[0061] 6. Conduct stress tests by simulating the game matchmaking process of the online server based on the test server.

[0062] This application provides a game matching test method, which is applied to a test server that is independent of the online server.

[0063] like Figure 2A As shown, the execution process of this game matching test method includes:

[0064] Step 201: Receive game event data sent by the game client, wherein the game event data is associated with the game matchmaking request of the game client.

[0065] In specific implementation, the game matchmaking request includes at least one of the following: game start request, game end request, game room change request, teammate change request, teammate add request, character selection request, level selection request, region selection request, background / clothing change request, item selection request, etc. Game matchmaking requests are not limited to the above categories and can be specifically set according to the design of the actual game software and the needs of the players.

[0066] In some embodiments, step 201 includes:

[0067] Step 2011: Receive game tracking data associated with the game matching request, which is sent asynchronously in real time by the game client.

[0068] In specific implementation, such as Figure 2B As shown, players can initiate game matchmaking requests through the game client installed on their terminal devices (e.g., Figure 2BThe matching process on the test server (start matching or stop matching) is asynchronous with the matching process on the online server in real time, thus avoiding any impact on the online server during the matching process.

[0069] In specific implementation, such as Figure 2B As shown, after the game client sends a game matchmaking request to the online server, the game client generates data corresponding to the game matchmaking request, integrates this data and sends it to the test server. The test server then generates corresponding game event tracking based on this integrated data. Figure 2B (Event tracking points in the data).

[0070] The game event tracking corresponds to the game matchmaking requests on the online server in real time. This ensures the timeliness of the simulated matchmaking requests built later and reduces the latency difference with the game matchmaking requests on the online server. In practice, the latency difference can be reduced to less than several hundred milliseconds.

[0071] Step 2012: Filter the game tracking data based on preset rules to determine the game event data.

[0072] In practice, the preset rules include event filtering and region / server filtering.

[0073] In some embodiments, event filtering includes: filtering out the game event needed at the current moment from historical game event tracking events. For example: StartMatch (game start tracking) and StopMatch (game stop tracking).

[0074] The region / server filtering includes: selecting game event tracking events corresponding to a predetermined region / server from the game event tracking events required at the current time, and using the obtained game event tracking events as the filtered game event tracking events.

[0075] By selecting game event tracking data for designated service regions, we can simulate different service regions when matching them with corresponding test servers. These service regions can be those with AI matchmaking services already implemented (e.g., the test service region, the Brazil service region) or those without (e.g., the Middle East service region, the Southeast Asia service region, etc.). Event tracking data from the former region can be used for algorithm performance prediction, while data tracking data from the latter region can be used for machine performance prediction.

[0076] By filtering as described above, some unimportant game event tracking can be removed, avoiding interference from these events. This makes the simulated matching requests built based on the filtered game event tracking more accurate, resulting in better testing performance.

[0077] Step 202, generating a simulation matching request based on the game event data.

[0078] Since the at least one simulation matching request generated according to the game event does not meet the test standard, it needs to be adjusted, and the adjustment includes: magnitude adjustment, regional service adjustment, etc. So that the simulation test process in the test server based on the simulation matching request after adjustment is more accurate, and the test result obtained is more accurate.

[0079] In some embodiments, step 202 is followed by:

[0080] Step A1, copying the simulation matching request to obtain a plurality of copied simulation matching requests.

[0081] In specific implementation, the process of the above step is also the process of magnifying the obtained simulation matching request. In the magnification process, the purpose of magnifying QPS (Queries-per-second) can be achieved. And in the copying process, the game room ID and the user ID will be adjusted, so as to avoid conflicts between multiple simulation matching requests.

[0082] Step A2, determining the regional service corresponding to each of the plurality of copied simulation matching requests, and merging at least one regional service to obtain a matching pool, so that the plurality of copied simulation matching requests are matched in the same matching pool.

[0083] If the at least one regional service obtained above is not merged, the simulation matching requests of different regional services will be matched in their respective matching pools directly in the matching service process in the test server, and there will be no cross. In this way, during the stress test, since the matching does not cross, the matching amount of the matching pool is always relatively small, which will hinder the stress test to a certain extent. In order to smoothly perform the stress test, it is necessary to place the simulation matching requests in the same matching pool for matching, so as to achieve the purpose of stress testing the matching pool.

[0084] In some embodiments, the merging process includes: determining the match address (MatchID) of the at least one regional service, and setting each match address to the same value. In this way, the purpose that each simulation matching request can be matched in the same matching pool is achieved.

[0085] In addition, the parameters of the above functions can be freely selected according to the configuration file.

[0086] In some embodiments, step 202 is followed by:

[0087] Step B1, randomly screening or discarding the obtained plurality of simulation matching requests to obtain at least one reduced simulation matching request.

[0088] In specific implementation, the above step is a process of reducing the magnitude of the obtained simulation matching request. In the process of reducing the magnitude, a predetermined proportion of simulation matching requests can be randomly discarded, or part of the simulation matching requests can be discarded according to a predetermined rule (for example, interval discard, interval interval and discard quantity are set according to actual conditions, or segmented discard, corresponding segmented proportion and discard quantity are set according to actual conditions).

[0089] Step B2, determining the area service corresponding to the at least one reduced simulation matching request respectively, and merging at least one area service to obtain a matching pool, so that the at least one reduced simulation matching request is matched in the same matching pool.

[0090] If the above obtained at least one area service is not merged, the simulation matching requests of different area services will be matched in their respective matching pools without crossing during the matching service process in the test server. Therefore, the matching amount of the matching pool is always relatively small, which will hinder the pressure test. In order to successfully perform the pressure test, the simulation matching requests need to be matched in the same matching pool, so as to achieve the purpose of pressure testing the matching pool.

[0091] In some embodiments, the merging process includes determining the match address (MatchID) of the at least one area service, and setting each match address to the same value. In this way, each simulation matching request can be matched in the same matching pool.

[0092] Step 203, sending the simulation matching request to at least one to-be-tested matching model, and receiving the matching result of the at least one to-be-tested matching model.

[0093] In specific implementation, a plurality of to-be-tested matching models are pre-set in the test server. During the sending process, the simulation matching request can be distributed, which can be one simulation matching request distributed to one to-be-tested matching model, or one simulation matching request distributed to a plurality of to-be-tested matching models. The specific distribution process can be performed according to the request matters of the simulation matching request and the test items to be tested. Figure 2CAs shown, the corresponding game tracking data is processed by event filtering, specifically by event name, server, etc.; then, based on the filtering results, corresponding simulated matching requests are constructed; finally, these simulated matching requests are forwarded to the corresponding matching model to be tested to complete the matching process.

[0094] Step 204: Perform test analysis on the matching results to obtain the first test result data.

[0095] In some embodiments, step 204 includes:

[0096] Step 2041: Collect the first log information from the matching results of the at least one matching model to be tested.

[0097] In practice, the evaluation of the matchmaking algorithm on the test server during the testing and analysis process is mainly based on two aspects: matchmaking results and match performance. Matchmaking results data includes: player win rate, player retention rate, player satisfaction, and player complaint rate. Optimizing matchmaking results is the ultimate goal of the matchmaking algorithm. However, these metrics are often difficult to optimize. On the one hand, the relationship between these metrics and the optimization points that the matchmaking algorithm focuses on is not significant. For example, it is difficult to intuitively infer the relationship between player retention rate and metrics such as matchmaking time and match rate per second. These are important but not intuitive indirect metrics. On the other hand, observing these metrics is also cumbersome and unstable. Player retention rate may require observation for several days (second-day retention, 3-day retention, 7-day retention, etc.) or even a month (monthly retention). Moreover, even with the same matchmaking algorithm, matchmaking results are easily affected by the environment and often fluctuate. For example, player complaint rate and satisfaction are often affected by factors such as events and service stability, and the reasons for these fluctuations are unrelated to the matchmaking algorithm. Based on the above, this embodiment preferably performs test analysis on the matching results.

[0098] In practice, during the matching process, logs are generated for each key step (such as request time, service address, matching time, matching result, result generation time, game room number, teammate information, game level, and various parameters of the game execution). These logs are also present in the matching results, so these log information can be directly collected from the matching results as the primary log information.

[0099] Step 2042: Test the first log information to obtain the first test result data.

[0100] In some embodiments, step 2042 includes:

[0101] Step 20421: Obtain the key log from the first log information.

[0102] In some embodiments, the key logs include at least one of the following:

[0103] Recall logs (Recall), obtaining all recalled room combinations for constructing a game from the first log information as recall logs. The result of constructing a game includes: all recalled room combinations, and each room combination includes information of each room in the combination (room number, matching type, waiting time, player rating, etc.).

[0104] Precision logs (Predict), obtaining at least one recalled game room combination from the recall logs, and recording the process of selecting the best from the at least one recalled game room combination as precision logs. The process of selecting the best includes: selecting the best room combination from the at least one recalled game room combination, and sending the best room combination to the game client. That is, for recalled room combinations, precision needs to select the best from the recalled combinations, and select the best room combination for submission.

[0105] Request logs (StartMatch, StopMatch), obtaining record information in the matching model to be tested from the first log information as request logs. That is, the interface of the AI matching service requests the corresponding logs, and the request logs are mainly used for monitoring and troubleshooting.

[0106] Submit logs (SubmitMatch), obtaining record information of the response game room combination fed back by the matching model to be tested to the game client from the first log information as submit logs. The submit logs are used for monitoring and troubleshooting.

[0107] Step 20422, importing the key logs into a data stream of key logs through data integration, performing data processing on the data in the data stream to obtain processed key logs, and storing the processed key logs in an offline database.

[0108] Step 20423, calling the processed key logs from the offline database for testing analysis to obtain first testing result data.

[0109] By analyzing the key log data (mainly recall logs and precision logs) in the database, the matching result can be calculated. According to the matching result, the corresponding board can be established for visual display.

[0110] In some embodiments, the first testing result data includes matching result data.

[0111] The matching result data includes at least one of the following: matching duration, cross-segment rate, second matching rate, and timeout rate.

[0112] wherein, the matching duration: the time required for the player to complete the matching from entering the matching;

[0113] the cross-segment rate: the proportion of the number of matches between the player and opponents with different segment levels in the total number of matches;

[0114] the second-matching rate: the frequency of the matching duration of the player being less than a first predetermined duration (e.g., 10s);

[0115] the overtime rate: the frequency of the matching duration of the player being greater than a second predetermined duration (e.g., 60s).

[0116] Compared with the matching battle result data, the matching result data is directly and intuitively calculated. Moreover, the matching result data is also related to some battle results to some extent. For example, the relationship among the matching duration, the success rate, and the player complaint rate - the longer the matching duration, the higher the failure rate, and the higher the player complaint rate. Therefore, the test of the matching result is more intuitive and explicit, and the performance of the game software or the game function module can be better known based on the matching result data.

[0117] The specific lookboard examples of the matching result data include Figure 2D to 2I the line chart shown in the figure, specifically:

[0118] Figure 2D the line chart of the matching duration of the big board of the embodiment of the present application;

[0119] Figure 2E the line chart of the matching duration of each segment level of the embodiment of the present application;

[0120] Figure 2F the line chart of the second-matching rate and the overtime rate of the big board of the embodiment of the present application;

[0121] Figure 2G the line chart of the second-matching rate of each segment level of the embodiment of the present application;

[0122] Figure 2H the line chart of the overtime rate of each segment level of the embodiment of the present application;

[0123] Figure 2I the line chart of the cross-segment rate of the embodiment of the present application.

[0124] The line charts are only one kind of situation of the matching result, and do not limit the specific data of the present scheme. The specific style of the line chart will be changed according to the matching result of various game software or function modules obtained by the test.

[0125] In some embodiments, the first test result data includes a machine performance index;

[0126] The machine performance indicators include at least one of the following: number of users / number of rooms in matching, matching cycle delay, matching success rate, and matching waiting time length.

[0127] In a specific implementation, because a new algorithm strategy not only affects an algorithm result, but also affects machine performance. A new algorithm strategy is tested on a test server, and a history request in a region service in an online server is played back to estimate an influence of the new algorithm strategy on machine performance in a formal environment.

[0128] The number of users / number of rooms in matching, the number of users in matching, and the number of rooms in matching can mainly reflect whether there is a backlog.

[0129] Matching cycle delay: time required for a matching service to complete a complete recall.

[0130] Matching success rate: (number of matching result submitters / number of people starting matching) * 100%.

[0131] Matching waiting time length: time required for a player to submit a result from entering matching.

[0132] In some embodiments, the method further includes:

[0133] Step 205: collecting second log information in an online matching process of a game request corresponding to the game event data in the online server.

[0134] In a specific implementation, the log generated in the online server is used as the second log information, and the second log information includes a key log including at least one of a recall log, a fine arrangement log, a request log, or a submission log corresponding to the second log information. The description scheme of the key log is the same as that of the first log information, and thus is not described herein.

[0135] Step 206: testing the second log information to obtain second test result data, comparing the second test result data with the first test result data, and determining accuracy of the first test result data according to a comparison result.

[0136] The above scheme of the embodiment has the following advantages:

[0137] 1. The method is flexible and has strong expandability.

[0138] A. A developer can freely deploy multiple request construction services to reconstruct corresponding simulation matching requests based on a buried point event and send the requests, and different processing logics can be used between the multiple request construction services.

[0139] B. The relationship between the request simulation service and the matching service (e.g., the ability to match the corresponding test matching model for the simulation matching request) can be freely edited. The number of connections between them is N:M, where N is the scaling factor of the simulation matching request and M is the scaling factor of the test matching model.

[0140] 2. The service requests to online servers have minimal pollution and are less invasive.

[0141] A. Compared to synchronous requests, the asynchronous request matching process between the test server and the production server is more likely to affect the logical execution process of the production server.

[0142] B. In the online server, the request service and the matching service are upstream and downstream of each other—the request service sends requests and handles request exceptions. In the design of this application, the request simulation service in the test server consumes the instrumentation points (similar to service logs) of the online request service in a one-way manner. Even if the request simulation service in the test server malfunctions, it will not affect the operation of the online environment.

[0143] C. Even if the request logic of the test server needs to be customized, there is no need to change the request service in the production environment. In practice, some customized requirements will inevitably arise, such as randomly dropping 50% of the traffic and sending only half of the requests to the test server. In this case, the customized logic can simply be implemented in the request simulation service.

[0144] It should be noted that the method in this embodiment can be executed by a single device, such as a computer or server. The method can also be applied in a distributed scenario, where multiple devices cooperate to complete the task. In such a distributed scenario, one of these devices may execute only one or more steps of the method in this embodiment, and the multiple devices will interact with each other to complete the method described.

[0145] It should be noted that the above description describes some embodiments of this application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in a different order than that shown in the above embodiments and still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0146] Based on the same inventive concept, corresponding to the game matching test method of any of the above embodiments, this application also provides a game matching test device.

[0147] refer to Figure 3 The game's matchmaking testing device includes:

[0148] Receiving module 31 is used to receive game event data sent by the game client, wherein the game event data is associated with the game matching request of the game client;

[0149] Request generation module 32 is used to generate simulated match requests based on the game event data;

[0150] The matching module 33 is used to send the simulated matching request to at least one matching model to be tested, and to receive the matching result of the at least one matching model to be tested;

[0151] The testing module 34 is used to perform test analysis on the matching results to obtain the first test result data.

[0152] In some embodiments, the receiving module 31 includes:

[0153] The receiving unit is used to receive game tracking data associated with the game matching request, which is sent asynchronously in real time by the game client.

[0154] The filtering unit is used to filter the game tracking data based on preset rules to determine the game event data.

[0155] In some embodiments, the apparatus further includes:

[0156] The scale processing module is used to copy the simulated matching request to obtain multiple copied simulated matching requests.

[0157] The region service merging module is used to determine the region service corresponding to the multiple replicated simulated matching requests, and merge at least one region service to obtain a matching pool, so that the multiple replicated simulated matching requests can be matched in the same matching pool.

[0158] In some embodiments, the scale processing module is further configured to perform random filtering or discarding on the obtained plurality of simulated matching requests to obtain at least one reduced simulated matching request.

[0159] The service merging module is also used to determine the regional services corresponding to the at least one reduced simulated matching request, and to merge the at least one regional service to obtain a matching pool, so that the at least one reduced simulated matching request can be matched in the same matching pool.

[0160] In some embodiments, the region service merging module is further configured to determine the matching address of the at least one region service and set each of the matching addresses to the same value.

[0161] In some embodiments, the test module 34 includes:

[0162] The collection unit is configured to collect first log information in a matching result of the at least one to-be-tested matching model;

[0163] The test unit is configured to test the first log information to obtain first test result data.

[0164] In some embodiments, the test unit comprises:

[0165] The acquisition subunit is configured to acquire key logs in the first log information;

[0166] The data processing subunit is configured to import the key logs into a data stream of the key logs through data integration, perform data processing on data in the data stream to obtain processed key logs, and store the processed key logs in an offline database.

[0167] The test analysis subunit is configured to retrieve the processed key logs from the offline database for test analysis to obtain first test result data.

[0168] In some embodiments, the key logs comprise at least one of the following:

[0169] The recall log is configured to acquire, from the first log information, all recalled room combinations for constructing a game in a loop as a recall log;

[0170] The fine arrangement log is configured to acquire at least one game room combination recalled from the recall log, and record a process of preferential selection on the at least one game room combination as a fine arrangement log, wherein the process of preferential selection comprises: selecting an optimal room combination from the at least one game room combination, and sending the optimal room combination to the game client;

[0171] The request log is configured to acquire, from the first log information, recorded information in the to-be-tested matching model as a request log;

[0172] The submission log is configured to acquire, from the first log information, recorded information of a response game room combination fed back by the to-be-tested matching model to the game client as a submission log.

[0173] In some embodiments, the apparatus further comprises:

[0174] The online collection and comparison module is configured to collect second log information in an online matching process of an online server on a game matching request corresponding to the game event data, test the second log information to obtain second test result data, compare the second test result data and the first test result data, and determine accuracy of the first test result data according to a comparison result.

[0175] For the convenience of description, the above apparatus is described in various modules in terms of functions. Of course, the functions of the modules can be implemented in one or more software and / or hardware in the implementation of the present application.

[0176] The apparatus of the above embodiments is used to implement the corresponding method in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which are not repeated here.

[0177] Based on the same inventive concept, the present application also provides an electronic device corresponding to the method of any of the above embodiments, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the method of any of the above embodiments when executing the program.

[0178] Figure 4 A more specific hardware structure of an electronic device provided by the present embodiment is shown, which can include a processor 410, a memory 420, an input / output interface 430, a communication interface 440 and a bus 450. The processor 410, the memory 420, the input / output interface 430 and the communication interface 440 are connected to each other through the bus 450 for communication within the device.

[0179] The processor 410 can be implemented in the form of a general-purpose CPU (Central Processing Unit, central processor), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, etc., for executing related programs to implement the technical solutions provided by the present embodiment.

[0180] The memory 420 can be implemented in the form of a ROM (Read Only Memory, read-only memory), a RAM (Random Access Memory, random access memory), a static storage device, a dynamic storage device, etc. The memory 420 can store an operating system and other application programs, and when the technical solutions provided by the present embodiment are implemented by software or firmware, the related program codes are stored in the memory 420 and executed by the processor 410.

[0181] The input / output interface 430 is used to connect input / output modules to realize information input and output. The input / output modules can be configured as components in the device (not shown in the figure), or can be externally connected to the device to provide corresponding functions. The input device can include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device can include a display, a speaker, a vibrator, an indicator light, etc.

[0182] The communication interface 440 is configured to connect a communication module (not shown in the figure) to realize the communication interaction between the device and other devices. The communication module can realize communication through a wired manner (for example, a USB, a network cable, etc.) or through a wireless manner (for example, a mobile network, WIFI, Bluetooth, etc.).

[0183] The bus 450 includes a path for transmitting information between various components (for example, the processor 410, the memory 420, the input / output interface 430, and the communication interface 440) of the device.

[0184] It should be noted that although the above device only shows the processor 410, the memory 420, the input / output interface 430, the communication interface 440, and the bus 450, in the specific implementation process, the device can also include other components necessary for normal operation. In addition, those skilled in the art can understand that the above device can also only contain the components necessary for the implementation of the embodiments of the present specification, and does not have to contain all the components shown in the figure.

[0185] The electronic device of the above embodiment is used to implement the corresponding game matching test method or game matching test method in any of the preceding embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described here.

[0186] Based on the same inventive concept, corresponding to any of the above embodiment methods, the present application also provides a non-transitory computer readable storage medium, which stores computer instructions for causing the computer to execute the game matching test method or game matching test method of any of the above embodiments.

[0187] The computer readable medium of the present embodiment includes permanent and non-permanent, removable and non-removable media, which can be realized by any method or technology to store information. The information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device.

[0188] The storage medium of the above embodiments stores computer instructions for causing the computer to execute the method as described in any of the above embodiments, and has the beneficial effects of the corresponding method embodiments, which are not repeated here.

[0189] It should be understood by those of ordinary skill in the art that the above discussion of any of the embodiments is merely exemplary and is not intended to suggest the scope of the application (including the claims) is limited to these examples; the embodiments above or technical features among different embodiments can also be combined, steps can be implemented in any order, and there are many other changes to the embodiments of the application as described above, different aspects of the embodiments of the application, which are not provided in detail for the sake of brevity.

[0190] In addition, in order to simplify the description and discussion, and so as not to make the embodiments of the application difficult to understand, the well-known power / ground connections of integrated circuit (IC) chips and other components can or can not be shown in the provided drawings. In addition, devices can be shown in block diagram form in order to avoid making the embodiments of the application difficult to understand, and this also takes into account the fact that the details of the implementation of these block diagram devices are highly dependent on the platform to be implemented to implement the embodiments of the application (i.e. these details should be well within the understanding of those skilled in the art). Where specific details (e.g. circuits) are set forth in order to describe an exemplary embodiment of the application, it will be apparent to those skilled in the art that the embodiments of the application can be practiced without these specific details or with variations on these specific details. Therefore, these descriptions should be considered as illustrative rather than limiting.

[0191] Although the application has been described in conjunction with the specific embodiments thereof, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art in light of the foregoing description. For example, other memory architectures (e.g. dynamic RAM (DRAM)) can use the embodiments discussed.

[0192] The embodiments of the application are intended to cover all such alternatives, modifications and variations as falling within the broad scope of the appended claims. Accordingly, any and all such modifications, variations or equivalents that fall within the spirit and scope of the embodiments of the application are intended to be included within the scope of the application.

Claims

1. A game matching test method characterized by, include: Receive game event data sent by the game client, wherein the game event data is associated with the game matchmaking request of the game client; A simulated match request is generated based on the game event data; The simulated matching request is sent to at least one matching model to be tested, and the matching result of the at least one matching model to be tested is received; The matching results are tested and analyzed to obtain the first test result data; After generating the simulated match request based on the game event data, the process further includes: The simulated matching request is copied to obtain multiple copied simulated matching requests; Determine the regional service corresponding to the multiple replicated simulated matching requests, and merge at least one regional service to obtain a matching pool, so that the multiple replicated simulated matching requests can be matched in the same matching pool. or, The obtained multiple simulated matching requests are randomly filtered or discarded to obtain at least one reduced simulated matching request. The region service corresponding to the at least one reduced simulated matching request is determined, and the at least one region service is merged to obtain a matching pool so that the at least one reduced simulated matching request can be matched in the same matching pool.

2. The game matching test method of claim 1, wherein, Receive game event data sent by the game client, wherein the game event data is associated with the game client's game matchmaking request, including: Receive game tracking data associated with the game matching request, which is sent asynchronously in real time by the game client. The game tracking data is filtered based on preset rules to determine the game event data.

3. The game matching test method of claim 1, wherein, The merging process includes: Determine the matching address for the at least one regional service, and set each of the matching addresses to the same value.

4. The game matching test method of claim 1, wherein, The step of testing and analyzing the matching results to obtain the first test result data includes: Collect the first log information from the matching results of the at least one matching model to be tested; The first log information is tested to obtain the first test result data.

5. The game matching test method of claim 4, wherein, The step of testing the first log information to obtain the first test result data includes: Retrieve the key logs from the first log information; The key logs are imported into the key log data stream through data integration. The data in the data stream is processed to obtain the processed key logs, which are then stored in an offline database. The processed key logs are retrieved from the offline database for test analysis to obtain the first test result data.

6. The game matching test method of claim 5, wherein, The critical logs include at least one of the following: The recall log is obtained from the first log information, which contains all the recalled room combinations that are used in a loop to construct matches using candidate game rooms. The fine-tuning log retrieves at least one game room combination from the recall log and records the process of selecting the best combination of the at least one game room combination as the fine-tuning log. The process of selecting the best combination of the at least one game room combination includes: selecting the optimal room combination from the at least one game room combination and sending the optimal room combination to the game client. The request log is obtained from the first log information as record information in a matching model to be tested. The submission log is obtained from the first log information as record information of a response game room combination fed back by the matching model to be tested to the game client.

7. The game matching test method of claim 4, wherein, The method further comprises: The second log information in an online matching process of the game matching request corresponding to the game event data is collected by an online server; The second test result data is obtained by testing the second log information, and the second test result data and the first test result data are compared to determine the accuracy of the first test result data according to a comparison result.

8. A game matching test apparatus characterized by comprising: Comprise: The receiving module is configured to receive game event data sent by a game client, the game event data being associated with a game matching request of the game client; The request generation module is configured to generate a simulated matching request based on the game event data; The matching module is configured to send the simulated matching request to at least one matching model to be tested, and receive a matching result of the at least one matching model to be tested; The test module is configured to test and analyze the matching result to obtain first test result data; The device further comprises: The order processing module is configured to copy the simulated matching request to obtain a plurality of copied simulated matching requests, or randomly screen or discard the obtained plurality of simulated matching requests to obtain at least one reduced simulated matching request; The region server merging module is configured to determine regional services corresponding to the plurality of copied simulated matching requests or the at least one reduced simulated matching request, and merge at least one regional service to obtain a matching pool, so that the simulated matching requests are matched in the same matching pool.

9. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the program to implement the method of any one of claims 1 to 7.

10. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to make the computer execute the method of any one of claims 1 to 7.

Citation Information

Patent Citations

  • Matching algorithm performance test method, device, equipment, system and medium

    CN110825636A

  • Information processing method and device, electronic equipment and storage medium

    CN111723134A