GAS Ability Task Registry
GAS Ability Task Registry – Unreal Engine Plugin
Welcome to the GAS Ability Task Registry, a free, open-source plugin for Unreal Engine 5. This plugin provides a growing library of reusable, community-driven UGameplayTask
-based ability tasks designed specifically for the Gameplay Ability System (GAS).
📦 Plugin Overview
Many GAS developers often recreate the same AbilityTasks
across projects. This plugin solves that by offering a centralized, plug-and-play library of useful tasks.
✅ Key Features
📚 Collection of reusable GAS
AbilityTasks
🔁 Minimize redundancy across projects
🧰 Blueprint & C++ ready
🤝 Open for community contributions
🧩 100% plugin-based – easy to integrate
🎯 Fully compatible with Unreal Engine 5.x
🚀 Getting Started
You have three options for installing and using the plugin:
🔹 Option 1: Download from the Unreal Marketplace (Recommended)
Go to the Unreal Marketplace page for GAS Ability Task Registry (Marketplace link will be available once published)
Click "Add to Project"
Open your Unreal project and go to
Edit > Plugins
Ensure GAS Ability Task Registry is enabled
Restart the editor if prompted
🔹 Option 2: Clone the GitHub Repository
Place it inside your project's
Plugins/
folderRegenerate project files (for C++ projects)
Rebuild and enable the plugin in Unreal Editor
🔹 Option 3: Download ZIP from GitHub
Click “Code” > “Download ZIP”
Extract to your project’s
Plugins/
folderRestart the editor and enable the plugin
📘 How to Use
After enabling the plugin:
In your GAS ability class, call
SpawnAbilityTask<>
using any available taskBind events like
OnCompleted
,OnCancelled
, or custom delegatesTasks are available in both Blueprint and C++
🧠 Tip: Each task includes in-code documentation and Blueprint nodes
📂 Plugin Directory Structure
📋 Included Tasks
OnTickEvent
• OwningAbility: Self reference •TaskInstanceName: Optional name
•TickEventReceived: Event with DeltaTime parameter • Return Value: Task reference
Fires an event every frame while the ability is active
• Precise timing for continuous effects • Lightweight alternative to timelines • Ideal for incremental changes
SetInputLockState
• OwningAbility: Self reference • bShouldLock: Toggle input lock • LockType: Timed/Permanent • Duration: Lock time in seconds • bLockMove: Block movement • bLockLook: Block camera
•OnInputLockStateChanged: Fired when lock state changes • Return Value: Task referenc
Controls player input access during ability execution
• Independent control of move/look inputs • Auto-releasing timed mode • Perfect for channeled abilities
InstantMoveToLocation
• OwningAbility: Self reference •TargetLocation: Destination vector •TargetRotation: New rotation • bSweep: Check for collisions •bStopAtCollision: Halt on impact • bSetRotation: Apply rotation
•OnInstantMoveCompleted: Success event • OnFail: Failed teleport event • Return Value: Task reference
Teleports actor to location with optional collision checks
• Built-in collision handling • Vector-based targeting • Success/failure feedback
MoveInDirectionTask
• OwningAbility: Self reference •TaskInstanceName: Optional name • Direction: Movement vector • Interval: Input frequency • Duration: Total movement time
• Return Value: Task reference
Applies continuous movement input in specified direction
• Automatic vector normalization • Configurable duration • Timer-based movement pulses
MoveRandomlyTask
• OwningAbility: Self reference • TaskInstanceName: Optional name •DirectionChangeInterval: Time between direction changes • TotalDuration: Total movement time
•OnMoveRandomlyEnd: Completion event • Return Value: Task reference
Makes character move in changing random directions
• Randomized direction generation • Configurable direction change timing • Great for disorientation effects
PlayMontageAndWaitForEvent
• OwningAbility: Self reference •TaskInstanceName: Optional name • MontageToPlay: Animation • EventTags: Tags to listen for • Rate: Playback speed • StartSection: Named section •bStopWhenAbilityEnds: Auto-stop •AnimRootMotionTranslationScale: Motion scale
• OnCompleted: Normal end • OnBlendOut: Blend finished • OnInterrupted: Premature stop • OnCancelled: Manual cancel • EventReceived: Gameplay event • Return Value: Task reference
Coordinates animation playback with gameplay events
• Complete montage lifecycle events • Gameplay event filtering • Perfect for attack combos
MoveToTarget
• OwningAbility: Self reference •TaskInstanceName: Optional name • TargetActor: Destination actor •AcceptableRadius: Completion distance
• OnSuccess: Reached target • OnFailure: Path unavailable • Return Value: Task reference
Uses pathfinding to navigate to target actor
• NavMesh integration • Automatic path recalculation • Distance-based completion
More tasks are actively being added!
🙌 Contributing
Want to share your own custom AbilityTask
?
Fork the GitHub repo
Add your task to
Source/GASAbilityTaskRegistry/
Submit a Pull Request
No need to fully polish your submission — consistency tweaks will be handled during review.
🧪 Testing
To test any task:
Add it to a
UGameplayAbility
viaSpawnAbilityTask
Use print/logs or delegate bindings to verify expected behavior
Tasks are Blueprint-exposed by default for quick prototyping
🧾 License
This project is licensed under the MIT License – free to use in any commercial or personal project.
Full license text available on GitHub.
📬 Support & Feedback
🔗 Links
Last updated