UNREAL IMPLEMENTATION
설계는 언리얼 책임 단위로 옮겨야 작동한다
게임 규칙, 입력, 상태, UI, AI, 네트워크를 어느 클래스와 컴포넌트가
맡는지 나누면 디버깅과 확장이 쉬워집니다.
구현 축
권한, 상태 소유자, 데이터화, 관측 지점을 먼저 정해야 기능이
늘어나도 책임 경계가 유지됩니다.
| 시스템 | 주요 책임 | 권장 위치 | 확인할 위험 |
|---|---|---|---|
| 게임 규칙승패와 스폰 | 승리 조건, 라운드, 스폰 정책 | GameMode와 GameState 분리 | 클라이언트가 서버 전용 규칙을 판단함 |
| 플레이어 입력조작과 실행 | 입력 해석, UI 모드, 이동과 공격 실행 | PlayerController, Pawn, Character | 입력 처리와 상태 변경이 한 클래스에 몰림 |
| 데이터 시스템수치와 설정 | 아이템, 능력, 밸런스 값 | DataAsset, DataTable, AttributeSet | 빌드 없는 조정수치가 코드에 박혀 있지 않은지 확인 |
| AI와 이동인지와 행동 | 목표 선택, 이동 경로, 행동 전환 | AIController, Blackboard, Behavior Tree | Nav Mesh와 목표 위치 기준이 어긋남 |
| 멀티플레이동기화 | 데미지, 획득, 승패, 상태 복제 | 서버 권한, Replication, RPC | 권한 혼재클라이언트가 중요한 판정을 확정함 |