개요

GAS(Game Ability System)

메커니즘, 비주얼 이펙트, 애니메이션, 사운드, 데이터 기반 엘리먼트 조정해야 하는 어빌리티를 가지고 있는 RPG, 액션 어드벤처 게임, MOBA 등의 게임 타입에 특화되어 디자인된 프레임워크; 플러그인 형태로 제공

언리얼 엔진에서 복잡한 능력(Ability), 속성(Attribute), 효과(Effect)를 서버 권한으로 안전하게 관리하도록 설계된 프레임워크

용어 요소
ASC Ability System Component
액터에 붙여서 능력 실행과 속성 동기화를 담당
Ability 캐릭터가 수행할 수 있는 개별 능력을 정의 + 애니메이션, 입력, 쿨다운, 자원 소모 등 로직을 담음 공격, 스킬1, 스킬2 등
Attribute Health, Mana 등 캐릭터 속성을 데이터로 묶어 관리하며, ASC를 통해 동기화 체력, 공격력, 마나, 스태미나 등
Gameplay Effect 속성 변동(데미지, 회복 등)과 버프·디버프 로직을 담은 오브젝트 대미지 적용, 지속적인 독 대미지, 버프, 디버프 (어트리뷰트 기반)
GameplayCue 시각·청각 피드백(파티클, 사운드 등)을 담당, ASC가 트리거

제목 없음.png

여러 클래스와 시스템이 유기적으로 결합된 플러그인 형태로 제공

필요성

→ 확장성, 유연성

GAS 기본 흐름

Attribute Set ← Effect → Cue

  ↓                         ↑

ASC         →       Ability     ⇔    Task