bonezone2001
Topic Author
Posts: 5
Joined: 27 Jun 2022, 04:12

Unreal Blueprint - Set W/Notify Regression

08 Jul 2022, 20:36

It appears that if I reference Noesis views within game project settings (custom developer settings) then if I add any Noesis Set W/Notify nodes within the referenced views they regress after engine restart (the set nodes delete themselves)

Settings.h
#pragma once

#include "CoreMinimal.h"
#include "Engine/DeveloperSettings.h"
#include "PlushieSettings.generated.h"

/**
 * Global settings for the Plushie Game.
 */
UCLASS(Config=Game, defaultconfig, meta=(DisplayName="Plushie Developer Settings"))
class PLUSHGAME_API UPlushieSettings : public UDeveloperSettings
{
	GENERATED_BODY()

public:
	// UI Settings
	UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category=UI)
	TSubclassOf<UUserWidget> MainMenuView;
	
	UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category=UI)
	TSubclassOf<UUserWidget> HostGameMenuView;
	
	UPROPERTY(Config, EditAnywhere,BlueprintReadOnly, Category=UI)
	TSubclassOf<UUserWidget> ServerListMenuView;
	
	UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category=UI)
	TSubclassOf<UUserWidget> OptionsMenuView;
};
Settings.cpp
#include "PlushieSettings.h"
Possibly the cause?
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\MainMenu\MainMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\MainMenu\MainMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\MainMenu\MainMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\MainMenu\MainMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
Log          LogLinker                 [AssetLog] C:\Users\Kyle\Documents\Unreal Projects\PlushGame\Content\UI\GUI\ServerListMenu\ServerListMenuView.uasset: Failed to load '/Script/NoesisBlueprint': Can't find file.
The settings are then loaded into a component attached to the player controller. The UI component is simple and essentially just stores the classes from the game settings on construct and then add them to viewport via some functions

Am I doing something wrong here, is it intended and possibly just how unreal and plugins work? I was incredibly confused as to why they were just getting deleted. I thought it might have been an issue with asset monitoring but no. It appears if I reboot the engine without the game settings referencing any views then the nodes stay. The nodes delete only on engine start.
 
User avatar
hcpizzi
Site Admin
Posts: 321
Joined: 09 Feb 2012, 12:40

Re: Unreal Blueprint - Set W/Notify Regression

11 Jul 2022, 16:50

Does the module where that class lives have a dependency on the NoesisRuntime module?
 
bonezone2001
Topic Author
Posts: 5
Joined: 27 Jun 2022, 04:12

Re: Unreal Blueprint - Set W/Notify Regression

11 Jul 2022, 22:47

Does the module where that class lives have a dependency on the NoesisRuntime module?
The class is within the default game module and it does have NoesisRunetime as a dependency
public class PlushGame : ModuleRules
{
	public PlushGame(ReadOnlyTargetRules Target) : base(Target)
	{
		PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
		PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "UMG", "OnlineSubsystem", "OnlineSubsystemSteam", "OnlineSubsystemUtils", "Steamworks" });
		PrivateDependencyModuleNames.AddRange(new string[] { "Noesis", "NoesisRuntime" });
	}
}

 
User avatar
hcpizzi
Site Admin
Posts: 321
Joined: 09 Feb 2012, 12:40

Re: Unreal Blueprint - Set W/Notify Regression

12 Jul 2022, 12:38

Alright, I'm going to have to look into this in more detail.

I'll get back to you once I've figured out the problem.
 
bonezone2001
Topic Author
Posts: 5
Joined: 27 Jun 2022, 04:12

Re: Unreal Blueprint - Set W/Notify Regression

14 Jul 2022, 19:23

Okay no worries, Failure to load "/Script/NoesisBlueprint" definitely occurs only when the project settings are referencing the views
 
bonezone2001
Topic Author
Posts: 5
Joined: 27 Jun 2022, 04:12

Re: Unreal Blueprint - Set W/Notify Regression

21 Jul 2022, 19:26

Turns out I was wrong, its simply whenever I load the view into the UI component (attached to the playercontroller) or a game instance subsystem. Whenever that happens, the blueprint just loses only its "Set [some property] W/Notify" nodes. Every other noesis node I've tested sticks around (Set DataContext, NotifyChanged). The set node will stick around for the entire time the engine is open and running, game works just fine. However, during engine load (reloading) the node is nuked.

I could just set the property normally and then call NotifyChanged but that is just a lot of blueprint clutter I don't really want, which was the original reason why I moved the creation and displaying of the widgets to a UI subsystem/component.
 
User avatar
sfernandez
Site Admin
Posts: 2991
Joined: 22 Dec 2011, 19:20

Re: Unreal Blueprint - Set W/Notify Regression

25 Jul 2022, 12:34

One question, in the title you said "Regression", does it mean that this was working fine in previous versions of NoesisGUI?

From the error messages you are receiving it looks like the plugin module is not yet loaded when it tries to use it.
Could you please try to change the NoesisBlueprint module to "PreDefault"?
 
bonezone2001
Topic Author
Posts: 5
Joined: 27 Jun 2022, 04:12

Re: Unreal Blueprint - Set W/Notify Regression

25 Jul 2022, 15:51

Thank you that worked perfectly, I don't know why I didn't think of doing that. Also, I meant regression in the sense of the blueprint regressing to before the node was added (since it removes itself) although I suppose it isn't a full regression, it's just deleting the node
 
User avatar
hcpizzi
Site Admin
Posts: 321
Joined: 09 Feb 2012, 12:40

Re: Unreal Blueprint - Set W/Notify Regression

26 Jul 2022, 12:32

Hi,

Are the Set w/ Notify nodes referenced from Blueprints in one of your game modules, or from some plugin module of yours?
 
User avatar
hcpizzi
Site Admin
Posts: 321
Joined: 09 Feb 2012, 12:40

Re: Unreal Blueprint - Set W/Notify Regression

26 Jul 2022, 13:31

I've looked into it and have moved the NoesisBlueprint module to the PreDefault loading phase in our codebase. The change will appear in the next release.

Who is online

Users browsing this forum: No registered users and 3 guests