Skill synchronization method and apparatus, storage medium, and computer device

CN115738275BActive Publication Date: 2026-11-03NETEASE (HANGZHOU) NETWORK CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211659724.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-22
Publication Date
2026-11-03
Estimated Expiration
2042-12-22

AI Technical Summary

Technical Problem

In game scenarios, unstable client networks can cause issues with game character skill effects becoming out of sync or being lost.

Method used

When the client triggers the skill synchronization condition, it sends a skill synchronization request to the server, obtains and processes skill verification information, determines the skill information to be synchronized, and receives the skill synchronization data generated by the server to control the skill release state of the client's virtual object, thereby achieving skill synchronization between the client and the server.

Benefits of technology

Ensure that the virtual object skills in the client are consistent with those in the server to avoid asynchronous or lost skill effects and improve the gaming experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115738275B_ABST
    Figure CN115738275B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a skill synchronization method and device, a storage medium and a computer device. The method comprises: sending a skill synchronization request to a server when a skill synchronization condition is triggered; obtaining skill verification information returned by the server according to the skill synchronization request; determining to-be-synchronized skill information of a virtual object in the client according to the skill verification information and first skill release information of the virtual object in the client, and sending the to-be-synchronized skill information to the server; receiving skill synchronization data generated by the server according to the to-be-synchronized skill information; and controlling the virtual object in the client to enter a corresponding skill release state according to the skill synchronization data. Thus, the skills of the virtual object in the client and the skills of the virtual object in the server are synchronized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, specifically to a skill synchronization method, apparatus, storage medium, and computer equipment. Background Technology

[0002] In game scenarios, game characters are typically given a variety of skills they can use. When players fight in game scenarios, especially in multiplayer PVP battles, the release of a skill involves multiple functions such as skill damage calculation, skill synchronization, and skill animation.

[0003] Due to network lag and disconnection issues on the client side, the skill effects of game characters may be out of sync or missing on the client. Summary of the Invention

[0004] This application provides a skill synchronization method, apparatus, storage medium, and computer device. The skill synchronization method enables the skills of virtual objects in a client to be synchronized with the skills of virtual objects in a server.

[0005] In a first aspect, embodiments of this application provide a skill synchronization method applied to a client, the method comprising:

[0006] When the skill synchronization condition is triggered, a skill synchronization request is sent to the server;

[0007] Obtain the skill verification information returned by the server based on the skill synchronization request;

[0008] Based on the skill verification information and the first skill release information of the virtual object in the client, the skill information to be synchronized of the virtual object in the client is determined and sent to the server.

[0009] Receive skill synchronization data generated by the server based on the skill information to be synchronized;

[0010] Based on the skill synchronization data, the virtual objects in the client are controlled to enter the corresponding skill release state.

[0011] Secondly, embodiments of this application provide a skill synchronization device applied to a client, the device comprising:

[0012] The first sending module is used to send a skill synchronization request to the server when the skill synchronization condition is triggered.

[0013] The acquisition module is used to obtain the skill verification information returned by the server based on the skill synchronization request;

[0014] The second sending module is used to determine the skill information to be synchronized of the virtual object in the client based on the skill verification information and the first skill release information of the virtual object in the client, and send the skill information to be synchronized to the server.

[0015] The receiving module is used to receive skill synchronization data generated by the server based on the skill information to be synchronized;

[0016] The control module is used to control the virtual objects in the client to enter the corresponding skill release state based on skill synchronization data.

[0017] Thirdly, embodiments of this application provide a computer-readable storage medium storing multiple instructions adapted for loading by a processor to execute steps in the skill synchronization method provided in embodiments of this application.

[0018] Fourthly, embodiments of this application provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it implements the steps in the skill synchronization method provided in embodiments of this application.

[0019] In this application, when a skill synchronization condition is triggered, a skill synchronization request is sent to the server; skill verification information returned by the server based on the skill synchronization request is obtained; based on the skill verification information and the first skill release information of the virtual object in the client, the skill information to be synchronized for the virtual object in the client is determined, and the skill information to be synchronized for the virtual object is sent to the server; skill synchronization data generated by the server based on the skill information to be synchronized for the virtual object is received; and the virtual object in the client is controlled to enter the corresponding skill release state based on the skill synchronization data. This achieves skill synchronization between the virtual object in the client and the virtual object in the server. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0021] Figure 1 This is a schematic diagram of the first scenario of the skill synchronization method provided in the embodiments of this application.

[0022] Figure 2 This is a schematic diagram of a second scenario of the skill synchronization method provided in the embodiments of this application.

[0023] Figure 3 This is a first flowchart illustrating the skill synchronization method provided in this application embodiment.

[0024] Figure 4 This is a schematic diagram of the second process of the skill synchronization method provided in the embodiments of this application.

[0025] Figure 5 This is a schematic diagram of the skill tree provided in an embodiment of this application.

[0026] Figure 6 This is a schematic diagram of the skill synchronization device provided in the embodiments of this application.

[0027] Figure 7 This is a schematic diagram of the structure of the computer device provided in the embodiments of this application. Detailed Implementation

[0028] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0029] In game scenarios, game characters are typically given a variety of skills they can use. When players fight in game scenarios, especially in multiplayer PVP battles, the release of a skill involves multiple functions such as skill damage calculation, skill synchronization, and skill animation.

[0030] Due to network lag and disconnection issues on the client side, the skill effects of game characters may be out of sync or missing on the client.

[0031] To address the aforementioned technical problems, embodiments of this application provide a skill synchronization method, apparatus, storage medium, and computer device. This skill synchronization method enables the skills of virtual objects in a client to be synchronized with the skills of virtual objects in a server.

[0032] Please see Figure 1 , Figure 1 This is a schematic diagram of the first scenario of the skill synchronization method provided in the embodiments of this application.

[0033] In some implementations, when a user controls a virtual object to fight in a game scenario, the client sends a skill release command to the server. After receiving the skill release command, the server determines whether the virtual object meets the requirements for releasing the skill.

[0034] When the server determines that a virtual object meets the conditions for releasing a skill, it records the release of the skill and then notifies multiple clients, enabling each client to control the corresponding virtual object to release its skill based on the notification.

[0035] The server can also calculate the damage caused by one virtual object to another, and then send the calculated damage to each client. Each client then displays the numerical damage value when the virtual object causes or receives damage.

[0036] like Figure 1 As shown, the game scenario includes a server and clients 1, 2, 3, and 4 connected to it. When the game scenario is a PVP (Player vs. Player) battle, the server often needs to synchronize the skills of virtual objects across multiple clients. For example, when users on clients 1 and 2 are controlling virtual objects in battle, the server needs to synchronize the skills of the virtual objects in clients 1 and 2.

[0037] However, when network instability or disconnection occurs between the client and server, the skill information of virtual objects in the client and the skill information recorded in the server are often out of sync.

[0038] Therefore, when the client and server reconnect, it is necessary to synchronize the skills of the virtual objects in the client and the skills of the virtual objects in the server to ensure that the skill information of the virtual objects in the client and the skill information recorded in the server are the same. For example, the skill used by the virtual object is the same as the skill recorded in the server, and the skill's special effects are the same.

[0039] To resolve the skill synchronization issue between the client and server, please continue reading. Figure 2 , Figure 2 This is a schematic diagram of a second scenario of the skill synchronization method provided in the embodiments of this application.

[0040] Once the client triggers the skill synchronization condition, the client will send a skill synchronization request to the server.

[0041] After receiving a skill synchronization request, the server generates skill verification information based on the recorded skill information of the virtual object. For example, the server can use partial information from the skill information, such as the skill name, the target of the skill release, and the node where the skill is released. Then, the server sends the skill verification information to the client.

[0042] Based on the skill verification information and the first skill release information of the virtual object in the client, the client determines the skill information to be synchronized for the virtual object in the client and sends the skill information to be synchronized to the server.

[0043] After receiving the skill synchronization information, the server generates skill synchronization data based on the skill synchronization information and the saved skill information of the virtual object. Then, it sends the skill synchronization data to the client.

[0044] After receiving the skill synchronization data, the client controls the virtual objects in the client to enter the corresponding skill release state based on the data. This ensures that the skills of the virtual objects in the client are synchronized with the skills of the virtual objects in the server. For example, the skill emitted by the virtual object is the same as the skill recorded in the server, and the skill's visual effects are identical.

[0045] To gain a more detailed understanding of the skill synchronization method provided in the embodiments of this application, please continue reading. Figure 3 , Figure 3 This is a first flowchart illustrating the skill synchronization method provided in this application embodiment. The skill synchronization method is applied to a client and may include the following steps:

[0046] 110. When the skill synchronization condition is triggered, send a skill synchronization request to the server.

[0047] Understandably, many factors can trigger skill synchronization conditions, such as a reconnection after a network disconnection between the client and server, excessively high network latency between the client and server, or the association of a new model with a virtual object in the client. When the client detects that the skill synchronization condition has been triggered, it will send a skill synchronization request to the server.

[0048] In some implementations, before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client can obtain the network connection status between the client and the server. If the network connection status is that the client and the server have reconnected after being disconnected, then the skill synchronization condition is determined to be triggered.

[0049] For example, the client maintains a network connection with the server for the first 10 seconds, then the network connection is lost in the 11th second, and then restored in the 12th second. This indicates that the reconnection after the client-server disconnection requires triggering a skill synchronization condition to ensure that the skills of the virtual objects in the client are synchronized with those in the server.

[0050] In some implementations, before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client can obtain the model information of the model associated with the virtual object in the client. If the model information has changed, the skill synchronization condition is determined to have been triggered.

[0051] For example, if a virtual object changes its weapon or riding item during combat, and some skills display corresponding special effects based on the change of items, then it is assumed that the model information of the model associated with the virtual object has changed, thus determining that the skill synchronization condition has been triggered.

[0052] In some implementations, before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client can simultaneously obtain the client's first time and the server's second time; determine the time difference between the first time and the second time; and if the time difference is greater than a preset time difference, then the skill synchronization condition is determined to be triggered.

[0053] For example, if the client takes a long time to process certain protocols, a time difference will exist between the client and the server. For instance, if the client's first time is 59 seconds and the server's second time is 57 seconds, the time difference is 2 seconds. Since the preset time difference is 1 second, if the actual time difference is greater than the preset value, the skill synchronization condition is triggered.

[0054] 120. Obtain the skill verification information returned by the server based on the skill synchronization request.

[0055] In some implementations, after the client sends a skill synchronization request to the server, the server can generate skill verification information based on the recorded skill information of the virtual object. For example, the server can use partial information from the skill information as skill verification information, such as the skill name, the object to which the skill is released, the node to which the skill is released, etc. The server then sends the skill verification information to the client.

[0056] Before the client receives the skill verification information, it can control the virtual objects in the client to be in a paused state, such as stopping skill releases or movement. This ensures that subsequent skill synchronization with the server can be achieved normally.

[0057] 130. Based on the skill verification information and the first skill release information of the virtual object in the client, determine the skill information to be synchronized of the virtual object in the client, and send the skill information to be synchronized to the server.

[0058] In some implementations, the client can retrieve the second skill release information of the virtual object recorded on the server from the skill verification information. Then, the second skill release information is compared with the first skill release information to obtain a comparison result. Finally, the skill information of the virtual object to be synchronized in the client is determined based on the comparison result.

[0059] Specifically, the client records the first skill release information of the virtual object, such as the skill name corresponding to the virtual object, the object to which the skill is released, and the node where the skill is released. The skill verification information contains the second skill release information of the virtual object recorded on the server, such as the skill name corresponding to the virtual object, the object to which the skill is released, and the node where the skill is released.

[0060] Then, the skill name, skill release target, and skill release node corresponding to the virtual object in the client are compared with the skill name, skill release target, and skill release node corresponding to the virtual object in the server. For example, if the skill name, skill release target, and skill release node are all parameter types, the client can compare the parameters of each parameter type in the first skill release information and the second skill release information to obtain the comparison result.

[0061] Finally, based on the comparison results, the skills that need to be synchronized on the client side are determined, and then the skill information to be synchronized is generated and sent to the server.

[0062] For example, if a skill named A is released in the second skill release information on the server, but no skill named A is released in the first skill release information on the client, then the skill information to be synchronized sent by the client to the server will include the skill named A.

[0063] 140. Receive skill synchronization data generated by the server based on the skill information to be synchronized.

[0064] In some implementations, after the server receives the skill information to be synchronized, the server can generate skill synchronization data based on the recorded skill information of the virtual object and the skill information to be synchronized.

[0065] For example, if the server determines that the skill information to be synchronized includes a skill named "Skill A", then the server retrieves relevant data about Skill A from the skill information, such as the skill's range, target, damage value, child nodes, and special effects. This data is then used to generate skill synchronization data, which is subsequently sent to the client.

[0066] The client can receive skill synchronization data sent by the server.

[0067] 150. Control the virtual objects in the client to enter the corresponding skill release state based on the skill synchronization data.

[0068] In some implementations, after the client receives the skill synchronization data sent by the server, it initializes the skill data corresponding to the virtual object in the client to set the skill synchronization data for the virtual object; then, it adjusts the skill tree of the virtual object in the client according to the skill synchronization data to control the virtual object in the client to enter the corresponding skill release state.

[0069] For example, for skills that need to be synchronized, the client can clear the stored skill data and then update the parameters of the virtual object's skill to be synchronized with the received skill synchronization data. This could involve adjusting the skill tree of the skill to be synchronized, allowing the client's virtual object to enter the corresponding skill release state. This achieves skill synchronization between the virtual object on the client and the virtual object on the server.

[0070] In this embodiment, when a skill synchronization condition is triggered, the client sends a skill synchronization request to the server; obtains skill verification information returned by the server based on the skill synchronization request; determines the skill information to be synchronized for the virtual object in the client based on the skill verification information and the first skill release information of the virtual object in the client, and sends the skill information to be synchronized to the server; receives skill synchronization data generated by the server based on the skill information to be synchronized; and controls the virtual object in the client to enter the corresponding skill release state based on the skill synchronization data. This achieves skill synchronization between the virtual object in the client and the virtual object in the server.

[0071] Please see Figure 4 , Figure 4 This is a second flowchart illustrating the skill synchronization method provided in this application embodiment. The skill synchronization method may include the following steps:

[0072] 201. When the skill synchronization condition is triggered, send a skill synchronization request to the server.

[0073] Understandably, many factors can trigger skill synchronization conditions, such as a reconnection after a network disconnection between the client and server, excessively high network latency between the client and server, or the association of a new model with a virtual object in the client. When the client detects that the skill synchronization condition has been triggered, it will send a skill synchronization request to the server.

[0074] In some implementations, before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client can obtain the network connection status between the client and the server. If the network connection status is that the client and the server have reconnected after being disconnected, then the skill synchronization condition is determined to be triggered.

[0075] For example, the client maintains a network connection with the server for the first 10 seconds, then the network connection is lost in the 11th second, and then restored in the 12th second. This indicates that the reconnection after the client-server disconnection requires triggering a skill synchronization condition to ensure that the skills of the virtual objects in the client are synchronized with those in the server.

[0076] In some implementations, before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client can obtain the model information of the model associated with the virtual object in the client. If the model information has changed, the skill synchronization condition is determined to have been triggered.

[0077] For example, if a virtual object changes its weapon or riding item during combat, and some skills display corresponding special effects based on the change of items, then it is assumed that the model information of the model associated with the virtual object has changed, thus determining that the skill synchronization condition has been triggered.

[0078] In some implementations, before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client can simultaneously obtain the client's first time and the server's second time; determine the time difference between the first time and the second time; and if the time difference is greater than a preset time difference, then the skill synchronization condition is determined to be triggered.

[0079] For example, if the client takes a long time to process certain protocols, a time difference will exist between the client and the server. For instance, if the client's first time is 59 seconds and the server's second time is 57 seconds, the time difference is 2 seconds. Since the preset time difference is 1 second, if the actual time difference is greater than the preset value, the skill synchronization condition is triggered.

[0080] 202. Obtain the skill verification information returned by the server based on the skill synchronization request.

[0081] In some implementations, after the client sends a skill synchronization request to the server, the server can generate skill verification information based on the recorded skill information of the virtual object. For example, the server can use partial information from the skill information as skill verification information, such as the skill name, the object to which the skill is released, the node to which the skill is released, etc. The server then sends the skill verification information to the client.

[0082] Before the client receives the skill verification information, it can control the virtual objects in the client to be in a paused state, such as stopping skill releases or movement. This ensures that subsequent skill synchronization with the server can be achieved normally.

[0083] 203. Obtain the second skill release information of the virtual object recorded in the server from the skill verification information.

[0084] For example, the client can determine the second skill release information from the skill verification information it receives, such as the skill name, the target of the skill release, and the node where the skill is released.

[0085] In some implementations, only these three parameter types can be retrieved from the skill verification information, thereby improving the speed of subsequent comparisons.

[0086] 204. Compare the parameters of the same type in the second skill release information and the first skill release information to obtain the comparison results.

[0087] In some implementations, the client can compare parameters of the same type in the second skill release information and the first skill release information to obtain the comparison result.

[0088] For example, the client can compare the skill name in the first skill release information with the skill name in the second skill release information to obtain the comparison result.

[0089] The client can compare the target of the skill release in the first skill release information with the target of the skill release in the second skill release information to obtain the comparison result.

[0090] The client can compare the skill release nodes in the first skill release information with the skill release nodes in the second skill release information to obtain the comparison results. For example, for the release node of a specific skill of a virtual object, such as the node of skill effect rendering, or the node of effect performance, etc.

[0091] 205. Parameters in the second skill release information that have the same parameter type but different values ​​as the first skill release information are identified as target parameters.

[0092] For example, if the second skill release information contains the same parameter type as the first skill release information—the skill name (number)—but a new skill number appears in the second skill release information that is not present in the first skill release information, then that skill number will be identified as the target parameter.

[0093] For example, the second skill's release information might share the same parameter type as the first skill's release information: the skill's attached model. However, the second skill's attached model is a motorcycle, while the first skill's attached model is a car. In this case, the model parameter corresponding to the motorcycle would be determined as the target parameter.

[0094] In some implementations, if the first skill release information contains a skill name that is different from the second skill release information, the virtual object in the client is controlled to cancel the release of the skill corresponding to the skill name.

[0095] For example, if the second skill release information has the same parameter type as the first skill release information—the skill name (number)—but the first skill release information contains a new skill number, while the second skill release information does not, then the client-side control can cancel the release of the skill corresponding to the skill name. This prevents the skills released by the virtual object on the client side from being out of sync with those released by the virtual object on the server side.

[0096] 206. Determine the skill information to be synchronized based on the target parameters.

[0097] For example, the name (number) of the skill corresponding to the target parameter can be used as the skill information to be synchronized. For example, the name of the skill can be set in the list of skills to be synchronized, and then the list can be sent to the server.

[0098] 207. Receive skill synchronization data generated by the server based on the skill information to be synchronized.

[0099] In some implementations, after the server receives the skill information to be synchronized, the server can generate skill synchronization data based on the recorded skill information of the virtual object and the skill information to be synchronized.

[0100] For example, if the server determines that the skill information to be synchronized includes a skill named "Skill A", then the server retrieves relevant data about Skill A from the skill information, such as the skill's range, target, damage value, child nodes, and special effects. This data is then used to generate skill synchronization data, which is subsequently sent to the client.

[0101] The client can receive skill synchronization data sent by the server.

[0102] In some implementations, skill synchronization data may also include skill level, skill caster, skill target, skill ID, number of the currently running child node of the skill, and running time of the currently running child node of the skill.

[0103] Then, the client can receive skill synchronization data generated by the server based on the skill information to be synchronized.

[0104] 208. Initialize the skill data corresponding to the virtual object in the client to set skill synchronization data for the virtual object.

[0105] For example, for skills that need to be synchronized, the client can clear the stored skill data and then update the parameters of the virtual object's skill to be synchronized with the received skill synchronization data, such as adjusting the skill tree of the skill to be synchronized.

[0106] 209. Adjust the skill tree of the virtual objects in the client according to the skill synchronization data, so as to control the virtual objects in the client to enter the corresponding skill release state.

[0107] Please refer to the following: Figure 5 , Figure 5 This is a schematic diagram of the skill tree provided in an embodiment of this application.

[0108] Once the client obtains the skill synchronization data, it can adjust different nodes in the skill tree. For example, it can adjust the skill effects, damage matching, and skill targets under the skill to be synchronized. It can also adjust the duration of skill effects, the damage value and damage range under damage matching, and the attackable targets under skill targets.

[0109] This allows the synchronized skills of virtual objects in the client to be synchronized with the skills in the server from multiple aspects.

[0110] In some implementations, when the client includes multiple virtual objects, the sub-skill synchronization data corresponding to each virtual object is determined in the skill synchronization data; the skill tree of each virtual object is adjusted according to the sub-skill synchronization data corresponding to each virtual object, so as to control each virtual object to enter the corresponding skill release state.

[0111] For example, the skill synchronization data includes synchronization data for skill A, skill C, and skill B. Then, the synchronization data for skill A can be selected to adjust the skill tree of skill A for a virtual object in the client, controlling the virtual object to enter the skill release state of skill A. For instance, if the effect controlling the virtual object to release skill A has a playback duration of 2 seconds, and the total runtime is 5 seconds, then the client will automatically turn off the effect after 3 seconds.

[0112] In this embodiment, when the skill synchronization condition is triggered, the client sends a skill synchronization request to the server. The client then obtains the skill verification information returned by the server based on the skill synchronization request. From the skill verification information, the client retrieves the second skill release information of the virtual object recorded on the server. The client compares the parameters of the same type in the second skill release information with those in the first skill release information to obtain a comparison result.

[0113] Then, the parameters in the second skill release information that have the same parameter type but different values ​​as the first skill release information are identified as target parameters. Based on the target parameters, the skill synchronization data generated by the receiving server based on the skill information to be synchronized is determined.

[0114] Finally, the skill data corresponding to the virtual object is initialized in the client to set skill synchronization data for the virtual object. Based on the skill synchronization data, the skill tree of the virtual object in the client is adjusted to control the virtual object in the client to enter the corresponding skill release state. This achieves skill synchronization between the virtual object in the client and the virtual object in the server.

[0115] Please see Figure 6 , Figure 6 This is a schematic diagram of the structure of the skill synchronization device provided in this application embodiment. The skill synchronization device 300 may include:

[0116] The first sending module 310 is used to send a skill synchronization request to the server when the skill synchronization condition is triggered.

[0117] The first sending module 310 is also used to obtain the client's first time and the server's second time at the same time before sending a skill synchronization request to the server when the skill synchronization condition is triggered.

[0118] Determine the time difference between the first and second time points;

[0119] If the time difference is greater than the preset time difference, then the skill synchronization condition is determined to be triggered.

[0120] The first sending module 310 is also used to obtain the network connection status between the client and the server before sending a skill synchronization request to the server when the skill synchronization condition is triggered.

[0121] If the network connection status is that the client and server disconnected and then reconnected, then the skill synchronization condition is determined to be triggered.

[0122] The first sending module 310 is also used to obtain model information of the model associated with the virtual object in the client before sending a skill synchronization request to the server when the skill synchronization condition is triggered;

[0123] If the model information changes, the skill synchronization condition is determined to be triggered.

[0124] The acquisition module 320 is used to acquire the skill verification information returned by the server based on the skill synchronization request.

[0125] The second sending module 330 is used to determine the skill information to be synchronized of the virtual object in the client based on the skill verification information and the first skill release information of the virtual object in the client, and send the skill information to be synchronized to the server.

[0126] The second sending module 330 is also used to obtain the second skill release information of the virtual object recorded in the server from the skill verification information;

[0127] The release information of the second skill is compared with that of the first skill to obtain the comparison results;

[0128] Based on the comparison results, the skill information to be synchronized for virtual objects in the client is determined.

[0129] The second sending module 330 is also used to compare the parameters of the same parameter type in the second skill release information and the first skill release information to obtain the comparison result.

[0130] The second sending module 330 is also used to determine the parameters in the second skill release information that have the same parameter type but different values ​​as the first skill release information as the target parameters:

[0131] The skill information to be synchronized is determined based on the target parameters.

[0132] The second sending module 330 is also used to compare the parameters of the same parameter type in the second skill release information and the first skill release information, and after obtaining the comparison result, if there is a skill name in the first skill release information that is different from the second skill release information, then control the virtual object in the client to cancel the release of the skill corresponding to the skill name.

[0133] The receiving module 340 is used to receive skill synchronization data generated by the server based on the skill information to be synchronized.

[0134] The control module 350 is used to control the virtual objects in the client to enter the corresponding skill release state based on the skill synchronization data.

[0135] The control module 350 is also used to initialize the skill data corresponding to the virtual object in the client, so as to set skill synchronization data for the virtual object;

[0136] The skill tree of virtual objects in the client is adjusted based on skill synchronization data to control the virtual objects in the client to enter the corresponding skill release state.

[0137] The control module 350 is also used to determine the sub-skill synchronization data corresponding to each virtual object in the skill synchronization data when the client includes multiple virtual objects;

[0138] The skill tree of each virtual object is adjusted based on the synchronization data of its corresponding sub-skills, so as to control each virtual object to enter the corresponding skill release state.

[0139] In this embodiment, when a skill synchronization condition is triggered, the client sends a skill synchronization request to the server; obtains skill verification information returned by the server based on the skill synchronization request; determines the skill information to be synchronized for the virtual object in the client based on the skill verification information and the first skill release information of the virtual object in the client, and sends the skill information to be synchronized to the server; receives skill synchronization data generated by the server based on the skill information to be synchronized; and controls the virtual object in the client to enter the corresponding skill release state based on the skill synchronization data. This achieves skill synchronization between the virtual object in the client and the virtual object in the server.

[0140] Accordingly, this application also provides a computer device, which can be a terminal or a server. The terminal can be a smartphone, tablet computer, laptop computer, touch screen, game console, personal computer (PC), personal digital assistant (PDA), or other terminal device. Figure 7 As shown, Figure 7 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. The computer device 400 includes a processor 401 with one or more processing cores, a memory 402 with one or more computer-readable storage media, and a computer program stored on the memory 402 and executable on the processor. The processor 401 and the memory 402 are electrically connected. Those skilled in the art will understand that the computer device structure shown in the figure does not constitute a limitation on the computer device, and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0141] The processor 401 is the control center of the computer device 400. It connects various parts of the computer device 400 through various interfaces and lines. By running or loading software programs and / or modules stored in the memory 402, and calling data stored in the memory 402, it performs various functions of the computer device 400 and processes data, thereby monitoring the computer device 400 as a whole.

[0142] In this embodiment, the processor 401 in the computer device 400 loads the instructions corresponding to the processes of one or more applications into the memory 402 according to the following steps, and the processor 401 runs the applications stored in the memory 402 to achieve various functions:

[0143] When the skill synchronization condition is triggered, a skill synchronization request is sent to the server;

[0144] Obtain the skill verification information returned by the server based on the skill synchronization request;

[0145] Based on the skill verification information and the first skill release information of the virtual object in the client, the skill information to be synchronized of the virtual object in the client is determined and sent to the server.

[0146] Receive skill synchronization data generated by the server based on the skill information to be synchronized;

[0147] Based on the skill synchronization data, the virtual objects in the client are controlled to enter the corresponding skill release state.

[0148] Processor 401 is also used to perform:

[0149] Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client's first time and the server's second time are obtained at the same time.

[0150] Determine the time difference between the first and second time points;

[0151] If the time difference is greater than the preset time difference, then the skill synchronization condition is determined to be triggered.

[0152] Processor 401 is also used to perform:

[0153] Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, obtain the network connection status between the client and the server;

[0154] If the network connection status is that the client and server disconnected and then reconnected, then the skill synchronization condition is determined to be triggered.

[0155] Processor 401 is also used to perform:

[0156] Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, obtain the model information of the model associated with the virtual object in the client;

[0157] If the model information changes, the skill synchronization condition is determined to be triggered.

[0158] Processor 401 is also used to perform:

[0159] Retrieve the second skill release information of the virtual object recorded on the server from the skill verification information;

[0160] The release information of the second skill is compared with that of the first skill to obtain the comparison results;

[0161] Based on the comparison results, the skill information to be synchronized for virtual objects in the client is determined.

[0162] Processor 401 is also used to perform:

[0163] The parameters of the same type in the second skill release information and the first skill release information are compared to obtain the comparison results.

[0164] Processor 401 is also used to perform:

[0165] The parameters in the second skill release information that have the same parameter type as the first skill release information but different values ​​are identified as target parameters:

[0166] The skill information to be synchronized is determined based on the target parameters.

[0167] Processor 401 is also used to perform:

[0168] After comparing the parameters of the same type in the second skill release information and the first skill release information, if there is a skill name in the first skill release information that is different from the second skill release information, then the virtual object in the client is controlled to cancel the release of the skill corresponding to the skill name.

[0169] Processor 401 is also used to perform:

[0170] Initialize the skill data corresponding to the virtual object in the client to set skill synchronization data for the virtual object;

[0171] The skill tree of virtual objects in the client is adjusted based on skill synchronization data to control the virtual objects in the client to enter the corresponding skill release state.

[0172] Processor 401 is also used to perform:

[0173] When the client includes multiple virtual objects, the sub-skill synchronization data corresponding to each virtual object is determined in the skill synchronization data;

[0174] The skill tree of each virtual object is adjusted based on the synchronization data of its corresponding sub-skills, so as to control each virtual object to enter the corresponding skill release state.

[0175] In this embodiment, when a skill synchronization condition is triggered, the client sends a skill synchronization request to the server; obtains skill verification information returned by the server based on the skill synchronization request; determines the skill information to be synchronized for the virtual object in the client based on the skill verification information and the first skill release information of the virtual object in the client, and sends the skill information to be synchronized to the server; receives skill synchronization data generated by the server based on the skill information to be synchronized; and controls the virtual object in the client to enter the corresponding skill release state based on the skill synchronization data. This achieves skill synchronization between the virtual object in the client and the virtual object in the server.

[0176] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.

[0177] Optional, such as Figure 7 As shown, the computer device 400 also includes: a touch screen display 403, a radio frequency circuit 404, an audio circuit 405, an input unit 406, and a power supply 407. The processor 401 is electrically connected to the touch screen display 403, the radio frequency circuit 404, the audio circuit 405, the input unit 406, and the power supply 407. Those skilled in the art will understand that... Figure 7 The computer device structure shown does not constitute a limitation on the computer device and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0178] The touch display screen 403 can be used to display a graphical user interface (GUI) and receive operation commands generated by the user interacting with the GUI. The touch display screen 403 may include a display panel and a touch panel. The display panel can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces of the computer device. These graphical user interfaces can be composed of graphics, text, icons, video, and any combination thereof. Optionally, the display panel can be configured using a liquid crystal display (LCD), organic light-emitting diode (OLED), or other similar technologies. The touch panel can be used to collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near the touch panel), generate corresponding operation commands, and execute the corresponding program according to the operation commands. Optionally, the touch panel may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch location and the signal generated by the touch operation, transmitting the signal to the touch controller. The touch controller receives touch information from the touch detection device, converts it into touch point coordinates, and sends it to the processor 401. It can also receive and execute commands from the processor 401. The touch panel can cover the display panel. When the touch panel detects a touch operation on or near it, it transmits the information to the processor 401 to determine the type of touch event. Subsequently, the processor 401 provides corresponding visual output on the display panel based on the type of touch event. In this embodiment, the touch panel and the display panel can be integrated into the touch display screen 403 to achieve input and output functions. However, in some embodiments, the touch panel and the touch display screen 403 can be implemented as two independent components to achieve input and output functions. That is, the touch display screen 403 can also be used as part of the input unit 406 to achieve input functions.

[0179] The radio frequency circuit 404 can be used to transmit and receive radio frequency signals to establish wireless communication with network devices or other computer devices, and to transmit and receive signals with network devices or other computer devices.

[0180] Audio circuitry 405 can be used to provide an audio interface between a user and a computer device via a speaker and a microphone. Audio circuitry 405 can convert received audio data into electrical signals and transmit them to the speaker, where the speaker converts them into sound signals for output. Conversely, the microphone converts collected sound signals into electrical signals, which are then received by audio circuitry 405, converted back into audio data, and then processed by processor 401 before being transmitted via radio frequency circuitry 404 to, for example, another computer device, or output to memory 402 for further processing. Audio circuitry 405 may also include an earphone jack to facilitate communication between peripheral headphones and the computer device.

[0181] The input unit 406 can be used to receive input numbers, characters, or user characteristic information (such as fingerprints, iris, facial information, etc.), and to generate keyboard, mouse, joystick, optical, or trackball signal inputs related to user settings and function control.

[0182] Power supply 407 is used to supply power to various components of computer device 400. Optionally, power supply 407 can be logically connected to processor 401 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system. Power supply 407 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.

[0183] although Figure 7 As not shown in the diagram, computer equipment 400 may also include a camera, sensor, wireless fidelity module, Bluetooth module, etc., which will not be described in detail here.

[0184] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0185] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor.

[0186] To this end, embodiments of this application provide a computer-readable storage medium storing a plurality of computer programs that can be loaded by a processor to execute steps in any of the skill synchronization methods provided in embodiments of this application. For example, the computer program can execute the following steps:

[0187] When the skill synchronization condition is triggered, a skill synchronization request is sent to the server;

[0188] Obtain the skill verification information returned by the server based on the skill synchronization request;

[0189] Based on the skill verification information and the first skill release information of the virtual object in the client, the skill information to be synchronized of the virtual object in the client is determined and sent to the server.

[0190] Receive skill synchronization data generated by the server based on the skill information to be synchronized;

[0191] Based on the skill synchronization data, the virtual objects in the client are controlled to enter the corresponding skill release state.

[0192] Computer programs can also execute:

[0193] Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the client's first time and the server's second time are obtained at the same time.

[0194] Determine the time difference between the first and second time points;

[0195] If the time difference is greater than the preset time difference, then the skill synchronization condition is determined to be triggered.

[0196] Computer programs can also execute:

[0197] Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, obtain the network connection status between the client and the server;

[0198] If the network connection status is that the client and server disconnected and then reconnected, then the skill synchronization condition is determined to be triggered.

[0199] Computer programs can also execute:

[0200] Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, obtain the model information of the model associated with the virtual object in the client;

[0201] If the model information changes, the skill synchronization condition is determined to be triggered.

[0202] Computer programs can also execute:

[0203] Retrieve the second skill release information of the virtual object recorded on the server from the skill verification information;

[0204] The release information of the second skill is compared with that of the first skill to obtain the comparison results;

[0205] Based on the comparison results, the skill information to be synchronized for virtual objects in the client is determined.

[0206] Computer programs can also execute:

[0207] The parameters of the same type in the second skill release information and the first skill release information are compared to obtain the comparison results.

[0208] Computer programs can also execute:

[0209] The parameters in the second skill release information that have the same parameter type as the first skill release information but different values ​​are identified as target parameters:

[0210] The skill information to be synchronized is determined based on the target parameters.

[0211] Computer programs can also execute:

[0212] After comparing the parameters of the same type in the second skill release information and the first skill release information, if there is a skill name in the first skill release information that is different from the second skill release information, then the virtual object in the client is controlled to cancel the release of the skill corresponding to the skill name.

[0213] Computer programs can also execute:

[0214] Initialize the skill data corresponding to the virtual object in the client to set skill synchronization data for the virtual object;

[0215] The skill tree of virtual objects in the client is adjusted based on skill synchronization data to control the virtual objects in the client to enter the corresponding skill release state.

[0216] Computer programs can also execute:

[0217] When the client includes multiple virtual objects, the sub-skill synchronization data corresponding to each virtual object is determined in the skill synchronization data;

[0218] The skill tree of each virtual object is adjusted based on the synchronization data of its corresponding sub-skills, so as to control each virtual object to enter the corresponding skill release state.

[0219] In this embodiment, when a skill synchronization condition is triggered, the client sends a skill synchronization request to the server; obtains skill verification information returned by the server based on the skill synchronization request; determines the skill information to be synchronized for the virtual object in the client based on the skill verification information and the first skill release information of the virtual object in the client, and sends the skill information to be synchronized to the server; receives skill synchronization data generated by the server based on the skill information to be synchronized; and controls the virtual object in the client to enter the corresponding skill release state based on the skill synchronization data. This achieves skill synchronization between the virtual object in the client and the virtual object in the server.

[0220] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.

[0221] The storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.

[0222] Since the computer program stored in the storage medium can execute the steps in any of the skill synchronization methods provided in the embodiments of this application, the beneficial effects that any of the skill synchronization methods provided in the embodiments of this application can achieve can be realized, as detailed in the preceding embodiments, and will not be repeated here.

[0223] The above provides a detailed description of a skill synchronization method, apparatus, storage medium, and computer device provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The description of the above embodiments is only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A skill synchronization method, characterized in that, Applied to the client side, including: The skill release command is sent to the server to trigger the server to determine whether the virtual object meets the requirements for releasing the skill based on the skill release command. If the requirements are met, the server records the skill corresponding to the skill release command and notifies the client. Based on the notification, the virtual object in the client is controlled to adjust its skill tree in order to release the skill corresponding to the skill release command; When the skill synchronization condition is triggered, a skill synchronization request is sent to the server; Obtain the skill verification information returned by the server based on the skill synchronization request; The second skill release information of the virtual object recorded in the server is obtained from the skill verification information; The parameters of the same type in the second skill release information and the first skill release information of the virtual object in the client are compared to obtain the comparison result; The parameter in the second skill release information that has the same parameter type as the first skill release information but different values ​​is identified as the target parameter: The skill information to be synchronized is determined based on the target parameters, and the skill information to be synchronized is sent to the server. Receive skill synchronization data generated by the server based on the skill information to be synchronized; Based on the skill synchronization data, the virtual objects in the client are controlled to adjust their skill trees, so as to control the virtual objects in the client to enter the corresponding skill release state.

2. The skill synchronization method according to claim 1, characterized in that, Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the method further includes: At the same time, obtain the first time of the client and the second time of the server; Determine the time difference between the first time and the second time; If the time difference is greater than the preset time difference, then the skill synchronization condition is determined to be triggered.

3. The skill synchronization method according to claim 1, characterized in that, Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the method further includes: Obtain the network connection status between the client and the server; If the network connection status is that the client and the server have reconnected after a disconnection, then the skill synchronization condition is determined to be triggered.

4. The skill synchronization method according to claim 1, characterized in that, Before sending a skill synchronization request to the server when the skill synchronization condition is triggered, the method further includes: Obtain the model information of the model associated with the virtual object in the client; If the model information changes, the skill synchronization condition is determined to be triggered.

5. The skill synchronization method according to claim 1, characterized in that, The parameter type includes skill name. After comparing parameters of the same parameter type in the second skill release information and the first skill release information to obtain the comparison result, the method further includes: If the first skill release information contains a skill name that is different from the second skill release information, then the client controls the virtual object to cancel the release of the skill corresponding to the skill name.

6. The skill synchronization method according to claim 1, characterized in that, The step of controlling the virtual objects in the client to adjust their skill trees based on the skill synchronization data, so as to control the virtual objects in the client to enter the corresponding skill release state, includes: The skill data corresponding to the virtual object is initialized in the client to set the skill synchronization data for the virtual object; The skill tree of the virtual object in the client is adjusted according to the skill synchronization data to control the virtual object in the client to enter the corresponding skill release state.

7. The skill synchronization method according to claim 6, characterized in that, The step of adjusting the skill tree of the virtual object in the client based on the skill synchronization data to control the virtual object in the client to enter the corresponding skill release state includes: When the client includes multiple virtual objects, sub-skill synchronization data corresponding to each virtual object is determined in the skill synchronization data; The skill tree of each virtual object is adjusted according to the sub-skill synchronization data corresponding to each virtual object, so as to control each virtual object to enter the corresponding skill release state.

8. A skill synchronization device, characterized in that, Applied to the client, the skill synchronization device is used to send a skill release command to the server to trigger the server to determine whether the virtual object meets the requirements for releasing the skill based on the skill release command, and if the requirements are met, record the skill corresponding to the skill release command and notify the client. Based on the notification, the virtual object in the client is controlled to adjust its skill tree in order to release the skill corresponding to the skill release command; The skill synchronization device includes: The first sending module is used to send a skill synchronization request to the server when the skill synchronization condition is triggered. The acquisition module is used to acquire the skill verification information returned by the server based on the skill synchronization request; The second sending module is used to obtain the second skill release information of the virtual object recorded in the server from the skill verification information; compare the parameters of the same parameter type in the second skill release information and the first skill release information of the virtual object in the client to obtain a comparison result; determine the parameters in the second skill release information that have the same parameter type but different values ​​as the first skill release information as target parameters; determine the skill information to be synchronized based on the target parameters, and send the skill information to be synchronized to the server; The receiving module is used to receive skill synchronization data generated by the server based on the skill information to be synchronized; The control module is used to control the virtual objects in the client to adjust their skill trees according to the skill synchronization data, so as to control the virtual objects in the client to enter the corresponding skill release state.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a plurality of instructions adapted for loading by a processor to perform the steps of the skill synchronization method according to any one of claims 1-7.

10. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps in the skill synchronization method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Data synchronization method and device, equipment and computer readable storage medium

    CN110647531A

  • Method and device for realizing information synchronization, storage medium and electronic equipment

    CN112642143A