01
공유 상태
체력, 점수, 인벤토리처럼 새로 접속한 클라이언트도 알아야 하는 값은 `UPROPERTY(Replicated)`로 둡니다.
DOREPLIFETIME
COND_OwnerOnly
오래 유지되는 게임 상태는 복제 변수로, 순간적인 요청이나 연출은 RPC로 나누면 서버 권한과 클라이언트 표현이 섞이지 않습니다.
체력, 점수, 인벤토리처럼 새로 접속한 클라이언트도 알아야 하는 값은 `UPROPERTY(Replicated)`로 둡니다.
복제된 값이 도착한 순간 UI, 사운드, 애니메이션을 갱신해야 한다면 `ReplicatedUsing`으로 `OnRep_`를 연결합니다.
발사, 상호작용, 구매처럼 입력에서 시작되는 행동은 Server RPC로 보내고 서버의 `_Validate`와 권한 로직에서 확정합니다.
파티클, 피격음, 채팅 표시처럼 상태로 오래 보관할 필요가 없는 이벤트는 Client 또는 NetMulticast RPC로 보냅니다.