Hi there,
i postet this on the answerhub, but i have no idea if someone see this.
I have a small Problem and i can’t get it to work:
I made a Custom Game Instance in C++. I use this to have a loadingscreen. Then i made a new Instance from this class, but in Blueprint. I use this GameInstance to save my global vars (because it get not destroyed after Level load). If i Play the game in the Editor or the standalone mode, all works fine. But if i package my game and Play it, nothing is saved or stored. I looked now for over 5 hours and cant get the Problem. What’s wrong? I use this in my DefaultEngine.ini too:
[/Script/EngineSettings.GameMapsSettings]
GlobalDefaultGameMode=/Game/SideScrollerBP/NewGameMode.NewGameMode_C
**GameInstanceClass=/Game/BrainInstance_BP.BrainInstance_BP_C**
GameDefaultMap=/Game/Maps/MainMenu
EditorStartupMap=/Game/SideScrollerBP/Maps/SideScrollerExampleMap
TransitionMap=/Game/Maps/TransLevel
If i set the GameInstance in the Editor, the DefaultEngine.ini sets the instance correctly (i think).
The GameInstance in C++ is this:
// Fill out your copyright notice in the Description page of Project Settings.
#include "WhereIsMyBrain_C.h"
#include "BrainInstance.h"
void UBrainInstance::Init()
{
UGameInstance::Init();
FCoreUObjectDelegates::PreLoadMap.AddUObject(this, &UBrainInstance::BeginLoadingScreen);
FCoreUObjectDelegates::PostLoadMap.AddUObject(this, &UBrainInstance::EndLoadingScreen);
}
void UBrainInstance::BeginLoadingScreen()
{
FLoadingScreenAttributes LoadingScreen;
LoadingScreen.bAutoCompleteWhenLoadingCompletes = false;
LoadingScreen.bMoviesAreSkippable = false;
LoadingScreen.MinimumLoadingScreenDisplayTime = 10;
//LoadingScreen.WidgetLoadingScreen = FLoadingScreenAttributes::NewTestLoadingScreenWidget();
LoadingScreen.MoviePaths.Add(TEXT("Load"));
GetMoviePlayer()->SetupLoadingScreen(LoadingScreen);
GetMoviePlayer()->PlayMovie();
}
void UBrainInstance::EndLoadingScreen()
{
}
What can i do to figure out whats going wrong? Any help would be great.
Beregron