Asynchronous interaction method and device in electronic game, electronic equipment, storage medium and program product
Patent Information
- Application Number
- CN202510168087.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-14
- Publication Date
- 2026-08-28
- Estimated Expiration
- 2045-02-14
AI Technical Summary
[0004]然而,当某个客户端出现网络故障时,该客户端将被迫处于劣势甚至导致游戏失败
[0017]从上面所述可以看出,本公开实施例提供的电子游戏中的异步交互方法、装置、电子设备、存储介质及程序产品,该方法包括:步骤S1:响应于确定第一客户端存在网络故障,控制与所述第一客户端处于同一游戏对局中的第二客户端暂停游戏,并控制所述第一客户端在本地进行游戏;步骤S2:响应于确定所述第一客户端在本地进行游戏的时长等于预设的时长阈值,控制所述第一客户端暂停游戏,并从所述第一客户端获取第一游戏数据;步骤S3:将所述第一游戏数据传输到所述第二客户端,控制所述第二客户端基于所述第一游戏数据进行游戏。本公开通过异步交互的方式,避免了处于网络故障的客户端将被迫处于劣势甚至导致游戏失败,实现了在网络故障情况下游戏的连续性,从而提高了用户体验,保证了游戏的公平性。
Smart Images

Figure CN119868945B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the fields of electronic computers and the Internet, and in particular to an asynchronous interaction method, apparatus, electronic device, storage medium and program product in video games. Background Technology
[0002] This section is intended to provide background or context for the embodiments of this disclosure as set forth in the claims. The description herein is not intended to be a prior art simply because it is included in this section.
[0003] Video games typically require real-time interaction and synchronization between servers and multiple clients to ensure smooth gameplay and fairness.
[0004] However, when a client experiences a network failure, that client will be at a disadvantage and may even lose the game. Summary of the Invention
[0005] In view of this, the purpose of this disclosure is to provide an asynchronous interaction method, device, electronic device, storage medium and program product in video games, which at least to some extent solves one of the technical problems in the related art.
[0006] To achieve the above objectives, a first aspect of the exemplary embodiments of this disclosure provides an asynchronous interaction method in a video game, comprising:
[0007] Step S1: In response to determining that the first client has a network failure, control the second client, which is in the same game as the first client, to pause the game, and control the first client to play the game locally;
[0008] Step S2: In response to determining that the duration of the game played by the first client locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client;
[0009] Step S3: Transmit the first game data to the second client, and control the second client to play the game based on the first game data.
[0010] Based on the same inventive concept, a second aspect of the exemplary embodiments of this disclosure provides an asynchronous interaction device in a video game, comprising:
[0011] The asynchronous control module is configured to execute step S1: in response to determining that the first client has a network failure, control the second client, which is in the same game match as the first client, to pause the game, and control the first client to play the game locally;
[0012] The data transmission module is configured to execute step S2: in response to determining that the duration of the first client playing the game locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client;
[0013] The asynchronous interaction module is configured to execute step S3: transmit the first game data to the second client and control the second client to play the game based on the first game data.
[0014] Based on the same inventive concept, a third aspect of the exemplary embodiments of this disclosure provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method as described in the first aspect.
[0015] Based on the same inventive concept, a fourth aspect of the exemplary embodiments of this disclosure provides a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method as described in the first aspect.
[0016] Based on the same inventive concept, a fifth aspect of the exemplary embodiments of this disclosure provides a computer program product including computer program instructions that, when run on a computer, cause the computer to perform the method as described in the first aspect.
[0017] As can be seen from the above, the asynchronous interaction method, apparatus, electronic device, storage medium, and program product in electronic games provided in this disclosure include the following steps: Step S1: In response to determining that a first client has a network failure, controlling a second client in the same game match as the first client to pause the game, and controlling the first client to play the game locally; Step S2: In response to determining that the duration of the first client playing the game locally is equal to a preset duration threshold, controlling the first client to pause the game, and obtaining first game data from the first client; Step S3: Transmitting the first game data to the second client, and controlling the second client to play the game based on the first game data. This disclosure, through asynchronous interaction, avoids clients experiencing network failures being forced into a disadvantageous position or even losing the game, achieving game continuity in the event of a network failure, thereby improving user experience and ensuring game fairness. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in this disclosure or related technologies, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are only embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 A schematic diagram illustrating an application scenario of an asynchronous interaction method in a video game provided as an exemplary embodiment of this disclosure;
[0020] Figure 2 A flowchart illustrating an asynchronous interaction method in a video game provided as an exemplary embodiment of this disclosure;
[0021] Figure 3 Another flowchart illustrating an asynchronous interaction method in a video game provided as an exemplary embodiment of this disclosure;
[0022] Figure 4 A flowchart illustrating a method for determining network faults provided as an exemplary embodiment of this disclosure;
[0023] Figure 5 A schematic diagram of an asynchronous interaction device in a video game provided as an exemplary embodiment of the present disclosure;
[0024] Figure 6 A schematic diagram of the structure of an electronic device provided for an exemplary embodiment of this disclosure. Detailed Implementation
[0025] It is understood that before using the technical solutions disclosed in the various embodiments of this application, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this application in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0026] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this application's technical solution, based on the prompt message.
[0027] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0028] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this application. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this application.
[0029] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0030] To make the objectives, technical solutions, and advantages of this disclosure clearer, the principles and spirit of this disclosure will be described below with reference to several exemplary embodiments. It should be understood that these embodiments are provided merely to enable those skilled in the art to better understand and implement this disclosure, and are not intended to limit the scope of this disclosure in any way. Rather, these embodiments are provided to make this disclosure more thorough and complete, and to fully convey the scope of this disclosure to those skilled in the art.
[0031] It is important to understand in this article that any number of elements in the accompanying figures is for illustrative purposes and not for limitation, and that any naming is for distinction only and has no limiting meaning.
[0032] It should be noted that, unless otherwise defined, the technical or scientific terms used in the embodiments of this disclosure should have the ordinary meaning understood by one of ordinary skill in the art to which this disclosure pertains. The terms "first," "second," and similar words used in the embodiments of this disclosure do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Terms such as "comprising" or "including" mean that the element or object preceding the word encompasses the elements or objects listed following the word and their equivalents, without excluding other elements or objects. Terms such as "connected" or "linked" are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. Terms such as "upper," "lower," "left," and "right" are used only to indicate relative positional relationships; when the absolute position of the described object changes, the relative positional relationship may also change accordingly. The article "a" or "an" preceding an element does not exclude the existence of multiple such elements.
[0033] The principles and spirit of this disclosure will be explained in detail below with reference to several representative embodiments.
[0034] As described in the background section, video games typically require real-time interaction and synchronization between servers and multiple clients to ensure smooth gameplay and fairness.
[0035] However, when a client experiences a network failure, that client will be at a disadvantage and may even lose the game.
[0036] In related technologies, when a client experiences a network failure, the disconnection and reconnection technology is usually used to continuously attempt to reconnect the client. However, the inventors of this disclosure have found that disconnection and reconnection cannot change the situation where the client is forced into a disadvantageous position or even loses the game, thus failing to guarantee the fairness of the game and causing a bad experience for the client's users.
[0037] Therefore, in order to ensure the fairness of the game, related technologies usually pause the entire game until the network failure of the client is resolved before resuming the game. However, the inventors of this disclosure have found that this method brings a bad experience to all users of the entire game.
[0038] To address the aforementioned issues, this disclosure provides an asynchronous interaction scheme in video games, specifically including: Step S1: In response to determining that a network failure has occurred on the first client, controlling the second client, which is in the same game match as the first client, to pause the game, and controlling the first client to play the game locally; Step S2: In response to determining that the duration of the first client playing the game locally is equal to a preset duration threshold, controlling the first client to pause the game, and obtaining first game data from the first client; Step S3: Transmitting the first game data to the second client, and controlling the second client to play the game based on the first game data.
[0039] This disclosure avoids the situation where clients experiencing network failures are forced into a disadvantageous position or even lose the game by using asynchronous interaction, thus ensuring game continuity in the event of network failure, improving user experience, and guaranteeing game fairness.
[0040] After introducing the basic principles of this disclosure, various non-limiting embodiments of this disclosure will be described in detail below.
[0041] refer to Figure 1 This is a schematic diagram illustrating an application scenario of an asynchronous interaction method in a video game provided by an exemplary embodiment of this disclosure.
[0042] This application scenario includes a first terminal device 101, a second terminal device 102, and a server 103. The first terminal device 101, the second terminal device 102, and the server 103 can all be connected via wired or wireless communication networks to achieve data interaction.
[0043] Both the first terminal device 101 and the second terminal device 102 can be electronic devices located close to the user side, possessing data transmission and multimedia input / output functions, including but not limited to desktop computers, mobile phones, portable computers, tablet computers, media players, smart wearable devices, personal digital assistants (PDAs), or other electronic devices capable of performing the aforementioned functions. The electronic device may include a processor and a display screen with touch input functionality. The display screen is used to present a graphical user interface (GUI), which can display an application interface. The processor is used to process application data, generate the GUI, and control the display of the GUI on the screen.
[0044] Server 103 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides 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 (Content Delivery Network), and big data and artificial intelligence platforms.
[0045] In some exemplary embodiments, the asynchronous interaction method in a video game can run on a first terminal device 101, a second terminal device 102, and a server 103.
[0046] The first terminal device 101 has a first client installed that communicates with the server 103, and the second terminal device 102 has a second client installed that communicates with the server 103. The first terminal device 101 and the second terminal device 102 store game programs and are used to display game visuals. The first terminal device 101 and the second terminal device 102 are used to interact with the player through a graphical user interface (GUI), that is, by conventionally downloading, installing, and running the game program via an electronic device. The first terminal device 101 and the second terminal device 102 can provide the GUI to the player in various ways, such as rendering it on a terminal display screen or providing it to the player through holographic projection. For example, the first terminal device 101 and the second terminal device 102 can include a display screen for displaying the GUI, which includes game visuals, and a processor for running the game, generating the GUI, and controlling the display of the GUI on the display screen.
[0047] In response to determining that the first client has a network failure, server 103 controls the second client, which is in the same game as the first client, to pause the game and controls the first client to play the game locally; in response to determining that the duration of the first client playing the game locally is equal to a preset duration threshold, server 103 controls the first client to pause the game and obtains the first game data from the first client; the server 103 transmits the first game data to the second client and controls the second client to play the game based on the first game data.
[0048] The asynchronous interaction method in video games according to the embodiments of this disclosure can be applied to symmetrical competitive game scenarios, such as racing games. Racing games are a type of video game themed around speed competition, where players typically control vehicles (such as cars, motorcycles, bicycles, etc.) or other means of transportation to compete with other players on various tracks, with the goal of being the first to reach the finish line. It can also be applied to asymmetrical competitive game scenarios, such as in an asymmetrical competitive game where there is a pursuer and a chaser. The goal of the chaser is to capture the pursued, while the goal of the pursued is to decode and escape.
[0049] The following is combined Figure 1 The above application scenarios are used to describe asynchronous interaction methods in video games according to exemplary embodiments of this disclosure. It should be noted that the above application scenarios are shown only to facilitate understanding of the spirit and principles of this disclosure, and the embodiments of this disclosure are not limited in any way. Rather, the embodiments of this disclosure can be applied to any applicable scenario.
[0050] refer to Figure 2 This is a flowchart illustrating an asynchronous interaction method in a video game provided by an exemplary embodiment of the present disclosure.
[0051] Asynchronous interaction methods in video games include the following steps:
[0052] Step S1: In response to determining that the first client has a network failure, control the second client, which is in the same game as the first client, to pause the game, and control the first client to play the game locally.
[0053] Below, we will first introduce how the first and second clients are determined. When the asynchronous interaction method in video games is applied to different types of video games, the methods for determining the first and second clients differ. Specifically:
[0054] In this exemplary embodiment, when the video game is a symmetrical competitive game, the method for determining the first client and the second client includes:
[0055] Symmetrical competitive games, such as racing games, are a type of video game themed around speed competition. Players typically control vehicles (such as cars, motorcycles, bicycles, etc.) or other means of transportation to compete with other players on various tracks, with the goal of being the first to reach the finish line.
[0056] When asynchronous interaction methods in video games are applied to symmetrical competitive games, any at least one client in the same game can act as the first client. When any at least one client is the first client, the other clients act as the second clients.
[0057] In practice, the network latency of all clients in the same game is monitored. For example, the network latency of all clients in the same game is continuously acquired, or the network latency of all clients in the same game is acquired at preset time intervals.
[0058] Clients experiencing network problems are designated as the first client, and clients without network problems are designated as the second client.
[0059] In this exemplary embodiment, when the video game is an asymmetrical competitive game, the method for determining the first client and the second client includes:
[0060] For example, in an asymmetrical competitive game, there is a pursuer and a chaser. The pursuer's goal is to capture the pursued, while the pursued's goal is to decode and escape.
[0061] When the asynchronous interaction method in video games is applied to this asymmetrical competitive game, any at least one client being chased in the same game can be the first client. When any at least one client being chased is the first client, the chasing client is the second client.
[0062] In practice, the network latency of all pursued clients in the same game is monitored. For example, the network latency of all pursued clients in the same game is continuously acquired, or the network latency of all pursued clients in the same game is acquired at preset time intervals.
[0063] The client being chased that has a network failure is designated as the first client, and the client chasing it is designated as the second client.
[0064] In the above exemplary embodiments, the methods for determining the first client and the second client were introduced. When the asynchronous interaction method in video games is applied to different types of video games, the methods for determining the first client and the second client are different. The following will introduce the method for determining whether the first client has a network failure:
[0065] In this exemplary embodiment, the method for determining whether the first client has a network failure includes:
[0066] Determine the network latency of the first client;
[0067] Determine whether the network latency is higher than or equal to a latency threshold or whether the fluctuation of the network latency is higher than or equal to a fluctuation threshold.
[0068] In response to determining that the network latency is higher than or equal to a latency threshold or that the fluctuation of the network latency is higher than or equal to a fluctuation threshold, it is determined that the first client has a network fault;
[0069] or,
[0070] In response to determining that the network latency is below a latency threshold or the fluctuation of the network latency is below a fluctuation threshold, it is determined that the first client does not have a network fault.
[0071] In specific implementation, refer to Figure 4 The method for determining whether the first client has a network failure includes the following steps:
[0072] Step S501: Determine the network latency of the first client.
[0073] Network latency refers to the time required for a data packet to travel from the sender to the receiver, including transmission latency, processing latency, and queue latency. When the first client is the sender, the server is the receiver; when the server is the sender, the first client is the receiver.
[0074] Step S502: Determine whether the network latency is higher than or equal to the latency threshold.
[0075] Network latency exceeding a threshold means that data transmission delays exceed preset performance standards or the user's expected latency level. Real-time applications like online games have strict requirements for network latency; if the actual network latency exceeds this threshold, it can lead to a decrease in application performance, such as delayed operation responses, video stuttering, and audio delays.
[0076] If the network latency is higher than or equal to the latency threshold, proceed to step S504 to determine that the first client has a network fault.
[0077] If the network latency is lower than the latency threshold, proceed to step S505 to determine that the first client does not have a network fault.
[0078] Step S503: Determine whether the fluctuation of the network latency is higher than or equal to the fluctuation threshold.
[0079] Significant fluctuations in network latency, known as network jitter, refer to the instability of network delays and describe the variation in latency between data packets. In an ideal network environment, the latency between data packets should be uniform. However, in real-world networks, factors such as routing changes and network congestion can cause variations in the latency of individual data packets. Network jitter is a metric used to describe this latency variation and is an important indicator of network stability; lower jitter indicates a more stable network. Network jitter has a particularly significant impact on real-time applications because it can lead to inconsistencies in data packet arrival, affecting call clarity or video smoothness.
[0080] If the network latency fluctuation is higher than or equal to the fluctuation threshold, proceed to step S504 to determine that the first client has a network fault.
[0081] If the fluctuation of the network latency is lower than the fluctuation threshold, proceed to step S505 to determine that the first client does not have a network fault.
[0082] Step S504: Determine that the first client has a network failure.
[0083] Among them, "network latency exceeding the threshold" focuses on whether the absolute value of network latency exceeds a certain standard, while "network latency fluctuations are large" focuses on the consistency and stability of network latency. Both affect the performance of network applications, but they have different focuses.
[0084] Step S505: Determine that the first client does not have a network failure.
[0085] If the first client does not experience network problems, the game can proceed normally.
[0086] In the above exemplary embodiment, a method for determining whether the first client has a network failure is described. If the first client has a network failure, the second client, which is in the same game match as the first client, is controlled to pause the game, and the first client is controlled to play the game locally. Specifically:
[0087] In practice, once a network failure is detected on the first client, the second client should immediately pause the game and display a notification to the players on the second client, indicating that the first client has lost connection and the game will be paused.
[0088] In practice, considering the user experience after the game is paused, this disclosure will display game-related information to players on the second client when the game is paused, to help users smoothly navigate this pause period. Specifically:
[0089] In this exemplary embodiment, after controlling the second client to stop the game, the method further includes:
[0090] The second client is controlled to display the public information corresponding to the game match.
[0091] In specific implementation, the publicly available information corresponding to the game match includes at least one of the following:
[0092] The background information of the virtual scene in the game;
[0093] The background information, skill information, and operation technique information of the virtual characters in the game;
[0094] Historical game match information matched with the game match.
[0095] In practice, when the second client pauses the game, the first client continues the game locally. Specifically:
[0096] In this exemplary embodiment, controlling the first client to play the game locally includes:
[0097] Control the first client to play the game offline locally.
[0098] In practice, when the first client detects a network failure, it automatically switches to offline mode and continues to execute the game logic locally without relying on a network connection.
[0099] In this exemplary embodiment, within a preset first duration, the user of the first client plays the game offline locally using the first client.
[0100] In practice, the first client is configured with a timer to track the duration of local gameplay.
[0101] Step S2: In response to determining that the duration of the game played by the first client locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client.
[0102] In practice, once it is detected that the first client has reached the required local game time, the first client should immediately pause the game and display a notification to the player on the first client, indicating that the first client has disconnected and the game will be paused.
[0103] In practice, considering the user experience after the game is paused, this disclosure will display game-related information to players on the first client when the game is paused, to help users smoothly navigate this pause period. Specifically:
[0104] In this exemplary embodiment, after controlling the first client to stop the game, the method further includes:
[0105] The first client is controlled to display public information corresponding to the game match.
[0106] In specific implementation, the publicly available information corresponding to the game match includes at least one of the following:
[0107] The background information of the virtual scene in the game;
[0108] The background information, skill information, and operation technique information of the virtual characters in the game;
[0109] Historical game match information matched with the game match.
[0110] Step S3: Transmit the first game data to the second client, and control the second client to play the game based on the first game data.
[0111] In this exemplary embodiment, controlling the second client to play the game based on the first game data includes:
[0112] Based on the first game data, determine the starting position and movement route of the first virtual object manipulated by the first client;
[0113] In a game involving a second virtual object manipulated by the second client, the first virtual object is controlled to move from the starting position along the action path;
[0114] In response to a control command for the second virtual object, control the action of the second virtual object based on the control command;
[0115] Determine the first position of the first virtual character and the second position of the second virtual character, and in response to determining that the first position and the second position meet preset conditions, obtain the game result.
[0116] In practice, in the game scene where the second virtual object manipulated by the second client is located, a first virtual object manipulated by the first client is constructed, and the first virtual object is controlled to reproduce the movement trajectory and actions of the first virtual object when the first client plays the game locally in the game scene.
[0117] In this context, a game scene is a virtual scene displayed (or provided) by the application while it is running on a terminal or server; that is, the scene used during normal gameplay. In other words, a virtual scene refers to virtual game controls that carry virtual objects during gameplay. These virtual objects can move, fight, and perform other actions within the virtual scene under the control of user (i.e., player) commands issued to the terminal device. Optionally, a virtual scene can be a simulation of the real world, a semi-simulated / semi-fictional virtual environment, or a purely fictional virtual environment. A virtual scene can be any of a two-dimensional, 2.5-dimensional, or three-dimensional virtual scene. The virtual scene is the scene where the user controls virtual objects to execute complete game logic. Optionally, a virtual scene can also be used for virtual battles between at least two virtual objects, and this virtual scene has virtual resources that can be collected by multiple virtual objects. For example, a virtual scene can include any one or more of the following elements: game background elements, game character elements, game item elements, and game resource elements.
[0118] A controlled virtual object refers to a dynamic object that can be controlled within a virtual scene. Optionally, this dynamic object can be a virtual character, virtual object, etc. The controlled virtual object is controlled by the user through an input device, or it can be artificial intelligence (AI) trained and set up in the virtual environment. In one possible implementation, the user can control the controlled virtual object to move within the virtual scene, for example, controlling its navigation or resource gathering, upgrading and developing its own created structures, and engaging in combat with virtual objects from other factions. Optionally, the controlled virtual object can have multiple functions, such as not only gathering virtual resources but also engaging in combat. Optionally, when the virtual environment is a three-dimensional environment, the controlled virtual object can be a three-dimensional virtual model, each with its own shape and volume, occupying a portion of the space within the three-dimensional virtual environment. Optionally, the three-dimensional virtual object is a three-dimensional character constructed based on three-dimensional skeletal technology, and the controlled virtual object achieves different appearances through wearable technology. In some implementations, the controlled virtual object can also be implemented using a 2.5-dimensional or 2-dimensional model, and the embodiments of this application do not limit this.
[0119] In practice, the second client can play the game on the server or on the second client's local machine.
[0120] Next, we will first introduce how the second client plays the game on the server. Specifically:
[0121] When a second client plays the game on the server, the main operation of the game program and the main display of the game screen are separate. The storage and execution of movement control methods in the game are completed on the server. The client device's role is to receive and send data and display the game screen. For example, the client device can be a display device with data transmission capabilities located close to the user, such as a mobile terminal, television, computer, or PDA; however, the information processing is handled by the cloud server. During gameplay, the player operates the client device to send operation commands to the server. The server runs the game according to the operation commands, encodes and compresses game screen data, returns it to the client device via the network, and finally, the client device decodes and outputs the game screen.
[0122] In the above exemplary embodiments, the second client playing the game on the server was first introduced. Below, the second client playing the game locally will be described, specifically:
[0123] In this exemplary embodiment, after obtaining the first game data from the first client, the method further includes:
[0124] The first game data is transmitted to the second client;
[0125] Then, controlling the second client to play the game based on the first game data includes:
[0126] Control the second client to play the game offline locally based on the first game data.
[0127] In the above exemplary embodiments, a loop of the exemplary embodiments of this disclosure is described. In specific implementation, after completing the above loop, if the first client still experiences a network failure, the above method can be implemented again until a game result is generated or the first client no longer experiences a network failure. Specifically:
[0128] refer to Figure 3 This is a flowchart illustrating an asynchronous interaction method in a video game provided by an exemplary embodiment of the present disclosure.
[0129] Asynchronous interaction methods in video games include the following steps:
[0130] Step S1: In response to determining that the first client has a network failure, control the second client, which is in the same game as the first client, to pause the game, and control the first client to play the game locally.
[0131] Step S2: In response to determining that the duration of the game played by the first client locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client.
[0132] Step S3: Transmit the first game data to the second client, and control the second client to play the game based on the first game data.
[0133] Step S4: Determine whether a game result is generated when the second client plays the game based on the first game data.
[0134] In response to determining that a game result was generated when the second client played the game based on the first game data, proceed to step S7: end the game.
[0135] In response to determining that no game result was generated when the second client played the game based on the first game data, the process jumps to step S5: determine whether the first client has a network failure.
[0136] In response to determining that there is no network failure in the first client, proceed to step S6: control the first client and the second client to resume the game.
[0137] In response to determining that the first client has a network failure, steps S1 to S3 are executed repeatedly until a game result is generated or the first client does not have a network failure.
[0138] In this exemplary embodiment, step S4 specifically includes:
[0139] Determine whether the first client or the second client achieves the game objective when the second client plays the game based on the first game data;
[0140] In response to determining that the first client or the second client has achieved the game objective, a game result is determined to have been generated;
[0141] or,
[0142] In response to the determination that neither the first client nor the second client has achieved the game objective, it is determined that no game result has been generated.
[0143] In specific implementation, when the asynchronous interaction method in electronic games of this disclosure is applied to symmetrical competitive games, such as racing games, racing games are a type of electronic game with speed competition as the theme. Players usually control vehicles (such as cars, motorcycles, bicycles, etc.) or other means of transportation to compete with other players on various tracks. The goal of the game is to be the first to reach the finish line.
[0144] In specific implementation, when the asynchronous interaction method in electronic games of this disclosure is applied to asymmetrical competitive games, for example, in an asymmetrical competitive game, there is a pursuer and a chaser. The chaser's game objective is to capture the pursued, while the pursued's game objective is to decode and escape.
[0145] As can be seen from the above, the asynchronous interaction method in an electronic game provided in this disclosure includes: Step S1: In response to determining that a network failure exists in the first client, controlling the second client, which is in the same game match as the first client, to pause the game, and controlling the first client to play the game locally; Step S2: In response to determining that the duration of the first client playing the game locally is equal to a preset duration threshold, controlling the first client to pause the game, and obtaining first game data from the first client; Step S3: Transmitting the first game data to the second client, and controlling the second client to play the game based on the first game data.
[0146] This disclosure avoids the situation where clients experiencing network failures are forced into a disadvantageous position or even lose the game by using asynchronous interaction, thus ensuring game continuity in the event of network failure, improving user experience, and guaranteeing game fairness.
[0147] It should be noted that the method of this disclosure embodiment can be executed by a single device, such as a computer or server. The method of this embodiment can also be applied to 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 of this disclosure embodiment, and the multiple devices will interact with each other to complete the method described.
[0148] It should be noted that the above description describes some embodiments of this disclosure. 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.
[0149] Based on the same inventive concept, corresponding to any of the above-described embodiments, this disclosure also provides an asynchronous interaction device for video games.
[0150] refer to Figure 5 This is a schematic diagram of an asynchronous interaction device in an electronic game provided by an exemplary embodiment of the present disclosure.
[0151] Asynchronous interaction devices in video games include the following modules:
[0152] The asynchronous control module 910 is configured to execute step S1: in response to determining that the first client has a network failure, control the second client, which is in the same game match as the first client, to pause the game, and control the first client to play the game locally;
[0153] The data transmission module 920 is configured to perform step S2: in response to determining that the duration of the game played by the first client locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client;
[0154] The asynchronous interaction module 930 is configured to execute step S3: transmit the first game data to the second client and control the second client to play the game based on the first game data.
[0155] In some exemplary embodiments, the asynchronous interaction device in the video game is further configured as follows:
[0156] Determine whether a game result is generated when the second client plays the game based on the first game data;
[0157] In response to determining that a game result was generated when the second client played the game based on the first game data, the game session ends;
[0158] or,
[0159] In response to determining that no game result was generated when the second client played the game based on the first game data, it was determined whether the first client had a network failure;
[0160] In response to determining that there is no network failure in the first client, control the first client and the second client to resume the game;
[0161] or,
[0162] In response to determining that the first client has a network failure, steps S1 to S3 are executed repeatedly until a game result is generated or the first client does not have a network failure.
[0163] In some exemplary embodiments, the asynchronous control module 910 is further configured to:
[0164] Determine the network latency of the first client;
[0165] Determine whether the network latency is higher than or equal to a latency threshold or whether the fluctuation of the network latency is higher than or equal to a fluctuation threshold.
[0166] In response to determining that the network latency is higher than or equal to a latency threshold or that the fluctuation of the network latency is higher than or equal to a fluctuation threshold, it is determined that the first client has a network fault;
[0167] or,
[0168] In response to determining that the network latency is below a latency threshold or the fluctuation of the network latency is below a fluctuation threshold, it is determined that the first client does not have a network fault.
[0169] In some exemplary embodiments, the asynchronous interaction device in the video game is further configured as follows:
[0170] Determine whether the first client or the second client achieves the game objective when the second client plays the game based on the first game data;
[0171] In response to determining that the first client or the second client has achieved the game objective, a game result is determined to have been generated;
[0172] or,
[0173] In response to the determination that neither the first client nor the second client has achieved the game objective, it is determined that no game result has been generated.
[0174] In some exemplary embodiments, the asynchronous control module 910 is further configured to:
[0175] Control the second client to display the public information corresponding to the game match;
[0176] In some exemplary embodiments, the asynchronous control module 910 is further configured to:
[0177] The first client is controlled to display public information corresponding to the game match.
[0178] In some exemplary embodiments, the publicly available information corresponding to the game match includes at least one of the following:
[0179] The background information of the virtual scene in the game;
[0180] The background information, skill information, and operation technique information of the virtual characters in the game;
[0181] Historical game match information matched with the game match.
[0182] In some exemplary embodiments, the asynchronous control module 910 is further configured to:
[0183] Control the first client to play the game offline locally.
[0184] In some exemplary embodiments, the asynchronous interaction module 930 is specifically configured as follows:
[0185] Based on the first game data, determine the starting position and movement route of the first virtual object manipulated by the first client;
[0186] In a game involving a second virtual object manipulated by the second client, the first virtual object is controlled to move from the starting position along the action path;
[0187] In response to a control command for the second virtual object, control the action of the second virtual object based on the control command;
[0188] Determine the first position of the first virtual character and the second position of the second virtual character, and in response to determining that the first position and the second position meet preset conditions, obtain the game result.
[0189] In some exemplary embodiments, the asynchronous interaction module 930 is specifically configured as follows:
[0190] Control the second client to play the game offline locally based on the first game data.
[0191] For ease of description, the above apparatus is described in terms of its functions, divided into various modules. Of course, in implementing this disclosure, the functions of each module can be implemented in one or more software and / or hardware.
[0192] The apparatus of the above embodiments is used to implement the asynchronous interaction method in the corresponding video game in any of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0193] Based on the same inventive concept, corresponding to the methods of any of the above embodiments, this disclosure also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the asynchronous interaction method in the electronic game described in any of the above embodiments.
[0194] Figure 6 This embodiment illustrates a more specific hardware structure of an electronic device, which may include a processor 1010, a memory 1020, an input / output interface 1030, a communication interface 1040, and a bus 1050. The processor 1010, memory 1020, input / output interface 1030, and communication interface 1040 are interconnected internally via the bus 1050.
[0195] The processor 1010 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this specification.
[0196] The memory 1020 can be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 1020 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented by software or firmware, the relevant program code is stored in the memory 1020 and is called and executed by the processor 1010.
[0197] The input / output interface 1030 is used to connect input / output modules to realize information input and output. Input / output modules can be configured as components within the device (not shown in the figure) or externally connected to the device to provide corresponding functions. Input devices may include keyboards, mice, touchscreens, microphones, various sensors, etc., while output devices may include displays, speakers, vibrators, indicator lights, etc.
[0198] The communication interface 1040 is used to connect a communication module (not shown in the figure) to enable communication between this device and other devices. The communication module can communicate via wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).
[0199] Bus 1050 includes a pathway for transmitting information between various components of the device, such as processor 1010, memory 1020, input / output interface 1030, and communication interface 1040.
[0200] It should be noted that although the above-described device only shows the processor 1010, memory 1020, input / output interface 1030, communication interface 1040, and bus 1050, in specific implementations, the device may also include other components necessary for normal operation. Furthermore, those skilled in the art will understand that the above-described device may only include the components necessary for implementing the embodiments of this specification, and not necessarily all the components shown in the figures.
[0201] The electronic devices described above are used to implement the asynchronous interaction method in the corresponding video game in any of the foregoing embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0202] The memory 1020 stores machine-readable instructions executable by the processor 1010. When the electronic device is running, the processor 1010 communicates with the memory 1020 via the bus 1030, causing the processor 1010 to execute the following instructions during operation:
[0203] Step S1: In response to determining that the first client has a network failure, control the second client, which is in the same game as the first client, to pause the game, and control the first client to play the game locally;
[0204] Step S2: In response to determining that the duration of the game played by the first client locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client;
[0205] Step S3: Transmit the first game data to the second client, and control the second client to play the game based on the first game data.
[0206] In one possible implementation, after the processor 1010 executes the instructions to control the second client to play the game based on the first game data, the method further includes:
[0207] Determine whether a game result is generated when the second client plays the game based on the first game data;
[0208] In response to determining that a game result was generated when the second client played the game based on the first game data, the game session ends;
[0209] or,
[0210] In response to determining that no game result was generated when the second client played the game based on the first game data, it was determined whether the first client had a network failure;
[0211] In response to determining that there is no network failure in the first client, control the first client and the second client to resume the game;
[0212] or,
[0213] In response to determining that the first client has a network failure, steps S1 to S3 are executed repeatedly until a game result is generated or the first client does not have a network failure.
[0214] In one possible implementation, the method further includes the following instructions executed by the processor 1010:
[0215] Determine the network latency of the first client;
[0216] Determine whether the network latency is higher than or equal to a latency threshold or whether the fluctuation of the network latency is higher than or equal to a fluctuation threshold.
[0217] In response to determining that the network latency is higher than or equal to a latency threshold or that the fluctuation of the network latency is higher than or equal to a fluctuation threshold, it is determined that the first client has a network fault;
[0218] or,
[0219] In response to determining that the network latency is below a latency threshold or the fluctuation of the network latency is below a fluctuation threshold, it is determined that the first client does not have a network fault.
[0220] In one possible implementation, the method further includes the following instructions executed by the processor 1010:
[0221] Determine whether the first client or the second client achieves the game objective when the second client plays the game based on the first game data;
[0222] In response to determining that the first client or the second client has achieved the game objective, a game result is determined to have been generated;
[0223] or,
[0224] In response to the determination that neither the first client nor the second client has achieved the game objective, it is determined that no game result has been generated.
[0225] In one possible implementation, after the processor 1010 executes instructions to control the second client to stop the game, the method further includes:
[0226] Control the second client to display the public information corresponding to the game match;
[0227] After controlling the first client to stop the game, the method further includes:
[0228] The first client is controlled to display public information corresponding to the game match.
[0229] In one possible implementation, the publicly available information corresponding to the game match in the instructions executed by the processor 1010 includes at least one of the following:
[0230] The background information of the virtual scene in the game;
[0231] The background information, skill information, and operation technique information of the virtual characters in the game;
[0232] Historical game match information matched with the game match.
[0233] In one possible implementation, the instructions executed by the processor 1010, which control the first client to play the game locally, include:
[0234] Control the first client to play the game offline locally.
[0235] In one possible implementation, the instructions executed by the processor 1010, which control the second client to play the game based on the first game data, include:
[0236] Based on the first game data, determine the starting position and movement route of the first virtual object manipulated by the first client;
[0237] In a game involving a second virtual object manipulated by the second client, the first virtual object is controlled to move from the starting position along the action path;
[0238] In response to a control command for the second virtual object, control the action of the second virtual object based on the control command;
[0239] Determine the first position of the first virtual character and the second position of the second virtual character, and in response to determining that the first position and the second position meet preset conditions, obtain the game result.
[0240] In one possible implementation, the instructions executed by the processor 1010, which control the second client to play the game based on the first game data, include:
[0241] Control the second client to play the game offline locally based on the first game data.
[0242] Based on the same inventive concept, corresponding to the methods of any of the above embodiments, this disclosure also provides a non-transitory computer-readable storage medium that stores computer instructions for causing the computer to execute the asynchronous interaction method in the electronic game as described in any of the above embodiments.
[0243] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. 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, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device.
[0244] The aforementioned non-transitory computer-readable storage media can be any available medium or data storage device that a computer can access, including but not limited to magnetic storage (e.g., floppy disks, hard disks, magnetic tapes, magneto-optical disks (MOs), etc.), optical storage (e.g., CDs, DVDs, BDs, HVDs, etc.), and semiconductor storage (e.g., ROMs, EPROMs, EEPROMs, non-volatile memory (NAND flash), solid-state drives (SSDs)).
[0245] The computer instructions stored in the storage medium of the above embodiments are used to cause the computer to execute the asynchronous interaction method in the video game as described in any of the embodiments of the exemplary method section above, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0246] Based on the same inventive concept, corresponding to the asynchronous interaction method in video games described in any of the above embodiments, this disclosure also provides a computer program product, which includes computer program instructions. In some embodiments, the computer program instructions can be executed by one or more processors of a computer to cause the computer and / or the processor to execute the asynchronous interaction method in video games. Corresponding to the execution entity for each step in each embodiment of the asynchronous interaction method in video games, the processor executing the corresponding step can belong to the corresponding execution entity.
[0247] The computer program products of the above embodiments are used to cause the computer and / or the processor to execute the asynchronous interaction method in the video game as described in any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0248] Those skilled in the art will recognize that embodiments of this disclosure can be implemented as a system, method, or computer program product. Therefore, this disclosure can be implemented as entirely hardware, entirely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software, generally referred to herein as a "circuit," "module," or "system." Furthermore, in some embodiments, this disclosure can also be implemented as a computer program product contained in one or more computer-readable media, which includes computer-readable program code.
[0249] Any combination of one or more computer-readable media may be used. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium can be, for example,, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (not exhaustive) of a computer-readable storage medium may include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in connection with an instruction execution system, apparatus, or device.
[0250] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.
[0251] Program code contained on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0252] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network (including a local area network (LAN) or a wide area network (WAN)), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0253] It should be understood that each block of a flowchart and / or block diagram, as well as combinations of blocks in a flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine that, when executed by a computer or other programmable data processing device, creates means for implementing the functions / operations specified in the blocks of the flowchart and / or block diagram.
[0254] These computer program instructions may also be stored in a computer-readable medium that enables a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce a product comprising an instruction apparatus that implements the functions / operations specified in the boxes of a flowchart and / or block diagram.
[0255] Computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, such that the instructions that execute on the computer or other programmable apparatus can provide a process for implementing the functions / operations specified in the boxes of a flowchart and / or block diagram.
[0256] Furthermore, although the operations of the methods of this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all of the operations shown must be performed to achieve the desired result. Rather, the steps depicted in the flowcharts may be executed in a different order. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.
[0257] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. Each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0258] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of this application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0259] Those skilled in the art should understand that the discussion of any of the above embodiments is merely exemplary and is not intended to imply that the scope of this application (including the claims) is limited to these examples; within the framework of this application, the technical features of the above embodiments or different embodiments can also be combined, the steps can be implemented in any order, and there are many other variations of different aspects of the embodiments of this application as described above, which are not provided in the details for the sake of brevity.
[0260] Additionally, to simplify the description and discussion, and to avoid obscuring the embodiments of this application, the well-known power / ground connections to integrated circuit (IC) chips and other components may or may not be shown in the provided drawings. Furthermore, the apparatus may be shown in block diagram form to avoid obscuring the embodiments of this application, and this also takes into account the fact that the details of the implementation of these block diagram apparatuses are highly dependent on the platform on which the embodiments of this application will be implemented (i.e., these details should be fully understood by those skilled in the art). While specific details (e.g., circuits) have been set forth to describe exemplary embodiments of this application, it will be apparent to those skilled in the art that the embodiments of this application can be implemented without these specific details or with variations thereof. Therefore, these descriptions should be considered illustrative rather than restrictive.
[0261] Although this application has been described in conjunction with specific embodiments thereof, many substitutions, modifications, and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may be used with the embodiments discussed.
[0262] The embodiments of this application are intended to cover all such substitutions, modifications, and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the embodiments of this application should be included within the protection scope of this application.
[0263] While the spirit and principles of this disclosure have been described with reference to several specific embodiments, it should be understood that this disclosure is not limited to the disclosed specific embodiments, and the division of aspects does not imply that features in these aspects cannot be combined for benefit; such division is merely for convenience of expression. This disclosure is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the appended claims is to be interpreted in the broadest sense, thereby encompassing all such modifications and equivalent structures and functions.
Claims
1. An asynchronous interaction method in a video game, characterized in that, Applicable to symmetrical or asymmetrical competitive game scenarios, including: Step S1: In response to determining that the first client has a network failure, control the second client, which is in the same game as the first client, to pause the game, and control the first client to play the game locally; Step S2: In response to determining that the duration of the game played by the first client locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client; Step S3: Transmit the first game data to the second client. In the game scene where the second virtual object controlled by the second client is located, construct the first virtual object controlled by the first client, and control the first virtual object to reproduce the movement trajectory and actions of the first virtual object when the first client plays the game locally in the game scene. Control the second client to play the game based on the first game data. After controlling the second client to play the game based on the first game data, the method further includes: Determine whether a game result is generated when the second client plays the game based on the first game data; In response to determining that no game result was generated when the second client played the game based on the first game data, it was determined whether the first client had a network failure; In response to determining that the first client has a network failure, steps S1 to S3 are executed repeatedly until a game result is generated or the first client does not have a network failure.
2. The method according to claim 1, characterized in that, After controlling the second client to play the game based on the first game data, the method further includes: In response to determining that a game result was generated when the second client played the game based on the first game data, the game session ends; Alternatively, in response to determining that the first client does not have a network failure, control the first client and the second client to resume the game.
3. The method according to claim 1, characterized in that, The method further includes: Determine the network latency of the first client; Determine whether the network latency is higher than or equal to a latency threshold or whether the fluctuation of the network latency is higher than or equal to a fluctuation threshold. In response to determining that the network latency is higher than or equal to a latency threshold or that the fluctuation of the network latency is higher than or equal to a fluctuation threshold, it is determined that the first client has a network fault; or, In response to determining that the network latency is below a latency threshold or the fluctuation of the network latency is below a fluctuation threshold, it is determined that the first client does not have a network fault.
4. The method according to claim 2, characterized in that, The method further includes: Determine whether the first client or the second client achieves the game objective when the second client plays the game based on the first game data; In response to determining that the first client or the second client has achieved the game objective, a game result is determined to have been generated; or, In response to the determination that neither the first client nor the second client has achieved the game objective, it is determined that no game result has been generated.
5. The method according to claim 2, characterized in that, After controlling the second client to stop the game, the method further includes: Control the second client to display the public information corresponding to the game match; After controlling the first client to stop the game, the method further includes: The first client is controlled to display public information corresponding to the game match.
6. The method according to claim 5, characterized in that, The publicly available information corresponding to the game matches includes at least one of the following: The background information of the virtual scene in the game; The background information, skill information, and operation technique information of the virtual characters in the game; Historical game match information matched with the game match.
7. The method according to claim 1, characterized in that, The control of the first client to play the game locally includes: Control the first client to play the game offline locally.
8. The method according to claim 1, characterized in that, The control of the second client to play the game based on the first game data includes: Based on the first game data, determine the starting position and movement route of the first virtual object manipulated by the first client; In a game involving a second virtual object manipulated by the second client, the first virtual object is controlled to move from the starting position along the action path; In response to a control command for the second virtual object, control the action of the second virtual object based on the control command; Determine the first position of the first virtual object and the second position of the second virtual object, and in response to determining that the first position and the second position meet preset conditions, obtain the game result.
9. The method according to claim 1, characterized in that, The control of the second client to play the game based on the first game data includes: Control the second client to play the game offline locally based on the first game data.
10. An asynchronous interaction device for video games, characterized in that, Applicable to symmetrical or asymmetrical competitive game scenarios, including: The asynchronous control module is configured to execute step S1: in response to determining that the first client has a network failure, control the second client, which is in the same game match as the first client, to pause the game, and control the first client to play the game locally; The data transmission module is configured to execute step S2: in response to determining that the duration of the first client playing the game locally is equal to a preset duration threshold, control the first client to pause the game and obtain the first game data from the first client; The asynchronous interaction module is configured to execute step S3: transmit the first game data to the second client, construct the first virtual object controlled by the first client in the game scene where the second virtual object controlled by the second client is located, and control the first virtual object to reproduce the movement trajectory and actions of the first virtual object when the first client plays the game locally in the game scene, and control the second client to play the game based on the first game data; After controlling the second client to play the game based on the first game data, the method further includes: Determine whether a game result is generated when the second client plays the game based on the first game data; In response to determining that no game result was generated when the second client played the game based on the first game data, it was determined whether the first client had a network failure; In response to determining that the first client has a network failure, steps S1 to S3 are executed repeatedly until a game result is generated or the first client does not have a network failure.
11. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the method as described in any one of claims 1 to 9.
12. A non-transitory computer-readable storage medium, characterized in that, The non-transitory computer-readable storage medium stores computer instructions for causing the computer to perform the method of any one of claims 1 to 9.
13. A computer program product, characterized in that, It includes computer program instructions that, when run on a computer, cause the computer to perform the method as described in any one of claims 1 to 9.
Citation Information
Patent Citations
Network mobile game off-line processing method and device
CN110368687A
Client detection of game-state performance for triggering game assist
US10576370B1