Unreal Engine 5.8.1 기반의 Unreal Engine AngelScript 버전에서 간단한 멀티플레이 게임을 만들면서 Angel Script로 멀티 로직을 직접 분리한 것을 정리했다.
https://github.com/leeseungjae97/UEH/tree/main/UE6
기본 구조
- C++ 클래스는 Unreal 객체, RPC, Widget 생성, Blueprint 연결 지점을 제공.
- Blueprint는 실제 에셋 지정과 위젯 스타일링을 담당.
- AngelScript는 서버 규칙, 플레이어 접속 처리, 시도 횟수, 승리/무승부 판정.
C++
BlueprintNativeEvent, BlueprintCallable, RPC 함수를 통해 AngelScript에 기본 로직 제공.
- 플레이어 접속과 퇴장 이벤트 전달
- 채팅 입력을 서버로 전달
- 모든 클라이언트에 채팅 결과 출력
- 승리 또는 무승부 결과 위젯 표시
- 현재 접속자 목록 위젯 갱신
AngelScript
AngelScript에서는 서버 중심의 게임 진행 로직을 작성
- 서버에서 정답 숫자를 생성한다.
- 플레이어가 채팅창에 숫자를 입력한다.
- 입력값의 형식과 중복 여부를 검사한다.
- 유효한 입력이면 해당 플레이어의 시도 횟수를 증가시킨다.
- 스트라이크와 볼을 판정한다.
- 3 스트라이크면 승리로 처리한다.
- 모든 플레이어가 기회를 소진하면 무승부로 처리한다.
- 결과 공지 후 데이터를 초기화하고 새 게임을 시작한다.
게임 규칙이 바뀌어도 빌드없이 판정 흐름을 수정할 수 있다.
반응형
'TIL' 카테고리의 다른 글
| UE Angel Script 패키징 (0) | 2026.08.10 |
|---|---|
| Angel Script을 이용한 서버 로직 분리 (0) | 2026.08.07 |
| UE Angel Script 문법 (0) | 2026.08.05 |
| Unreal Engine Angel Script (0) | 2026.08.03 |
| UE NetRole (0) | 2026.07.31 |