Ad Clicks : Ad Views : Ad Clicks : Ad Views : Ad Clicks : Ad Views : Ad Clicks : Ad Views :
Oh Snap!

It looks like you're using an adblocker. Adblockers make us sad. We use ads to keep our content happy and free. If you like what we are doing please consider supporting us by whitelisting our website. You can report badly-behaved ads by clicking/tapping the nearby 'Advertisement' X text.

Unreal Engine 5 – Gameplay Ability System – Top Down RPG by Stephen Ulibarri

/

Release date:2024, March

Duration:23 h 59 m

Author:Stephen Ulibarri

Skill level:Beginner

Language:English

Exercise files:Yes

In this extensive course, you’ll delve deep into Unreal Engine development, focusing on creating a top-down RPG-style game with an emphasis on the Gameplay Ability System (GAS). With over 100 hours of video content, this course is designed to equip you with the skills and knowledge needed to architect a fully-functional RPG game, complete with intricate systems and AAA-quality code.

Here’s what you’ll learn:

  • Setting up a Top-Down Project from scratch
  • Enemy and item selection with outline effects
  • Proper use of OOP and inheritance to create a character class hierarchy
  • Introduction to the Gameplay Ability System and its core classes
  • Custom Gameplay Ability System Components and Attribute Sets, with a focus on replication
  • Utilizing Attributes for player stats, including Primary and Secondary Attributes
  • Implementing Gameplay Effects and Tags for enhanced functionality
  • Efficient handling of complex UI in an RPG game
  • Designing full Attribute and Spell Menus, with upgrade abilities and spell trees
  • Creating various types of Gameplay Abilities to handle spells and character capabilities
  • Implementing different RPG Classes in a scalable manner
  • Developing a full RPG-style combat system with damage types, resistances, and debuffs
  • Implementing enemy AI behavior using Behavior Trees and Environment Query System (EQS)
  • Incorporating visual feedback for combat mechanics, such as floating text and status effects
  • Managing Ability Cost and Cooldown, with spells costing Attribute resources
  • Creating a fully functional HUD with equipped spells and experience (XP) display
  • Implementing an Experience and Level-Up System, with associated attribute and spell upgrades
  • Crafting Passive Spells and a variety of Offensive Spells
  • Saving Progress and managing Level Transitions
  • Exploring intermediate/advanced Unreal Engine topics, including custom Async Tasks and Blueprint Function Libraries
  • Understanding the principles of SOLID Coding and code architecture for a scalable project
  • Determining the appropriate use of C++ versus Blueprint functionality

This course is not designed for beginners and assumes prior knowledge of the C++ programming language and Unreal Engine. It provides a serious-scale project foundation with approximately 50% Blueprints and 50% C++ architecture, showcasing best coding practices and principles.

By the end of the course, you’ll have a comprehensive understanding of Unreal Engine, empowering you to create your own well-architected projects and add value to any development endeavor.

Join this course and embark on the biggest leap of your game development career.

Stephen Ulibarri, founder of the Druid Mechanics Game Developer Community

Note: This course project is created in Unreal Engine version 5.2, with periodic updates to ensure compatibility with newer engine versions.

Watch online or Download for Free
01. Introduction

01. Introduction

02. Project Creation

01. Project Creation
02. Setting up Version Control
03. The Base Character Class
04. Player and Enemy Characters
05. Character Blueprint Setup
06. Animation Blueprints
07. Enhanced Input
08. Aura Player Controller
09. Movement Input
10. Game Mode
11. Enemy Interface
12. Highlight Enemies
13. Post Process Highlight

03. Intro to the Gameplay Ability System

01. The Gameplay Ability System
02. The Main Parts of GAS
03. The Player State
04. Ability System Component and Attribute Set
05. GAS in Multiplayer
06. Constructing the ASC and AS
07. Replication Mode
08. Init Ability Actor Info

04. Attributes

01. Attributes
02. Health and Mana
03. Attribute Accessors
04. Effect Actor

05. RPG Game UI

01. Game UI Architecture
02. Aura User Widget and Widget Controller
03. Globe Progress Bar
04. Health Globe
05. Aura HUD
06. Overlay Widget Controller
07. Broadcasting Initial Values
08. Listening for Attribute Changes
09. Callbacks for Mana Changes

06. Gameplay Effects

01. Gameplay Effects
02. Effect Actor Improved
03. Instant Gameplay Effects
04. Duration Gameplay Effects
05. Periodic Gameplay Effects
06. Effect Stacking
07. Infinite Gameplay Effects
08. Instant and Duration Application Policy
09. Infinite Effect Application and Removal
10. PreAttributeChange
11. PostGameplayEffectExecute
12. Curve Tables for Scalable Floats

07. Gameplay Tags

01. Gameplay Tags
02. Creating Gameplay Tags in the Editor
03. Creating Gameplay Tags from Data Tables
05. Apply Gameplay Tags with Effects
06. Gameplay Effect Delegates
07. Get All Asset Tags
08. Broadcasting Effect Asset Tags
09. UI Widget Data Table
10. Retrieving Rows from Data Tables
11. Broadcasting Data Table Rows
12. Message Widget
13. Animating the Message Widget
14. Replacing Callbacks with Lambdas
15. Ghost Globe
16. Properly Clamping Attributes

08. RPG Attributes

01. Initialize Attributes from a Data Table
02. Initialize Attributes with Gameplay Effects
03. Attribute Based Modifiers
04. Modifier Order of Operations
05. Modifier Coefficients
06. Secondary Attributes
07. Derived Attributes
08. Custom Calculations
09. Player Level and Combat Interface
10. Modifier Magnitude Calculations
11. Initializing Vital Attributes

09. Attribute Menu

01. Attribute Menu – Game Plan
02. Attribute Menu – Framed Value
03. Attribute Menu – Text Value Row
04. Attribute Menu – Text Value Button Row
05. Attribute Menu – Construction
06. Button Widget
07. Wide Button Widget
08. Opening the Attribute Menu
09. Closing the Attribute Menu
10. Plan for Displaying Attribute Data
11. Gameplay Tags Singleton
12. Aura Asset Manager
13. Native Gameplay Tags
14. Attribute Info Data Asset
15. Attribute Menu Widget Controller
16. Aura Ability System Blueprint Library
17. Constructing the Attribute Menu Widget Controller
18. Attribute Info Delegate
19. Widget Attribute Tags
20. Mapping Tags to Attributes
21. Responding to Attribute Changes

10. Gameplay Abilities

01. Gameplay Abilities
02. Granting Abilities
03. Settings on Gameplay Abilities
04. Input Config Data Asset
05. Aura Input Component
06. Callbacks for Ability Input
07. Activating Abilities
08. Click To Move
09. Setting Up Click to Move
10. Setting Up Auto Running
11. Implementing Auto Running
12. Code Clean Up
13. Aura Projectile
14. Aura Projectile Spell
15. Spawning Projectiles

11. Ability Tasks

01. Ability Tasks
02. Sending Gameplay Events
03. Spawn FireBolt from Event
04. Custom Ability Tasks
05. Target Data
06. Send Mouse Cursor Data
07. Receiving Target Data
08. Prediction in GAS
09. Orienting the Projectile
10. Motion Warping
11. Projectile Impact
12. Projectile Collision Channel
13. Projectile Gameplay Effect
14. Enemy Health Bar
15. Ghost Bar

12. RPG Character Classes

01. RPG Character Classes
02. Character Class Info
03. Default Attribute Effects
04. Curve Tables – CSV and JSON
05. Initializing Enemy Attributes

13. Damage

01. Meta Attributes
02. Damage Meta Attribute
03. Set By Caller Magnitude
04. Ability Damage
05. Enemy Hit React
06. Activating the Enemy Hit React Ability
07. Enemy Death
08. Dissolve Effect
09. Floating Text Widget
10. Showing Damage Text
11. Execution Calculations
12. Damage Execution Calculation
13. ExecCalcs – Capturing Attributes
14. Implementing Block Chance
15. Implementing Armor and Armor Penetration
16. Damage Calculation Coefficients
17. Implementing Critical Hits

14. Advanced Damage Techniques

01. The Gameplay Effect Context
02. Custom Gameplay Effect Context
03. NetSerialize
04. Implementing Net Serialize
05. Struct Ops Type Traits
06. Aura Ability System Globals
07. Using a Custom Effect Context
08. Floating Text Color
09. Hit Message
10. Damage Types
11. Mapping Damage Types to Resistances
12. Resistance Attributes
13. Resistance Damage Reduction
14. Multiplayer Test

15. Enemy AI

01. Enemy AI Setup
02. AI Controller Blackboard and Behavior Tree
03. Behavior Tree Service
04. Blackboard Keys
05. Finding the Nearest Player
06. AI and Effect Actors
07. Behavior Tree Decorators
08. Attack Behavior Tree Task
09. Find New Location Around Target
10. Environment Query System
11. Environment Queries
12. EQS Tests
13. Distance Test
14. Using EQS Queries in Behavior Trees

16. Enemy Melee Attacks

01. Melee Attack Ability
02. Attack Montage
03. Combat Target
04. Melee Attack Gameplay Event
05. Get Live Players Within Radius
06. Causing Melee Damage
07. Multiplayer Melee Test
08. Montage Gameplay Tags
09. Tagged Montage
10. Multiple Attack Sockets
11. Ghoul Enemy
12. Ghoul Attack Montages
13. Melee Polish

17. Enemy Ranged Attacks

01. Ranged Attack
02. Rock Projectile
03. Ranged Damage Curve
04. Granting Ranged Attacks
05. Slingshot Attack Montage
06. Playing the Ranged Attack Montage
07. Spawning the Rock Projectile
08. Slingshot Animation Blueprint
09. Slingshot Attack Montage

18. Enemy Spell Attacks

01. Goblin Shaman
02. Shaman Attack Montage
03. Shaman Attack Ability
04. Dead Blackboard Key
05. Enemies Multiplayer Testing

19. Enemy Finishing Touches

01. Goblin Spear – Sound Notifies
02. Impact Effects
03. Melee Impact Gameplay Cue
04. Montage and Socket Tags
05. Goblin Spear – Hurt and Death Sounds
06. Goblin Slingshot – Sound Notifies
07. Rock Impact Effects
08. Goblin Shaman – Sound Notifies
09. Ghoul – Sound Notifies
10. Ghoul – Swipe Trail
11. Demon Blueprint
12. Demon Melee Attack
13. Demon Ranged Attack
14. Demon – Sound Notifies
15. Demon – Dissolve Effect
16. Shaman Summon Locations
17. Async Spawn Times
18. Summoning Particle Effect
19. Select Minion Class at Random
20. Minion Summon Montage
21. Minion Count
22. Elementalist Behavior Tree
23. Elementalist Attack Task
24. Decrementing Minion Count
25. Adding Juice with Tweening
26. Enemies Final Polish

20. Level Tweaks

01. Level Lighting and Post Process
02. Texture Streaming Pool Over Budget
03. Flame Pillar Actor
04. Fade Actor
05. Fading Out Obstructing Geometry

21. Cost and Cooldown

01. Health Mana Spells Widget
02. Spell Globe
03. Adding Spell Globes
04. XP Bar
05. Ability Info Data Asset
06. Initialize Overlay Startup Abilities
07. For Each Ability Delegate
08. Binding Widget Events to the Ability Info Delegate
09. Gameplay Ability Cost
10. Gameplay Ability Cooldown
11. Cooldown Async Task
12. Cooldown Tags in Ability Info
13. Showing Cooldown Time in the HUD
14. Modeling Mode

22. Experience and Leveling Up

01. Experience and Leveling Up
02. Level Up Info Data Asset
03. Adding XP to the Player State
04. Listening for XP Changes
05. Awarding XP Game Plan
06. XP Reward for Enemies
07. Incoming XP Meta Attribute
08. Passively Listening for Events
09. Sending XP Events
10. Showing XP in the HUD
11. Level Up Interface Function
12. Leveling Up
13. Showing Level in the HUD
14. Level Up Niagara System
15. Level Up HUD Message

23. Attribute Points

01. Attribute Points Member Variable
02. Showing Attribute Points in the HUD
03. Attribute Upgrade Buttons
04. Upgrading Attributes
05. Top Off Our Fluids
06. Attribute Menu Polish

24. Spell Menu

01. Spell Menu Design
02. Spell Globe Button
03. Offensive Spell Tree
04. Passive Spell Tree
05. Equipped Spell Row
06. Spell Menu Widget
07. Spell Description Box
08. Spell Menu Button
09. Spell Menu Widget Controller
10. Constructing the Spell Menu Widget Controller
11. Equipped Row Button
12. Ability Status and Type
13. Showing Abilities in the Spell Tree
14. Ability Level Requirement
15. Update Ability Statuses
16. Updating Status in the Spell Menu
17. Show Spell Points
18. Selecting Icons
19. Deselecting Icons
20. Spell Menu Buttons
21. Selected Ability
22. Spending Spell Points
23. Rich Text Blocks
24. Spell Descriptions
25. FireBolt Description
26. Cost and Cooldown in Spell Description
27. Self Deselect
28. Equipped Spell Row Animations
29. Ability Types
30. Equipping Abilities
31. Updating the Overlay When Equipping Abilities
32. Globe Reassigned
33. Unbinding Delegates

25. Combat Tricks

01. Debuff Tags
02. Debuff Parameters
03. Damage Effect Params Struct
04. Using Damage Effect Params
05. Determining Debuff
06. Debuff Info in the Effect Context
07. Debuff in the Attribute Set
08. Dynamic Gameplay Effects
09. Debuff Niagara Component
10. Death Impulse Magnitude
11. Death Impulse in the Effect Context
12. Handling Death Impulse
13. Knockback

26. What a Shock

01. FireBolt Projectile Spread
02. Spawning Multiple Projectiles
03. Homing Projectiles
04. Click Niagara System
05. Invoke Replicated Event
06. Aura Beam Spell
07. Electrocute Montage
08. Player Block Tags
09. GameplayCue Notify Paths
10. Gameplay Cue Notify Actor
11. Electrocute Looping Sound
12. Target Trace Channel
13. First Trace Target
14. Additional Targets
15. Shock Loop Cues on Additional Targets
16. Electrocute Cost Cooldown and Damage
17. Applying Electrocute Cost and Damage
18. Electrocute Polish
19. Explode Dem FireBoltz
20. Stun
21. Stun Niagara System
22. Shock Loop Animations

27. Passive Spells

01. Passive Spell tags
02. Aura Passive Ability
03. Passive Ability Info
04. Passive Tags in Spell Tree
06. Multiple Level Up Rewards
08. Passive Ability Activation
10. Passive Niagara Component

28. Arcane Shards

01. Magic Circle
02. Spawning Magic Circles
03. Magic Circle Interface Functions
04. Arcane Shards Spell
05. Wait Input Press
06. Anti Aliasing and Moving Decals
07. Point Collection
08. Async Point Locations
09. Gameplay Cue Notify Burst
10. Arcane Shards Montage
11. Radial Damage Parameters
12. Setting Radial Damage Parameters
13. Radial Damage with Falloff
14. Tying Radial Damage All Together
15. Ignore Enemies while Magic Circle Active
16. Knockback Force and Death Impulse Overrides
17. Spell Descriptions
18. Arcane Shards Cost and Cooldown

29. Fire Blast

01. FireBlast Ability
02. FireBlast Cost and Cooldown
03. Aura Fire Ball
04. Spawning FireBalls
05. FireBall Timelines
06. Causing FireBall Damage
07. FireBall Explosive Damage
08. Empty Cooldown Texture
09. Execute Local Gameplay Cues

30. Saving Progress

01. Saving Progress
02. Main Menu
03. Play and Quit Buttons
04. Vacant Load Slot
05. Enter Name Load Slot
06. Taken Load Slot
07. Load Menu
08. MVVM
09. Changed Needed for 5.3+
10. View Model Class
11. Constructing a View Model
12. Load Slot View Model
13. Switching the Widget Switcher
14. Save Game Object
15. Binding Variables to ViewModels
16. Load Slot Status
17. Enabling the Select Slot Button
18. Enabling Play and Delete Buttons
19. Are You Sure Widget
20. Deleting a Slot
21. Map Name Field Notify
22. Saving the Map Name
23. Traveling to the Saved Map

31. Checkpoints

01. Choosing the Player Start
02. Setting the Default Player Start
03. Save the Player Start Tag
04. Checkpoints
05. Interface Function for Saving Progress
06. Saving Player Data
07. Loading Player Data
08. Initializing Attributes From Disk
09. Showing Player Level in Load Screen
10. Saving Abilities
11. Loading Abilities
12. Data Structures for Saving Data
13. Saving World State
14. Loading World State

32. Map Entrance

01. Different Highlight Colors
02. Highlight Interface
03. Targeting Status
04. Highlighting Non-Enemies
05. Set Move-To Location
06. Beacons
07. Map Entrance
08. Dungeon Stair Entrance
09. Dungeon Entrance Blueprints
10. Polish Menu
11. Spawn Volumes
12. Player Death
13. Loot Tiers
14. Loot Effects
15. Loot Drop Curve
16. Pickup Sounds
17. Quit Button

33. Course Conclusion

01. Quest – Levels
02. Conclusion – Bonus Video

[Udemy] Unreal Engine 5 – Gameplay Ability System – Top Down RPG by Stephen Ulibarri.7z.rar

[Udemy] Unreal Engine 5 – Gameplay Ability System – Top Down RPG by Stephen Ulibarri_Subtitles.7z

[Udemy] Unreal Engine 5 – Gameplay Ability System – Top Down RPG by Stephen Ulibarri_Subtitles (2).7z


Join us on
  Channel    and      Group

  • Facebook
  • Twitter
  • Google+
  • Linkedin
  • Pinterest

1 Comments

Leave a Comment

Your email address will not be published. Required fields are marked *