Features:
-
Custom Editor – Highly customized Asset Editor with State Machine like graph and Persona (animation) viewport / preview.
-
Can use sequence or montages in the graph.
-
Enhanced Input – Can define transition using Enhanced Inputs and have them displayed with keyboard / gamepad icons in the graph.
-
Auto Setup mechanism for animation notify states
-
Can define GE cost and Effect Containers to apply (ex. damage) for each node.
-
Non GAS users can use similar containers to apply damage via Unreal’s Damage System.
-
Can use combo graphs without Gameplay Abilities
-
Can define Gameplay Cues Containers to apply (for instance SFX / VFX for hit impacts) for each node.
-
Replicated and Multiplayer ready
Code Modules:
-
ComboGraph (Runtime)
-
ComboGraphEditor (Editor)
Number of C++ Classes: 60
Network Replicated: Yes
Supported Development / Target Build Platforms: Windows, Mac, Linux
Version: 1.4.2 (5.3 / 5.4 / 5.5) / 1.3.5 (5.1 / 5.2) / 1.3.1 (5.0 / 4.27) / 1.1.0 (4.26)
特征:
-
自定义编辑器 -高度定制的资产编辑器与状态机,如图形和人物(动画)视口/预览。
-
可以在图中使用序列或蒙太奇。
-
增强的输入 -可以使用增强的输入定义过渡,并在图表中显示键盘/游戏手柄图标。
-
自动设置 动画通知状态的机制
-
可以定义 通用电气成本及效果容器 申请(ex. 损坏)为每个节点。
-
非气体用户可以使用类似的容器通过 虚幻的伤害系统.
-
可以使用组合图 没有游戏能力
-
可以定义 游戏提示容器 为每个节点应用(例如SFX/VFX用于命中影响)。
-
复制和多人游戏准备就绪
代码模块:
-
ComboGraph(运行时)
-
ComboGraphEditor(编辑)
C++类数:60
网络复制:是
支持的开发/目标构建平台:Windows、Mac、Linux
版本: 1.4.2 (5.3 / 5.4 / 5.5) / 1.3.5 (5.1 / 5.2) / 1.3.1 (5.0 / 4.27) / 1.1.0 (4.26)
Documentation / Demo Project (Packaged Build) / Videos / Changelog / Discord Server
Combo Graph is an Unreal plugin based on GAS (Gameplay Ability System) that lets you focus on Combo / Combat design with a Custom Graph and node-based Editor to deliver a fast, flexible and enjoyable developer experience.
The main idea behind this plugin is to try to cut down iteration times as much as possible when designing and prototyping a new combat system / combos.
Paired with good animation packs, this plugin hopefully has everything a gameplay developer needs to quickly and efficiently build their own melee combat system.
Built with integration in mind
Built from the ground up with integration in mind, you don’t need to know GAS to use or integrate Combo Graph. It uses GAS and Enhanced Input at its core to play combo animations and setup input transitions between each nodes, in an accessible and approachable way. A Combo Graph asset can be run from a Gameplay Ability via an Ability Task or elsewhere via a Gameplay Task, like from within a Character Blueprint or Behavior Tree Task.
Multiplayer Support
Building off the foundation of GAS and Enhanced Input, replication and multiplayer support were an integrant part of the plugin design and development process. Combo Graphs running within a Gameplay Ability, and using Ability Tasks to handle animation montage, you get proper local prediction and replication out of the bat.
Just know that while you can use Animation Sequences directly within Combo Graphs (more information below), those are not properly replicated unlike Animation Montages. See the disclaimer section.
Combo Graph assets can be created in the Content Browser and can be edited inside a special Combo Graph Editor. It is a node-based editor (similar to Behavior Trees) where you can add any number of Combo nodes to produce combo strings, add your desired Input Actions to transition between those nodes, and configure each nodes to optionally apply Gameplay Effects Containers (or Damages for non GAS users) upon receiving successful hits notifications, Gameplay Effect costs, as well as Gameplay Cue Containers (for VFX / SFX to apply on hit impacts).
Combo Graph supplies two types of Combo Node: Montage based and Sequence based, however you can create your own custom Combo Nodes through Blueprint to provide additional logic.
While it is not the core focus of the plugin, Combo Graph does have a built in collision component. But it is not tightly integrated with the combo system. Combo Graph instead relies on gameplay events that your hit collision system sends to the owner of combo abilities when a hit is registered, along with proper payload information such as instigator / targets and hit result with target data.
Doing so, it is fairly straight forward to integrate with third party collision system, or your own mechanism.
ComboGraphCollisionComponent is an Actor Component providing basic collision detection mechanism for registered meshes using traces. It implements simple logic for hit detection not meant to replace more robust solutions such as Combat Components or AGR Pro (Combat Manager in v4), but rather to provide a quick and easy way to handle collision for those not having or not willing to use aforementioned plugins, or not having a game-specific custom collision system already in place.
Documentation also includes integration guides for both Combat Components and AGR Pro.
Additionally, setting up animations to use in a combo system usually relies on a lot of Animation Notify States (ANS) for each Animation Montage, such as setting up Combo or Collision Windows. This plugin comes with an “Auto Setup” feature which lets you configure a set of Notify States to trigger when montages are playing, without having to edit each and every animation assets. However, you still have the possibility to further tune how those Notify States are used by defining them in animation assets like you would usually do (Auto Setup for a given ANS only takes place if the anim doesn’t define it in its timeline).
This is great for prototyping and saves a lot of time.
Combo Graph comes with a built Behavior Tree Task implemented in c++ to easily run a Combo Graph asset from within Behavior Trees.
Both the demo project and documentation demonstrates how you can easily create your own Behavior Tree Task using the provided gameplay task, which includes all the necessary delegates for you to react to graphs ending their execution, as well as helpers to simulate combo inputs.
Disclaimer
-
When using sequence nodes, the montages are dynamically created before going through the play montage task. Dynamic montages from sequences are great for prototyping but currently does not work properly networked. If you’re developing with multiplayer in mind, please convert your animation sequences to animation montages when you are done with the prototype phase and blocking out of the combo is finalized.
-
No animations are included, this plugin is about providing the underlying gameplay system to use with your existing animations or other animation packs from the marketplace.
-
This plugin has been tested exclusively on Windows on 4.26 / 4.27 / 5.0 early access versions of the engine. Mac or Linux platforms are not supported. This doesn’t mean the plugin can’t run on those platforms, but you may have to resolve compilation errors yourself, if there are any.
Credits
-
The icons used to draw Glyphs/Icons for Input Action in Combo Graphs are coming from Xelu’s Controllers & Keyboard Prompts. Huge thanks to Nicolae Berbece and “Those Awesome Guys” for releasing this pack in the public domain under Creative Commons 0 (CC0).
-
The sword icon used in the plugin thumbnail and asset icons is made by Lorc under CC BY 3.0 (link to original material)
-
Started with Generic Graph as a base learning material. Development of the plugin wouldn’t have been possible without this fantastic resource.
文件编制 / 示范项目 (打包构建) / 短片 / 更新日志 / 不和谐服务器
Combo Graph是一个基于GAS(游戏能力系统)的虚幻插件,可让您通过自定义图形和基于节点的编辑器专注于组合/战斗设计,以提供快速,灵活和愉快的开发者体验。
这个插件背后的主要思想是在设计和原型设计新的战斗系统/组合时尽量减少迭代时间。
与良好的动画包配对,这个插件希望拥有游戏开发人员快速有效地构建自己的近战战斗系统所需的一切。
建立在整合的基础上
从头开始构建,考虑到集成,您不需要知道气体来使用或集成组合图。 它使用气体和增强的输入在其核心播放组合动画和设置输入转换之间的每个节点,在一个可访问和可接近的方式。 组合图资源可以通过技能任务从游戏性技能运行,也可以通过游戏性任务从其他地方运行,例如从角色蓝图或行为树任务中运行。
多人游戏支持
基于GAS和增强的输入、复制和多人支持是插件设计和开发过程中不可或缺的一部分。 组合图在游戏性能力中运行,并使用能力任务处理动画蒙太奇,您可以从蝙蝠中获得适当的本地预测和复制。
只要知道,虽然您可以直接在组合图中使用动画序列(下面的更多信息),但这些是 不是 与动画蒙太奇不同,正确复制。 请参阅免责声明部分。
组合图资源可以在内容浏览器中创建,并可以在特殊的组合图编辑器中进行编辑。 它是一个基于节点的编辑器(类似于行为树),您可以在其中添加任意数量的组合节点以生成组合字符串,添加所需的输入操作以在这些节点之间转换,
组合图提供两种类型的组合节点:基于蒙太奇和基于序列,但您可以通过蓝图创建自己的自定义组合节点以提供额外的逻辑。
虽然它不是插件的核心焦点,但组合图确实有一个内置的碰撞组件。 但它并没有与combo系统紧密集成。 Combo Graph依赖于hit碰撞系统在注册命中时发送给combo技能所有者的游戏性事件,以及适当的有效负载信息,例如煽动者/目标和带有目标数据的命中结果。
这样做,与第三方碰撞系统或您自己的机制集成是相当直接的。
组合;组合 是一个Actor组件,为使用轨迹的注册网格提供基本的碰撞检测机制。 它实现了简单的命中检测逻辑,而不是取代更强大的解决方案,如 战斗组件 或 农业专家 (战斗管理器在v4),而是提供一个快速和简单的方法来处理碰撞那些没有或不愿意使用上述插件,或没有一个游戏特定的自定义碰撞系统已经到位。
此外,设置要在组合系统中使用的动画通常依赖于每个动画蒙太奇的大量动画通知状态(ANS),例如设置组合或碰撞窗口。 该插件带有”自动设置”功能,可让您配置一组通知状态,以便在蒙太奇播放时触发,而无需编辑每个动画资源。 但是,您仍然可以通过在动画资源中定义这些通知状态来进一步调整这些通知状态的使用方式,就像您通常所做的那样(只有当anim没有在其时间线中定义它时,才会对给定ANS进行自动设置)。
这是伟大的原型和节省大量的时间。
组合图附带了一个用c++实现的构建的行为树任务,可以从行为树中轻松运行组合图资源。
演示项目和文档都演示了如何使用提供的gameplay任务轻松创建自己的行为树任务,该任务包括所有必要的委托,以便您对结束执行的图形做出反应,以及模拟组合输入的帮助器。
免责声明
-
使用序列节点时,蒙太奇会在执行播放蒙太奇任务之前动态创建。 来自序列的动态蒙太奇非常适合原型制作,但目前无法正常联网。 如果您正在开发多人游戏,请将您的动画序列转换为动画蒙太奇,当您完成原型阶段和阻止组合完成。
-
不包括动画,这个插件是关于提供底层的游戏系统与您现有的动画或其他动画包从市场使用。
-
这个插件已经在windows上专门测试过4.26 / 4.27 / 5.0 引擎的早期访问版本。 Mac或Linux平台是 不是 支持。 这并不意味着插件不能在这些平台上运行,但您可能必须自己解决编译错误(如果有的话)。
学分
-
用于在组合图中绘制用于输入操作的字形/图标的图标来自 Xelu的控制器和键盘提示. 非常感谢Nicolae Berbece和”那些令人敬畏的家伙”在Creative Commons0(CC0)下在公共领域发布此包。
-
开始于 通用图 作为基础学习材料。 如果没有这个奇妙的资源,插件的开发是不可能的。
评论(0)