Able is a C++ Engine Plugin for Unreal Engine 4 that allows content creators to quickly build Abilities using a custom editor without ever needing to touch code, or Blueprints (although both options are available if needed). Able was written by an experienced AAA developer with years of console and PC experience in shipping and optimizing everything from puzzle games to MMOs. Building a 3rd person action game? Able supports that. Building an RPG? Able supports that. FPS? RTS? MMO? Yes, yes, and yes. Able is built around the flexibility of blueprints while keeping all the heavy lifting in C++ and supporting multi-core (Async) processing, speeding up ability execution and preventing blocking the main game thread.Abilities are an essential core gameplay system for most games, so Able was created around a few central concepts:
Creating an Ability should be fast, easy, and allow for quick iteration. Able uses a simple, yet powerful, custom editor that allows anyone to quickly build an Ability from scratch in seconds. The Ability Editor also includes an expandable suite of Unit/Integration Test to help find common Ability errors quickly.
An Ability system should perform as quick as possible whether 1 or 1000 Abilities are playing. Powered by UE4's Async framework, Able farms out Ability work to other CPU cores when available while minimizing work on the main game thread.
An Ability system should provide a generic rule set that can be expanded as according to the games need. By leveraging the UE4 Blueprint System, Able provides multiple hooks for you to customize the systems behaviors according to your needs.
For networked titles, an Ability system should be efficient in all bandwidth usage. Due to structure and stateless nature of Able, Abilities are very light on bandwidth and require only a small amount of information sent across the wire - allowing for more abilities to go play without bogging down your connection.
While especially important in Networked titles, an Ability system should always strive to be as secure as possible and avoid common hack strategies. Able Abilities are compiled into code, so they are much more difficult to hack. For network titles, the Server is always authoritative and uses its own copy of the Ability for all validation.
Interested in learning more? Head over to our Documentation section for an in-depth looking into Abilities, Tasks, and the Editor itself.
While the features in Able are growing with every update, here's a brief overview of some of the features in Able.
Support for various shapes of queries including cones, spheres, and boxes.
Dynamic filters - Keep what you want, remove what you don't.