GameMode와 GameState 분류
승리 조건과 스폰 규칙은 GameMode에, 모두가 봐야 하는 점수와 시간은 GameState에 둡니다.
게임 규칙, 입력, 상태, UI, AI, 네트워크를 어느 클래스와 컴포넌트가 책임질지 나누면 디버깅과 확장이 쉬워집니다.
승리 조건과 스폰 규칙은 GameMode에, 모두가 봐야 하는 점수와 시간은 GameState에 둡니다.
입력 해석과 UI 모드는 PlayerController가 맡고 이동, 점프, 공격 실행은 Character가 처리합니다.
DataAsset, DataTable, AttributeSet으로 수치를 분리해 빌드 없이 조정할 수 있는 범위를 넓힙니다.
AIController, Blackboard, Behavior Tree, Nav Mesh Bounds Volume이 같은 목표 위치를 기준으로 동작해야 합니다.
데미지, 아이템 획득, 승패 판단은 서버 권한으로 처리하고 필요한 상태만 Replication과 RPC로 동기화합니다.
UE_LOG, Visual Logger, show collision, stat unit, 블루프린트 디버거를 기준으로 기능별 확인 지점을 남깁니다.