Skip to content

Gameplay Ability System basics - Setting up and implementation

Notifications You must be signed in to change notification settings

SankethBennur/unreal-engine-GAS-tutorial

Repository files navigation

Gameplay Ability System

Attributes and UI

  • Implemented
    • Base attributes: Health, Mana, Stamina,
    • Core attributes: Strength, Agility, Intelligence,
    • Battle attributes: Armor, Movement Speed, Attack Speed etc.
  • Attribute widgets appear on HUD dynamically, when a pawn is possessed by player.
github-attributes-ui.mp4

Melee, Block and Parry

  • Parry window while blocking.
  • Blocking damages stamina, while parrying returns damage to source' stamina.
github-melee-block-parry.mp4

Triple (or Quadruple) jump!

  • Any number of maximum jumps can be used, just by modifying an attribute.
  • Jump recharge effect occurs to refill number of jumps to maximum.
  • Also updating character walk speed in level based on a movement-speed attribute.
github-triple-jump.mp4

Disable statuses

  • Implemented disable statuses from DotA 2 such as root, disarm, silence, stun etc.
  • Implemented using Gameplay Cues with appropriate animation across a multiplayer network.
github-disable-statuses.mp4

Ability Target Data

  • Created an Asynchronous method (latent action) that can send a target data to server.
  • The ability sends the target data to server, and upon receiving, the appropriate ability action is performed.
  • So a player can blink to a target location that was set by local input values, and action will be performed by Server.
github-blink.mp4

Passive Ability & Break

  • Triggering a passive ability based on an event.
  • Break effect prevents the passive ability from activating.
  • Implemented Mana Burn from dota - notice how mana is damaged on melee hit, and when passive is disabled (break effect) mana burn does not happen.
github-passive-break.mp4

Curve Tables, Magnitude Modifier Calculation Class & Effect Execution Class

  • Utilized Curve Tables for Gameplay Effect values for a data-driven approach.
  • Used Magnitude Modifer Calculation Class for complex calculation of an effect modifier.
  • Also used Effect Execution Class to perform operation on a running effect. github-curve-table

Meta Attributes, Stacking and Overflowing Effects

  • Health damaged/healed using a distinct meta-attribute.
  • Also refining the damage received through damage reduction from magical or physical damage, as in DotA 2.
  • Stacking an effect that overflows to perform another effect.
github-effect-stacking.mp4

About

Gameplay Ability System basics - Setting up and implementation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published