Назад към всички

unreal-gamesframework

// Unreal Engine Gameplay Ability System (GAS) skill for attributes, abilities, and gameplay effects.

$ git log --oneline --stat
stars:384
forks:73
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
nameunreal-gamesframework
descriptionUnreal Engine Gameplay Ability System (GAS) skill for attributes, abilities, and gameplay effects.
allowed-toolsRead, Grep, Write, Bash, Edit, Glob, WebFetch

Unreal GAS Skill

Gameplay Ability System for Unreal Engine.

Overview

This skill provides capabilities for implementing complex gameplay systems using Unreal's Gameplay Ability System (GAS).

Capabilities

Abilities

  • Create Gameplay Abilities
  • Handle ability activation
  • Manage ability costs
  • Implement cooldowns

Attributes

  • Define attribute sets
  • Handle attribute modifiers
  • Implement derived attributes
  • Manage attribute replication

Gameplay Effects

  • Create instant effects
  • Implement duration effects
  • Handle stacking
  • Manage effect removal

Integration

  • Implement ability tasks
  • Handle ability events
  • Create ability tags
  • Manage ability instances

Prerequisites

  • Unreal Engine 5.0+
  • GameplayAbilities plugin enabled

Usage Patterns

Attribute Set

UCLASS()
class UMyAttributeSet : public UAttributeSet
{
    GENERATED_BODY()

public:
    UPROPERTY(BlueprintReadOnly, ReplicatedUsing=OnRep_Health)
    FGameplayAttributeData Health;
    ATTRIBUTE_ACCESSORS(UMyAttributeSet, Health)

    UPROPERTY(BlueprintReadOnly, ReplicatedUsing=OnRep_MaxHealth)
    FGameplayAttributeData MaxHealth;
    ATTRIBUTE_ACCESSORS(UMyAttributeSet, MaxHealth)
};

Gameplay Ability

UCLASS()
class UGA_Attack : public UGameplayAbility
{
    GENERATED_BODY()

protected:
    virtual void ActivateAbility(
        const FGameplayAbilitySpecHandle Handle,
        const FGameplayAbilityActorInfo* ActorInfo,
        const FGameplayAbilityActivationInfo ActivationInfo,
        const FGameplayEventData* TriggerEventData) override;
};

Best Practices

  1. Use tags extensively
  2. Keep abilities modular
  3. Handle prediction properly
  4. Test multiplayer thoroughly
  5. Document ability interactions

References