HotDogma는 Dragon’s Dogma2를 모티브로 제작한 AI 동료와 함께 드래곤을 사냥하는 싱글 플레이 액션 RPG 프로젝트입니다.
보스전 중심의 전투 루프와 AI 협동 시스템, 드래곤 FSM 기반 랜덤 패턴 전투를 구현하였습니다.
-
장르: 싱글 플레이 액션 RPG
-
개발 기간: 2024.07.22 ~ 2024.08.16
-
팀원 구성: 개발자 3명, 기획 1명, TA 1명
-
주요 특징:
- AI 동료와의 협동 전투 시스템
- 드래곤 FSM 기반 랜덤 공격 패턴
- 클라이밍 포함 플레이어 전투 조작
- 프로젝트 패키징을 통한 배포 환경 구축
-
역할 기반 폴더 분리 및 Git 협업 구조
→ 기능별로 폴더를 나눠 충돌 없이 개발 -
AI 동료 시스템 구축
→ Companion 및 StateComponent 기반 행동 FSM, 명령 수행 구조 구현 -
보스 FSM 및 랜덤 공격 패턴
→ 브레스, 낙뢰, 메테오 등 패턴을 상태 기반으로 관리하고,random_device()로 패턴을 셔플하여 전투 몰입도 강화 -
플레이어 기능 통합
→ 공격, 회피, 스킬, 클라이밍 등 조작 시스템 구현 및 상태 기반 처리 -
UI 및 게임 흐름 구성
→ GameMode를 통한 로비전투종료 흐름 구성, HP바/보스 체력 UI/스킬 UI 구현
| 역할 | 담당 업무 |
|---|---|
| XR (팀장) | 드래곤 FSM 설계, 랜덤 패턴 구성, 충돌/이펙트 처리 |
| XR | AI 동료 명령/무기/스킬 시스템 설계 및 구현 |
| XR | 플레이어 조작 시스템(공격/회피/스킬/클라이밍) 전체 통합 |
| 기획 | 전투 흐름 설계, 보스 패턴 기획, UI 기능 정의 |
| TA | 레벨 디자인(PCG), 이펙트 제작(브레스, 번개 등), 캐릭터 애셋 구성 |
- Engine: Unreal Engine 5.4
- Language: C++, Blueprint
- AI 시스템: NavMesh 이동, FSM 기반 상태 전이
- 전투 구조: 랜덤 패턴 + 상태별 이펙트/충돌 분리
- 조작 구조: Component 기반 Attack / Climb 시스템
- UI: UMG 기반 위젯 시스템 (HP, 보스 체력, 스킬 UI 등)
- 협업 방식: Git + 폴더 분담 방식
- 입력 → Controller → Character → Component → AnimInstance → 충돌 처리
- 소환 → 명령 입력 → 상태 반영 → 행동 수행 (공격, 대기 등)
- 상태 전이 (
Idle→Attack→Wait) - 공격 패턴은 난수 기반으로 셔플 적용
- 체력 0 시 상태 종료
-
🗡️ 플레이어 전투 시스템
공격/스킬 사용 → 애니메이션 재생 + 타격 로직 실행 -
🧗 클라이밍 시스템
표면 감지 후Flying모드 전환 →AddMovementInput으로 등반 이동 -
🧠 AI 동료 명령 시스템
명령 입력 시 동료 상태 전이 → FSM을 통해 반복 수행 구조 실행 -
🐉 드래곤 FSM 시스템
상태 기반 패턴 관리 +random_device()로 패턴 선택
이펙트 및 충돌 분리 클래스(HD_BreathCol,HD_ThunderCol,HD_Meteor) 구성
| 화면 | 설명 |
|---|---|
| 🧍♂️ 플레이어 UI | 공격, 스킬, HUD 정보 출력 |
| 🧗 클라이밍 화면 | 벽 타기 애니메이션 + 충돌 처리 |
| 🧠 동료 명령 UI | 명령 입력 시 상태 출력 |
| 🐉 드래곤 전투 화면 | 브레스/낙뢰/메테오 이펙트 출력 + 체력 UI |
| 🎯 보스 처치 연출 | 종료 시 카메라 줌아웃 및 전투 클리어 연출 |
- Dragon’s Dogma2