Load Guard

SaveGame 로드 안정화 흐름

저장 파일 존재 여부, 타입 캐스팅, 값 유효성 확인을 분리하면 첫 실행과 손상된 슬롯에서도 기본값으로 안전하게 이어갈 수 있습니다.

BeginPlay에서 안정적으로 읽는 순서

Start

Does SaveGame Exist

저장에 사용한 Slot Name과 User Index로 파일 존재를 먼저 확인합니다.

Branch

True / False 분기

True는 로드, False는 새 게임 초기화로 나누어 Access None을 피합니다.

True

Load Game From Slot

슬롯에서 SaveGame Object를 메모리로 불러옵니다.

Cast

Cast To BP_MySaveGame

로드 결과를 프로젝트에서 만든 SaveGame 타입으로 변환합니다.

Valid

IsValid 후 값 복원

점수, 위치, 해금 상태를 게임 인스턴스와 액터에 적용합니다.

성공 경로 Restore

저장 파일 있음
캐스팅 성공
값 검증 후 적용

실패 경로 Fallback

파일 없음
로드 또는 Cast 실패
새 게임 기본값 생성
핵심 원칙

로드 성공을 가정하지 말고, 각 단계의 실패 출구를 준비합니다. 그러면 첫 실행, 슬롯 삭제, 오래된 저장 파일에서도 플레이어를 안전한 초기 상태로 보낼 수 있습니다.