Skill processing methods, devices, electronic equipment and storage media
By using the visual skill editor of Unreal Engine 4 and generating skill execution flowcharts through a node-based editing method, the problems of low editing efficiency and strong dependency in existing technologies are solved, achieving efficient skill editing without the need for advanced editing skills and cross-platform applicability.
Patent Information
- Application Number
- CN202211590257.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-12
- Publication Date
- 2025-12-02
- Estimated Expiration
- 2042-12-12
AI Technical Summary
Existing game skill editing tools, such as the Unreal Engine 4's Blueprint editing method, require high Blueprint editing capabilities, resulting in low editing efficiency. Furthermore, they rely on the Unreal Engine 4's Dedicated Server framework, making them unusable on other server frameworks. The editing effects can only be viewed during game runtime, and adjustments are time-consuming.
It provides a visual skill editor based on Unreal Engine 4, which creates and connects task nodes through a visual node-based editing method on a timeline, generates skill execution flowcharts, supports previewing and editing skill effects, and generates purely static data files.
Skill logic can be edited intuitively without the need for advanced blueprint editing capabilities, improving editing efficiency. The generated skill data can be used on any server, reducing the waste of manpower and time.
Smart Images

Figure CN115970291B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of Internet technology, and in particular to a skill processing method, apparatus, electronic device, storage medium, and program product. Background Technology
[0002] With the development of internet technology, many mobile games and online games have gradually emerged. In many combat games, both sides often need to release skills to fight. Therefore, game developers and planners need to pre-edit the skills.
[0003] Currently, game skill editing largely relies on the Unreal Engine 4, utilizing the built-in skill development plugins within Unreal Engine 4 to generate skill resources through blueprint editing. However, this editing method requires blueprint editing skills, demanding strong blueprint editing abilities from the editors. For those with weak blueprint editing skills, this can lead to low editing efficiency. Summary of the Invention
[0004] This disclosure provides a skill processing method, apparatus, electronic device, storage medium, and program product to at least solve the problem of low editing efficiency in related technologies. The technical solution of this disclosure is as follows:
[0005] According to a first aspect of the present disclosure, a skill processing method is provided, comprising:
[0006] Obtain the execution task information and execution logic information of the skills to be processed;
[0007] Based on the execution task information and the execution logic information, multiple task nodes for the skill to be processed are created;
[0008] Based on the execution logic information, establish node connection relationships between the multiple task nodes, and generate an execution flowchart for the skill to be processed based on the node connection relationships.
[0009] In an exemplary embodiment, creating multiple task nodes for the skill to be processed based on the execution task information and the execution logic information includes:
[0010] Based on the execution task information, multiple initial task nodes for the skill to be processed are created;
[0011] Based on the execution logic information, determine the triggering conditions and attribute information of each initial task node;
[0012] According to the triggering conditions and attribute information, each initial task node is configured to obtain multiple configured task nodes, which correspond to multiple task nodes as the skills to be processed.
[0013] In an exemplary embodiment, establishing the node connection relationship between the plurality of task nodes based on the execution logic information includes:
[0014] Based on the execution logic information, the dependency information between the multiple task nodes is determined;
[0015] Based on the dependency information, establish node connection relationships between the multiple task nodes.
[0016] In one exemplary embodiment, after generating the execution flowchart of the skill to be processed based on the node connection relationship, the method further includes:
[0017] Based on the playback operation command for the skill to be processed, the skill effect of the skill to be processed is displayed through a preview window.
[0018] In one exemplary embodiment, the step of using a preview window based on a playback operation command for the skill to be processed...
[0019] After displaying the skill effect of the skill to be processed, the method further includes: based on the pause operation command for the skill to be processed, stopping the display of the skill effect of the skill to be processed in the preview window;
[0020] Based on the step operation instructions for the skill to be processed, the step skill effect of the skill to be processed is displayed through the preview window.
[0021] In one exemplary embodiment, the method further includes: when it is determined that there is a missing task node among the plurality of task nodes, determining that the missing task node is in the ...
[0022] Execution location in the flowchart;
[0023] According to their positions in the execution flowchart, the missing task nodes are inserted into the execution flowchart to obtain a new execution flowchart for the skill to be processed.
[0024] In one exemplary embodiment, the method further includes: when it is determined that there are redundant task nodes among the plurality of task nodes, deleting the redundant task nodes from the execution flowchart.
[0025] The remaining task nodes yield a new execution flowchart for the skill to be processed.
[0026] In one exemplary embodiment, after generating the execution flowchart of the skill to be processed, the method further includes:
[0027] Save the execution flowchart of the skill to be processed to obtain the static data file of the skill to be processed; the static data file is in binary format, JS object abbreviation format or Extensible Markup Language format.
[0028] According to a second aspect of the present disclosure, a skill processing apparatus is provided, comprising:
[0029] The acquisition unit is configured to acquire the task information and execution logic information of the skills to be processed;
[0030] The creation unit is configured to create multiple task nodes for the skill to be processed based on the execution task information and the execution logic information.
[0031] The generation unit is configured to establish node connection relationships between the multiple task nodes based on the execution logic information, and generate an execution flowchart of the skill to be processed based on the node connection relationships.
[0032] In one exemplary embodiment, the creation unit is further configured to perform the creation based on the execution task information.
[0033] The skill to be processed has multiple initial task nodes; based on the execution logic information, the triggering conditions and attribute information of each initial task node are determined; and each initial task node is processed according to the triggering conditions and attribute information.
[0034] Node configuration results in multiple configured task nodes, corresponding to the multiple task nodes of the skill to be processed.
[0035] In an exemplary embodiment, the generation unit is further configured to perform the following: determine the dependency information between the plurality of task nodes based on the execution logic information; and establish node connection relationships between the plurality of task nodes based on the dependency information.
[0036] In one exemplary embodiment, the apparatus further includes a preview unit configured to perform operations based on the task at hand.
[0037] The skill playback command displays the skill effect of the skill to be processed through a preview window.
[0038] In one exemplary embodiment, the device further includes a pause unit configured to execute a pause operation command based on the skill to be processed, stopping the display of the skill effect of the skill to be processed in the preview window;
[0039] The stepping unit is configured to execute stepping operation instructions based on the skill to be processed, and to display the stepping skill effect of the skill to be processed through the preview window.
[0040] In an exemplary embodiment, the generation unit is further configured to, when it is determined that there is a missing task node among the plurality of task nodes, determine the position of the missing task node in the execution flowchart; and insert the missing task node into the execution flowchart according to its position in the execution flowchart to obtain a new execution flowchart for the skill to be processed.
[0041] In one exemplary embodiment, the generation unit is further configured to perform an operation when it is determined that there are multiple task nodes.
[0042] When there are redundant task nodes, the redundant task nodes are deleted from the execution flowchart to obtain a new execution flowchart for the skill to be processed.
[0043] In one exemplary embodiment, the apparatus further includes a storage unit, which is also configured to store the technology to be processed.
[0044] The execution flowchart is used to obtain the static data file of the skill to be processed; the static data file is in binary format, JS object abbreviation format, or Extensible Markup Language format.
[0045] According to a third aspect of the present disclosure, an electronic device is provided, comprising:
[0046] processor;
[0047] Memory used to store the processor's executable instructions;
[0048] The processor is configured to execute the instructions to implement the method as described in any of the preceding methods.
[0049] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided that, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the method described in any of the preceding claims.
[0050] According to a fifth aspect of the present disclosure, a computer program product is provided, the computer program product including instructions that, when executed by a processor of an electronic device, enable the electronic device to perform the method as described in any of the preceding claims.
[0051] The technical solutions provided by the embodiments of this disclosure have at least the following beneficial effects:
[0052] Based on the execution task information and execution logic information of the skill to be processed, multiple task nodes are created for the skill. Then, according to the execution logic information, node connections are established between these task nodes. Based on these connections, an execution flowchart for the skill to be processed is generated. This visual, node-based editing method is simple to operate, requires no advanced editing skills, and allows editors to intuitively edit skill logic. It can meet the business needs of complex logical skills while improving the efficiency of skill editing.
[0053] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0054] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.
[0055] Figure 1 This is a flowchart illustrating a skill processing method according to an exemplary embodiment.
[0056] Figure 2 This is a schematic diagram of the editing interface of a skill editor according to an exemplary embodiment.
[0057] Figure 3 This is a schematic diagram of an editing interface illustrating the connection relationship of task nodes according to an exemplary embodiment.
[0058] Figure 4 This is a flowchart illustrating a skill processing method according to another exemplary embodiment.
[0059] Figure 5 This is a diagram illustrating the relationships between classes in a skill system within an application instance.
[0060] Figure 6 This is a schematic diagram illustrating the skill release process of a first client according to an exemplary embodiment.
[0061] Figure 7 This is a schematic diagram illustrating the timed update process of a skill component and the timed update process of a skill instance, according to an exemplary embodiment.
[0062] Figure 8 This is a structural block diagram of a skill processing device according to an exemplary embodiment.
[0063] Figure 9 This is a block diagram illustrating an electronic device according to an exemplary embodiment. Detailed Implementation
[0064] To enable those skilled in the art to better understand the technical solutions of this disclosure, the technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings.
[0065] It should be noted that the embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0066] Unreal Engine 4 is currently the most popular game development engine and is the first or second choice for many game development projects. While its features are numerous and powerful, the toolchain provided by Unreal Engine 4 is not very comprehensive for some purely business logic aspects. Unreal Engine 4 has a built-in skill development plugin that generates skill resources by editing blueprints; however, this method has the following problems:
[0067] (1) Skills are generated through editing blueprints, which requires editors to have high blueprint editing skills. For those who lack this ability, such as planners, editing is difficult and inefficient, and the edited blueprint resources are also prone to problems. Therefore, technical personnel need to maintain them continuously, which increases human resource costs.
[0068] (2) This skill development plugin is highly dependent on the Unreal Engine 4's "Dedicated Server" server framework. Without this server framework, the skill development plugin cannot be used.
[0069] (3) The skill resources edited by the skill development plugin can only be viewed when the game is running. If the editing effect is not good, it needs to be adjusted, and each modification will take a lot of time.
[0070] Therefore, to address the aforementioned issues, this publication presents a "Visual Skill Editor based on Unreal Engine 4." This editor allows for the editing of skill resources, filling gaps in the Unreal Engine 4's combat-oriented toolchain. This timeline-based visual editor enables the editing of common skill effects such as animations, special effects, and sounds, allowing designers and artists to use the same toolchain to produce skill data. Since many skills possess highly complex logic, a visual, node-based editing method allows designers to intuitively edit skill logic. The editor outputs purely static data, containing no logical code. Skill resources edited by this editor can be parsed and used by any other system without relying on the Unreal Engine 4 server framework.
[0071] In one exemplary embodiment, such as Figure 1As shown, a skill processing method is provided. This embodiment illustrates the application of this method to a terminal. It is understood that this method can also be applied to a server, and to a system including both a terminal and a server, and is implemented through interaction between the terminal and the server. The terminal can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. Portable wearable devices can include smartwatches, smart bracelets, head-mounted devices, etc. The server can be implemented using a standalone server or a server cluster consisting of multiple servers. In this embodiment, the method includes the following steps:
[0072] In step S110, the execution task information and execution logic information of the skill to be processed are obtained.
[0073] The task execution information can be understood as the effect or action that the skill to be processed is to achieve. For example, the task execution information could be playing an animation, collision detection, playing a sound, playing special effects, or attacking.
[0074] The execution logic information may include the tasks to be executed by the skill to be processed at each point in time, as well as the relevant execution requirements for each task, such as execution time and triggering conditions.
[0075] In step S120, multiple task nodes for the skill to be processed are created based on the execution task information and execution logic information.
[0076] In practice, each skill can have multiple tasks. For example, for an attack skill, the corresponding task information could include performing an attack action, conducting collision detection, and playing a sound, special effects, or animation when a collision is detected. Therefore, based on the task information of the skill to be processed, multiple task nodes for that skill can be created. For example, attack action nodes, collision detection nodes, sound playback nodes, animation playback nodes, and special effects playback nodes can be created.
[0077] Since each task node has different triggering conditions and attributes, after creating multiple task nodes for the skill to be processed, the triggering conditions and attribute information of each task node can be configured according to the execution logic information of the skill to be processed, thus obtaining multiple task nodes with configured skills.
[0078] In step S130, based on the execution logic information, node connection relationships are established between multiple task nodes, and an execution flowchart of the skill to be processed is generated based on the node connection relationships.
[0079] In practice, the dependency information of each task node can be determined based on the execution logic information of the skill to be processed. Based on this dependency information, the node connection relationship between multiple task nodes is established. The directed graph obtained after establishing the connection relationship is used as the execution flowchart of the skill to be processed. The execution of the skill is controlled through this execution flowchart.
[0080] In the aforementioned skill processing method, multiple task nodes are created for the skill to be processed based on its execution task information and execution logic information. Then, according to the execution logic information, node connections are established between these task nodes. Based on these connections, an execution flowchart for the skill to be processed is generated. This visual, node-based editing method is simple to operate, requires no advanced editing skills, and allows editors to intuitively edit skill logic. It can meet the business needs of complex logical skills while improving the efficiency of skill editing.
[0081] In an exemplary embodiment, in step S120, creating multiple task nodes for the skill to be processed based on the execution task information and execution logic information can be specifically achieved through the following steps:
[0082] Step S121: Based on the task execution information, create multiple initial task nodes for the skills to be processed;
[0083] Step S122: Determine the triggering conditions and attribute information of each initial task node based on the execution logic information;
[0084] Step S123: Configure each initial task node according to the triggering conditions and attribute information to obtain multiple configured task nodes, which correspond to multiple task nodes as skills to be processed.
[0085] For example, for an attack skill, its execution task information includes executing the attack action, performing collision detection, and playing a sound and a special effect when a collision is detected. The execution logic information includes playing a sound and a special effect when a collision exists, with the sound lasting for 0.01 seconds and the special effect lasting for 0.05 seconds.
[0086] When creating task nodes for attack skills, based on the task execution information, first create attack action determination nodes, collision detection nodes, sound playback nodes, and animation playback nodes as initial task nodes. Then, according to the execution logic information, determine the trigger condition for the sound playback node and the effect playback node as collision detection, with the sound playback node's attribute set to play for 0.01 seconds and the effect playback node's attribute set to play for 0.05 seconds. Further, configure each task node according to the relevant trigger conditions and attribute information. After configuration, the resulting multiple task nodes will correspond to multiple task nodes for the skills to be processed.
[0087] refer to Figure 2 This is a schematic diagram of the editing interface of a skill editor as shown in one embodiment. It includes a menu bar, toolbar, resource attribute editing bar, preview window, timeline of task nodes, and task node attribute editing bar. The menu bar is used to customize the skill editor interface; the toolbar allows saving skill resources and performing operations such as playing, pausing, and stepping on skills. Figure 2 The toolbar, as shown, contains the following controls from left to right: save, play, pause, and step controls; a resource attribute editing bar for editing skill data; a preview window for real-time display of skill effects and quick editing of location data; a task node timeline for adding or deleting skill task nodes; a task node attribute editing bar for editing task node attribute data; and a resource list bar for quickly opening other skill resources.
[0088] In practical applications, it can be Figure 2 The timeline window for the task nodes shown creates the initial task nodes, and the task node properties panel allows you to configure each initial task node.
[0089] In this embodiment, multiple task nodes of the skill to be processed are first determined and configured based on the execution task information and execution logic information, thereby realizing the representation of the complex logic of the skill to be processed. This node-based editing method is simple and easy to operate, thereby improving the editing efficiency of skills.
[0090] In an exemplary embodiment, in step S130, establishing the node connection relationship between multiple task nodes based on the execution logic information can be specifically achieved through the following steps:
[0091] Step S131: Determine the dependency information between multiple task nodes based on the execution logic information;
[0092] Step S132: Based on dependency information, establish node connection relationships between multiple task nodes.
[0093] In practice, the dependency information of each task node can be determined based on the execution logic information of the skill to be processed. For example, if task node 2 requires the execution result of task node 1 as an execution condition, then task node 1 and task node 2 have a dependency relationship, that is, task node 2 depends on task node 1. After determining the dependency information, the connection relationship between each task node can be further established based on this dependency information.
[0094] refer to Figure 3This is a schematic diagram of an editing interface for the connection relationship of task nodes, as illustrated in one embodiment. It includes a menu bar, toolbar, preview window, task node list, and logical data flow editing panel. The menu bar is used to customize the editor interface; the toolbar allows saving edited content or performing operations such as playing, pausing, and stepping on skills; the preview window displays skill effects in real time; the task node list displays task nodes whose connection relationships are to be built, and task nodes can be dragged and dropped into the logical data flow editing panel for logical data editing; the logical data flow editing panel is used to edit and display the data connection relationships between task nodes.
[0095] in, Figure 2 The skill editor's editing interface shown is... Figure 3 The interface for editing the connection relationships of the task nodes shown can be switched between the main interface control and the logic diagram control in the upper right corner of the interface. When the main interface control is in the triggered state, it displays... Figure 2 The skill editor's editing interface displays the logic diagram control when it is in the triggered state. Figure 3 The task node connection relationship editing interface requires that the main interface controls and logic diagram controls cannot be in a triggered state simultaneously.
[0096] In this embodiment, by executing logical information, the dependency information between multiple task nodes is first determined, and then based on the giant dependency information, the node connection relationship between multiple task nodes is established so that the execution flowchart of the skill to be processed can be determined according to the node connection relationship.
[0097] In an exemplary embodiment, after generating the execution flowchart of the skill to be processed based on the node connection relationship in step S130, the method further includes: displaying the skill effect of the skill to be processed through a preview window based on the playback operation instruction for the skill to be processed.
[0098] The playback command can be triggered through the playback control in the skill editor's editing interface.
[0099] In specific implementation, after generating the execution flowchart of the skill to be processed, if the terminal receives a playback operation instruction for the skill to be processed, based on the playback operation instruction, through... Figure 2 The preview window in the editing interface shows the skill effects of the skill to be processed.
[0100] Furthermore, in an exemplary embodiment, after displaying the skill effect of the skill to be processed through the preview window based on the play operation command for the skill to be processed, the method further includes: stopping the display of the skill effect of the skill to be processed in the preview window based on the pause operation command for the skill to be processed; and displaying the step skill effect of the skill to be processed through the preview window based on the step operation command for the skill to be processed.
[0101] The pause command can be triggered using the pause control in the skill editor's editing interface.
[0102] The step operation command can be triggered through the step control in the skill editor's editing interface.
[0103] In specific implementation, when Figure 2 The preview window shown is displaying the skill effect of the skill to be processed. If the terminal receives a pause command for the skill to be processed, for example, receiving a pause command for the skill to be processed... Figure 2 Triggering the second control in the toolbar will temporarily pause the display of the skill's effect in the preview window. If the terminal receives a step-by-step operation command for the skill to be processed, for example, receiving a command for... Figure 2 The trigger operation of the third control in the toolbar can perform step-by-step processing of the skill effect of the skill to be processed, and display the step-by-step skill effect of the skill to be processed in the preview window.
[0104] In the above embodiments, the preview window set in the skill editor can display the skill effect of the processed skill in real time, and the skill effect can be paused and stepped at any time as needed, so that relevant personnel can quickly and intuitively understand the various situations of the processed skill and improve editing efficiency.
[0105] In one exemplary embodiment, when it is determined that there are redundant task nodes among multiple task nodes, the redundant task nodes are deleted from the execution flowchart to obtain a new execution flowchart for the skill to be processed.
[0106] In specific implementation, such as Figure 2 The editing window for the timeline of a task node is shown in the image. Three task nodes are displayed. By dragging the length and starting position of the corresponding length bar for each task node horizontally, the playback time of the task node can be adjusted. In addition to adjusting the playback time of each task node, if there are redundant task nodes among the generated multiple task nodes, these redundant task nodes can be deleted in the task node timeline editing window. When it is necessary to insert a new task node among multiple task nodes, a new task node can be inserted before or after any task node in the task node timeline editing window. The order of two task nodes can also be adjusted through this insertion operation.
[0107] In this embodiment, task nodes can be quickly edited by adding, deleting, and modifying them in the editing window of the task node's timeline. This visual, timeline-based editing method facilitates the rapid generation of skill data, thereby improving editing efficiency.
[0108] In one exemplary embodiment, after generating the execution flowchart of the skill to be processed, the method further includes: saving the execution flowchart of the skill to be processed to obtain a static data file of the skill to be processed; the static data file is in binary format, JS object notation format, or Extensible Markup Language format.
[0109] Specifically, the JS object's simplified format can be JSON, or the Extensible Markup Language (XML) format; that is, the static data file of the skill to be processed stored in this disclosure is a binary file, a JSON file, or an XML file. When receiving a request for... Figure 2 The first control in the toolbar, which is the save control, can save the execution flowchart of the skill to be processed when the trigger operation is executed, and obtain the static data file of the skill to be processed.
[0110] It should be noted that the format of the static data file described in this embodiment is only for illustrating this disclosure and is not intended to limit the content of this disclosure. Those skilled in the art can also store the static data file of the skill to be processed in other static data formats as needed.
[0111] In this embodiment, the data file obtained by saving the execution flowchart of the skill to be processed is a purely static data file, which does not contain any logic code. Any other system can parse and use this static data file after obtaining it, so that the data file of the game skill edited by this method can be applied to any self-developed server without relying on the "Dedicated Server" framework of Unreal Engine 4. This improves the reusability of the edited skill and saves a lot of manpower, time and resources wasted on repetitive editing work.
[0112] In another exemplary embodiment, such as Figure 4 The diagram shown is a flowchart illustrating another skill processing method according to an exemplary embodiment. In this embodiment, the method includes the following steps:
[0113] Step S410: Obtain the execution task information and execution logic information of the skill to be processed;
[0114] Step S420: Based on the task execution information, create multiple initial task nodes for the skills to be processed;
[0115] Step S430: Determine the triggering conditions and attribute information of each initial task node based on the execution logic information;
[0116] Step S440: Configure each initial task node according to the triggering conditions and attribute information to obtain multiple configured task nodes, which correspond to multiple task nodes as skills to be processed.
[0117] Step S450: Determine the dependency information between multiple task nodes based on the execution logic information;
[0118] Step S460: Based on dependency information, establish node connection relationships between multiple task nodes, and based on node connection relationships, generate an execution flowchart for the skills to be processed.
[0119] Step S470: Save the execution flowchart of the skill to be processed to obtain the static data file of the skill to be processed; the static data file is in binary format, JS object notation format or Extensible Markup Language format.
[0120] The visual node-based editing method provided in this embodiment is easy to operate and does not require advanced editing skills. It allows editors to intuitively edit skill logic, which can improve the editing efficiency of skills while meeting the business needs of complex logical skills.
[0121] In one exemplary embodiment, to facilitate understanding of the embodiments of this disclosure by those skilled in the art, specific examples will be described below in conjunction with the accompanying drawings. References Figure 5 This diagram illustrates the relationships between classes in a skill system within an application instance. In the diagram, the symbol → represents a dependency relationship, for example, A→B means A depends on B; the symbol... Indicates inheritance, for example , indicating that A inherits from B; symbol Indicates aggregation, for example This indicates that B is aggregated in A. For example... Figure 5 As shown, the class design of the skill system includes:
[0122] Static data for a single action (such as playing an animation, moving, rotating, or collision detection), for example, playing an animation would be configured with: a. the animation to be played, and b. the animation playback rate.
[0123] A single behavior instance, including dynamic runtime data and runtime logic, is associated with a single behavior. At runtime, the runtime will determine how to execute the single behavior based on the static data of the single behavior.
[0124] Static data for skills / buffs (which add a "magic" or "effect" to a character to enhance their abilities), including skill / buff attributes and arrays of single behaviors.
[0125] A skill / buff instance includes dynamic runtime data (mainly runtime and the single behavior instance being executed) and runtime logic. It is associated with a skill / buff and continuously reads data from the static data of the skill / buff during runtime to create and manage single behavior instances.
[0126] The skill / buff component is mainly used to provide functions for releasing skills / buffs, interrupting skills / buffs, and managing skill / buff instances.
[0127] The skill system's operational logic includes the skill release process for both game clients (referred to as the first client and the second client), as well as the tick (timed update) of skill components and skill instances.
[0128] The skill release process in the first client is as follows: Figure 6 As shown, it includes:
[0129] When the first client releases skill O, it calls its own skill release interface to notify the server to release skill O. At the same time, when calling the skill release interface, the first client will also prepare the data required for the skill instance and further determine whether skill O meets the release conditions. If it is determined that skill O can be released, it will be terminated by other skill instances of skill O and a skill instance of skill O will be created. If it is determined that skill O cannot be released, the process will end directly.
[0130] When it is determined that skill O can be released, the first client receives the release result message from the server for skill O. If the release is successful, the first client notifies the skill instance to exit the prediction period. If the release fails, a rollback operation is performed through the skill instance to terminate the skill instance. A rollback operation will also be performed through the skill instance if the received release result from the server exceeds a predetermined time.
[0131] The skill release process of the second client includes: the second client receiving the release success message of skill O released by the server, and creating and initializing the skill instance.
[0132] The process for scheduled updates of skill components and skill instances is as follows: Figure 7 As shown, the timed update process of the skill component includes: traversing the pre-execution queue and releasing new skills, traversing skill instances, performing timed updates of skill instances, and destroying skill instances whose life has ended.
[0133] The process of periodically updating skill instances includes: retrieving data from the MainSection (main part) of the skill data; traversing the task list of the MainSection and creating new task instances; retrieving the corresponding ExtraSection (other part) from the skill data based on the SectionID (identifier of the retrieved data), traversing the task list of the ExtraSection and creating new task instances; traversing the pre-execution queue and creating new task instances; traversing the current task instances, calling their tick, destroying task instances whose lifespan has ended, and then determining whether the ExtraSection's lifespan has ended. If so, the ExtraSection is terminated; otherwise, it is terminated directly.
[0134] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0135] It is understood that the same / similar parts between the various embodiments of the methods described above in this specification can be referred to each other. Each embodiment focuses on the differences from other embodiments, and relevant parts can be referred to the description of other method embodiments.
[0136] Based on the same inventive concept, this disclosure also provides a skill processing apparatus for implementing the skill processing method described above.
[0137] Figure 8 This is a structural block diagram illustrating a skill processing device according to an exemplary embodiment. (Refer to...) Figure 8 The device includes: an acquisition unit 810, a creation unit 820, and a generation unit 830, wherein:
[0138] The acquisition unit 810 is configured to acquire the execution task information and execution logic information of the skills to be processed;
[0139] Unit 820 is configured to create multiple task nodes for the skills to be processed based on the task information and execution logic information.
[0140] The generation unit 830 is configured to establish node connection relationships between multiple task nodes based on execution logic information, and generate an execution flowchart of the skill to be processed based on the node connection relationships.
[0141] In an exemplary embodiment, the creation unit 820 is further configured to perform the following: create multiple initial task nodes for a skill to be processed based on execution task information; determine the triggering conditions and attribute information of each initial task node according to execution logic information; and configure each initial task node according to the triggering conditions and attribute information to obtain multiple configured task nodes, which correspond to multiple task nodes for a skill to be processed.
[0142] In an exemplary embodiment, the generation unit 830 is further configured to perform the following: determine the dependency information between multiple task nodes based on the execution logic information; and establish the node connection relationship between the multiple task nodes based on the dependency information.
[0143] In one exemplary embodiment, the device further includes a preview unit configured to execute a playback operation instruction based on the skill to be processed, and to display the skill effect of the skill to be processed through a preview window.
[0144] In one exemplary embodiment, the device further includes a pause unit configured to execute a pause operation command based on the skill to be processed, stopping the display of the skill effect of the skill to be processed in the preview window.
[0145] The step unit is configured to execute step operation instructions based on the skill to be processed, and to display the step skill effect of the skill to be processed through a preview window.
[0146] In an exemplary embodiment, the generation unit 830 is further configured to perform the following: when it is determined that there is a missing task node among multiple task nodes, determine the position of the missing task node in the execution flowchart; insert the missing task node into the execution flowchart according to its position in the execution flowchart, and obtain a new execution flowchart for the skill to be processed.
[0147] In one exemplary embodiment, the generation unit 830 is further configured to delete the redundant task nodes from the execution flowchart when it is determined that there are redundant task nodes among the multiple task nodes, thereby obtaining a new execution flowchart for the skill to be processed.
[0148] In one exemplary embodiment, the apparatus further includes a storage unit, which is configured to execute an execution flowchart for storing the skill to be processed, thereby obtaining a static data file of the skill to be processed; the static data file is in binary format, JS object notation format, or Extensible Markup Language format.
[0149] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.
[0150] Figure 9 This is a block diagram illustrating an electronic device 900 for implementing a skill processing method according to an exemplary embodiment. For example, the electronic device 900 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.
[0151] Reference Figure 9 The electronic device 900 may include one or more of the following components: processing component 902, memory 904, power supply component 906, multimedia component 908, audio component 910, input / output (I / O) interface 912, sensor component 914, and communication component 916.
[0152] Processing component 902 typically controls the overall operation of electronic device 900, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 902 may include one or more processors 920 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 902 may include one or more modules to facilitate interaction between processing component 902 and other components. For example, processing component 902 may include a multimedia module to facilitate interaction between multimedia component 908 and processing component 902.
[0153] Memory 904 is configured to store various types of data to support the operation of electronic device 900. Examples of this data include instructions for any application or method operating on electronic device 900, contact data, phonebook data, messages, pictures, videos, etc. Memory 904 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, optical disk, or graphene memory.
[0154] Power supply component 906 provides power to various components of electronic device 900. Power supply component 906 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 900.
[0155] Multimedia component 908 includes a screen that provides an output interface between the electronic device 900 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 908 includes a front-facing camera and / or a rear-facing camera. When the electronic device 900 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.
[0156] Audio component 910 is configured to output and / or input audio signals. For example, audio component 910 includes a microphone (MIC) configured to receive external audio signals when electronic device 900 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 904 or transmitted via communication component 916. In some embodiments, audio component 910 also includes a speaker for outputting audio signals.
[0157] I / O interface 912 provides an interface between processing component 902 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.
[0158] Sensor assembly 914 includes one or more sensors for providing state assessments of various aspects of electronic device 900. For example, sensor assembly 914 can detect the on / off state of electronic device 900, the relative positioning of components such as the display and keypad of electronic device 900, changes in position of electronic device 900 or its components, the presence or absence of user contact with electronic device 900, orientation or acceleration / deceleration of device 900, and temperature changes of electronic device 900. Sensor assembly 914 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 914 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 914 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.
[0159] Communication component 916 is configured to facilitate wired or wireless communication between electronic device 900 and other devices. Electronic device 900 can access wireless networks based on communication standards, such as WiFi, carrier networks (such as 2G, 3G, 4G, or 5G), or combinations thereof. In one exemplary embodiment, communication component 916 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 916 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0160] In an exemplary embodiment, the electronic device 900 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.
[0161] In one exemplary embodiment, a computer-readable storage medium including instructions is also provided, such as a memory 904 including instructions, which can be executed by a processor 920 of an electronic device 900 to perform the above-described method. For example, the computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0162] In one exemplary embodiment, a computer program product is also provided, which includes instructions that can be executed by a processor 920 of an electronic device 900 to perform the above-described method.
[0163] It should be noted that the above-mentioned apparatus, electronic equipment, computer-readable storage medium, computer program product, etc., may also include other implementation methods according to the description of the method embodiments. For specific implementation methods, please refer to the description of the relevant method embodiments, which will not be elaborated here.
[0164] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the claims.
[0165] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. A skill processing method, characterized in that, include: Obtain the execution task information and execution logic information of the skills to be processed; Based on the execution task information, multiple initial task nodes for the skill to be processed are created in the timeline window of the editing interface; Based on the execution logic information, the triggering conditions and attribute information of each initial task node are determined. According to the triggering conditions and attribute information, the initial task nodes are configured to obtain multiple task nodes of the skill to be processed. Based on the execution logic information, establish node connection relationships between the multiple task nodes, and generate an execution flowchart for the skill to be processed based on the node connection relationships; The method further includes: displaying the skill effect of the skill to be processed through a preview window in the editing interface; and adjusting the playback time of the task node being dragged in response to horizontal dragging of the length bar corresponding to the task node in the timeline window for each task node.
2. The method according to claim 1, characterized in that, The step of establishing node connection relationships among the multiple task nodes based on the execution logic information includes: Based on the execution logic information, the dependency information between the multiple task nodes is determined; Based on the dependency information, establish node connection relationships between the multiple task nodes.
3. The method according to claim 1, characterized in that, After generating the execution flowchart of the skill to be processed based on the node connection relationship, the method further includes: Based on the playback operation command for the skill to be processed, the skill effect of the skill to be processed is displayed through a preview window.
4. The method according to claim 3, characterized in that, After displaying the skill effect of the skill to be processed through a preview window based on the playback operation command for the skill to be processed, the method further includes: Based on the pause operation command for the skill to be processed, the display of the skill effect of the skill to be processed in the preview window is stopped; Based on the step operation instructions for the skill to be processed, the step skill effect of the skill to be processed is displayed through the preview window.
5. The method according to claim 1, characterized in that, The method further includes: When it is determined that there is a missing task node among the multiple task nodes, the position of the missing task node in the execution flowchart is determined; According to their positions in the execution flowchart, the missing task nodes are inserted into the execution flowchart to obtain a new execution flowchart for the skill to be processed.
6. The method according to claim 1, characterized in that, The method further includes: When it is determined that there are redundant task nodes among the multiple task nodes, the redundant task nodes are deleted from the execution flowchart to obtain a new execution flowchart for the skill to be processed.
7. The method according to any one of claims 1-6, characterized in that, After generating the execution flowchart of the skill to be processed, the method further includes: Save the execution flowchart of the skill to be processed to obtain the static data file of the skill to be processed; the static data file is in binary format, JS object abbreviation format or Extensible Markup Language format.
8. A skill processing device, characterized in that, include: The acquisition unit is configured to acquire the task information and execution logic information of the skills to be processed; The creation unit is configured to create multiple initial task nodes for the skill to be processed in the timeline window of the editing interface based on the execution task information. Based on the execution logic information, the triggering conditions and attribute information of each initial task node are determined. According to the triggering conditions and attribute information, the initial task nodes are configured to obtain multiple task nodes of the skill to be processed. The generation unit is configured to establish node connection relationships between the multiple task nodes based on the execution logic information, and generate an execution flowchart of the skill to be processed based on the node connection relationships; The preview unit is configured to display the skill effect of the skill to be processed through a preview window in the editing interface; The generation unit is also configured to perform, for each task node, adjusting the playback time of the task node being dragged in response to a horizontal drag of the length bar corresponding to the task node in the timeline window.
9. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the skill processing method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, When the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device is enabled to perform the skill processing method as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Game skill editing method and device
CN110882534A
Visual editing method and device for Unity 3D game animation data and storage medium
CN112363689A
Universal visual editing method and device for automatic behavior of Unity 3D game and medium
CN112363690A