본문으로 건너뛰기
Unreal Engine 멀티플레이LESSON 04

리슨 서버와 데디케이티드 서버는 언제 선택할까

난이도입문 → 초급
예상 시간55분
선수지식3강의 호스팅 모델 비교

4강. 리슨 서버와 데디케이티드 서버는 언제 선택할까

1. 이번 강의에서 해결할 문제​

데디케이티드 서버가 기술적으로 더 전문적으로 보인다는 이유만으로 선택하면 운영비와 배포 복잡도가 프로젝트를 멈출 수 있습니다. 반대로 경쟁 게임을 리슨 서버로 만들면 호스트 지연 우위, 서버 변조와 이탈이 핵심 품질 문제가 됩니다. 요구사항을 서버 모델로 번역하는 기준이 필요합니다.

2. 학습 목표​

3. 핵심 개념​

선택은 “가능한가”가 아니라 “실패했을 때 어떤 경험을 허용할 수 있는가”로 판단합니다.

질문리슨 서버에 유리데디케이티드에 유리
플레이 규모초대 기반 소수 인원공개 매치·많은 동시 접속
세션 지속성호스트 종료와 함께 끝나도 됨호스트와 무관하게 유지
공정성협동·캐주얼순위·경쟁·보상
비용서버 비용을 피해야 함인프라 예산과 운영 인력 있음
신뢰친구 그룹알 수 없는 클라이언트
배포클라이언트 빌드 중심Server Target, 서버 자산·로그·포트 필요

CaptureArena 학습 프로젝트는 두 모델을 모두 테스트하지만 첫 완성 경로는 2인 리슨 서버입니다. 같은 권한 코드를 데디케이티드 PIE에서 반복 검증해 화면·로컬 플레이어 의존을 제거합니다.

4. 단계별 실습​

파일 경로: Config/DefaultGame.ini

DefaultGame.ini
[/Script/CaptureArena.CaptureArenaGameMode]
MaxPlayers=2
WinningScore=3

파일 경로: Source/CaptureArena/Game/CaptureArenaGameMode.h

CaptureArenaGameMode.h
UPROPERTY(EditDefaultsOnly, Category = "Match",
meta = (ClampMin = "2", ClampMax = "2"))
int32 MaxPlayers = 2;

UPROPERTY(EditDefaultsOnly, Category = "Match",
meta = (ClampMin = "1"))
int32 WinningScore = 3;

서버 모델 선택 기록을 Docs/server-model-decision.md에 만듭니다.

# CaptureArena 서버 모델 결정
- 1차 배포: 2인 초대 기반 리슨 서버
- 서버 권한: 데미지, 점령, 점수, 아이템, 승리
- 허용 한계: 호스트 종료 시 세션 종료
- 필수 회귀: Launch Separate Server에서 동일 규칙 통과
- 전환 조건: 공개 경쟁 매치 또는 지속 세션 요구가 생기면 전용 서버 검토

5. 코드가 동작하는 이유​

게임 규칙을 GameMode와 서버 권한 Actor에 두면 호스팅 모델을 바꿔도 판정 코드가 유지됩니다. 리슨 전용 UI나 GetFirstPlayerController() 의존을 규칙에 넣지 않기 때문에 별도 서버로 옮길 때 핵심 로직을 다시 작성하지 않습니다. 설정 값은 서버가 로드하고 클라이언트가 임의 변경해도 권위 있는 결과에 영향을 주지 않습니다.

6. 자주 하는 실수와 해결법​

7. 직접 실습​

8. 이해 점검 질문 3개​

9. 핵심 요약​

MINI QUIZ

리슨 서버와 데디케이티드 서버는 언제 선택할까 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“리슨 서버와 데디케이티드 서버는 언제 선택할까”의 위험한 선택을 피하려면 어떤 원칙을 적용해야 하나요?
  2. 문제 2“리슨 서버와 데디케이티드 서버는 언제 선택할까”의 작업 기준으로 ‘비용만 보고 경쟁 게임을 리슨으로 확정’을 진단하거나 바로잡은 선택은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

4강. 리슨 서버와 데디케이티드 서버는 언제 선택할까 미완료 상태