Untitled

[/Script/Silla.SLGameModeBase]   //Silla 를 사용하는 클래스를 지정
StartEpisode=-1                  //값을 지정.

#pragma once

#include "CoreMinimal.h"
#include "GameFramework/GameModeBase.h"
#include "SLGameModeBase.generated.h"

UCLASS(**config = Silla**)   //config를 사용할 클래스를 지정.
class SILLA_API ASLGameModeBase : public AGameModeBase
{
	GENERATED_BODY()
	
public:
	ASLGameModeBase();

	virtual void RestartPlayer(AController* NewPlayer);
	virtual void StartPlay() override;

public:
	UPROPERTY(**config**, BlueprintReadOnly)
	int32 **StartEpisode** = -1;
};

#include "SLGameModeBase.h"
#include "Manager/SLUIManager.h"
#include "Manager/SLQuestManager.h"
#include "Manager/SLCheatManager.h"

ASLGameModeBase::ASLGameModeBase()
{
}

void ASLGameModeBase::RestartPlayer(AController* NewPlayer)
{
	Super::RestartPlayer(NewPlayer);

	// 퀘스트 포인터 수집
	if (USLQuestManager* QuestManager = USLQuestManager::GetInstance(this))
	{
		QuestManager->InitSaveQuestData();
	}

	// 위젯 테이블 데이터로 위젯 생성
	if (USLUIManager* UIManager = USLUIManager::GetInstance(this))
	{
		UIManager->InitCraetWidgetsFromTable();
	}
}

void ASLGameModeBase::StartPlay()
{
	// [임시]시작시 애피소드 적용을 위해 위치 이동
	switch (StartEpisode)
	{
	case 0: // 문무왕
		USLCheatManager::MoveIndex(this, 11);
		break;
	case 1: // 진성여왕
		USLCheatManager::MoveIndex(this, 12);
		break;
	case 2: // 천관녀와 김유신
		USLCheatManager::MoveIndex(this, 13);
		break;
	case 3: // 축신
		USLCheatManager::MoveIndex(this, 14);
		break;
	}

	Super::StartPlay();
}

DefaultGame.ini

[Staging]
+DisallowedConfigFiles=Silla/Config/DefaultSilla.ini

Staging : 패킹할 때 포함할지 여부를 정해줌.