Hello.
I am setting up a game following the Lyra structure and so I made a custom C++ Class that inherits from AWorldSettings to add a custom property. I Created this class like that
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/WorldSettings.h"
#include "MyGameWorldSettings.generated.h"
class UMyGameExperienceDefinition;
class UGameFeatureAction;
UCLASS()
class MYGAME_API AMyGameWorldSettings : public AWorldSettings
{
GENERATED_BODY()
public:
AMyGameWorldSettings(const FObjectInitializer& ObjectInitializer);
FPrimaryAssetId GetDefaultGameplayExperience() const;
protected:
UPROPERTY(EditDefaultsOnly, Category = GameMode)
TSoftClassPtr<UMyGameExperienceDefinition> DefaultGameplayExperience;
};
And I made this in the DefaultEngine.ini :
WorldSettingsClassName=/Script/MyGame.MyGameWorldSettings
I restarted my project, even generated Visual Studio project files, but my DefaultGameplayExperience property still does’nt show in the WorldSettings panel.
There is a things that maybe have a link with my issue. My C++ classes doesn’t appear in my C++ Classes folder (I have already check Show C++ Classes), unless I hotreload my project ; then after they appear. But If I restart my project, they still doesn’t appear until I hotreload my project (expected the basic classes that Unreal created at project creation i.e MyGameCharacter and MyGameMode). And same thing when I wanted to define my WorldSettings class, Visual Studio proposes me only this two classes (like the other classes, of which my WorldSettings class, aren’t visible). That’s why I think there is maybe a link between my issue and this fact.
Does someone have a solution to my issue ?
Thanks.