How to make a reverse "switch on enum" macro?

Right, it does work! Thanks

But from the CustomNodeProject that you uploaded, how exactly do I compile this plugin for future engine versions so I don’t need to ask here every time a new version is released?

copy it over to the c++ version of a project into the plugin folder (you need to create it). Compile the basic project => open the plugins panel, enable the plugin. Once enabled you can see an option to pack the plugin on the bottom left of the plugin’s panel.

Then you can copy the packed version to the engine folder to use it with blueprints.

1 Like

This worked perfectly, thanks.

now, sort off topic, sort not, but I’ve asked before and nobody answered, so if that’s not asking too much, could you help me packaging this open source plugin?

I’ve created a new c++ project, created a plugins folder inside of its root, downloaded this plugin from github and pasted the folder inside the “plugins” folder, generated visual studio files from my .uproject, ran the project from visual studio, went to the plugins window and clicked packaged. however it fails

Lots of plugin packaging seem to fail from 5.3 upward.

I’ve noticed that it does create a host project on pack. Maybe it packs the client version ok but for some reason tries to pull in portions of the editor? (might be a bad/ deprecated target setting)

So I need to recompile this plugin for 5.5 and I’m getting an error on packaging it, and I have absolutely no idea what’s going on.

UATHelper: Package Plugin Task (Windows): Running AutomationTool...
UATHelper: Package Plugin Task (Windows): Using bundled DotNet SDK version: 8.0.300
UATHelper: Package Plugin Task (Windows): Starting AutomationTool...
UATHelper: Package Plugin Task (Windows): Parsing command line: BuildPlugin -Plugin=D:/Projects/UnrealProjects/CustomNodeProject/Plugins/ExtraCustomNodes/ExtraCustomNodes.uplugin -Package=C:/Users/Rafael/Desktop/TEST/ExtraCustomNodes -CreateSubFolder -nocompile -nocompileuat
UATHelper: Package Plugin Task (Windows): Initializing script modules...
UATHelper: Package Plugin Task (Windows): Total script module initialization time: 0.16 s.
UATHelper: Package Plugin Task (Windows): Using C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe
UATHelper: Package Plugin Task (Windows): Executing commands...
UATHelper: Package Plugin Task (Windows): Copying 98 file(s) using max 64 thread(s)
UATHelper: Package Plugin Task (Windows): Reading plugin from C:\Users\Rafael\Desktop\TEST\ExtraCustomNodes\HostProject\Plugins\ExtraCustomNodes\ExtraCustomNodes.uplugin...
UATHelper: Package Plugin Task (Windows): Building plugin for host platforms: Win64
UATHelper: Package Plugin Task (Windows): Running: C:\Program Files\Epic Games\UE_5.5\Engine\Binaries\ThirdParty\DotNet\8.0.300\win-x64\dotnet.exe "C:\Program Files\Epic Games\UE_5.5\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" UnrealEditor Win64 Development -Project="C:\Users\Rafael\Desktop\TEST\ExtraCustomNodes\HostProject\HostProject.uproject" -plugin="C:\Users\Rafael\Desktop\TEST\ExtraCustomNodes\HostProject\Plugins\ExtraCustomNodes\ExtraCustomNodes.uplugin" -noubtmakefiles -manifest="C:\Users\Rafael\Desktop\TEST\ExtraCustomNodes\HostProject\Saved\Manifest-UnrealEditor-Win64
-Development.xml" -nohotreload -log="C:\Users\Rafael\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_5.5\UBA-UnrealEditor-Win64-Development.txt"
UATHelper: Package Plugin Task (Windows): Log file: C:\Users\Rafael\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_5.5\UBA-UnrealEditor-Win64-Development.txt
UATHelper: Package Plugin Task (Windows): Total execution time: 2.33 seconds
UATHelper: Package Plugin Task (Windows): Unhandled exception: ArgumentNullException: Value cannot be null. (Parameter 'element')
UATHelper: Package Plugin Task (Windows):    at System.ArgumentNullException.Throw(String paramName)
UATHelper: Package Plugin Task (Windows):    at System.Attribute.GetCustomAttributes(MemberInfo element, Type attributeType, Boolean inherit)
UATHelper: Package Plugin Task (Windows):    at System.Reflection.CustomAttributeExtensions.GetCustomAttributes[T](MemberInfo element)
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.ModuleRules.IsValidForTarget(Type moduleType, ReadOnlyTargetRules targetRules, String& invalidReason) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Configuration\ModuleRules.cs:line 1680
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.UEBuildTarget.AddAllValidModulesToTarget(ILogger Logger) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildTarget.cs:line 4266
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.UEBuildTarget.PreBuildSetup(ILogger Logger) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildTarget.cs:line 3720
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.UEBuildTarget.Create(TargetDescriptor Descriptor, Boolean bSkipRulesCompile, Boolean bForceRulesCompile, Boolean bUsePrecompiled, UnrealIntermediateEnvironment IntermediateEnvironment, ILogger Logger) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildTarget.cs:line 1390
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.UEBuildTarget.Create(TargetDescriptor Descriptor, BuildConfiguration BuildConfiguration, ILogger Logger) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildTarget.cs:line 1220
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.BuildMode.CreateMakefileAsync(BuildConfiguration BuildConfiguration, TargetDescriptor TargetDescriptor, ISourceFileWorkingSet WorkingSet, ILogger Logger) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Modes\BuildMode.cs:line 1142
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.BuildMode.BuildAsync(List`1 TargetDescriptors, BuildConfiguration BuildConfiguration, ISourceFileWorkingSet WorkingSet, BuildOptions Options, FileReference WriteOutdatedActionsFile, ILogger Logger, Boolean bSkipPreBuildTargets, String ActionTypeFilter) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Modes\BuildMode.cs:line 400
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.BuildMode.ExecuteAsync(CommandLineArguments Arguments, ILogger Logger) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\Modes\BuildMode.cs:line 255
UATHelper: Package Plugin Task (Windows):    at UnrealBuildTool.UnrealBuildTool.Main(String[] ArgumentsArray) in C:\Program Files\Epic Games\UE_5.5\Engine\Source\Programs\UnrealBuildTool\UnrealBuildTool.cs:line 687
UATHelper: Package Plugin Task (Windows): Took 2,42s to run dotnet.exe, ExitCode=6
UATHelper: Package Plugin Task (Windows): UnrealBuildTool failed. See log for more details. (C:\Users\Rafael\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_5.5\UBA-UnrealEditor-Win64-Development.txt)
UATHelper: Package Plugin Task (Windows): AutomationTool executed for 0h 0m 3s
UATHelper: Package Plugin Task (Windows): AutomationTool exiting with ExitCode=6 (6)
UATHelper: Package Plugin Task (Windows): BUILD FAILED
LogSlate: Window 'Plugins' being destroyed
LogSlate: Window 'Plugins' being destroyed
LogDerivedDataCache: C:/Users/Rafael/AppData/Local/UnrealEngine/Common/DerivedDataCache: Maintenance finished in +00:00:00.000 and deleted 0 files with total size 0 MiB and 0 empty folders. Scanned 0 files in 1 folders with total size 0 MiB.
LogEOSSDK: LogEOS: Updating Product SDK Config, Time: 338.082153
LogEOSSDK: LogEOS: SDK Config Product Update Request Completed - No Change
LogEOSSDK: LogEOS: ScheduleNextSDKConfigDataUpdate - Time: 338.749756, Update Interval: 323.430878

I was afraid something like this would happen, now I rely on being able to recompile this plugin in order to update my game’s engine version.

any ideas how to fix?

CustomNodeProject5_5.zip (13.5 MB)
Maybe you have the wrong IncludeOrderVersion set in your target files? (needs to be Unreal5_5)

My 5.5 version packs ok. Just make sure you pack it onto your target project separately from the plugins window.

1 Like

Somehow it doesn’t work. I downloaded your project and when packaging I get this:

Are you running vs and unreal as admin?
Seems like you have insuficient access from the warning message.

Things to look into:

  • Did you install the 5.5.1 hotfix?
  • Have you updated your msvc?
  • Does a default project compile correctly?
1 Like

So I think the deal is, I had perforce installed, and just the other day I updated windows to 24H2, which totally broke perforce. so I had to uninstall it, but it had every file in my main project set as read-only.

it’s weird cuz I wasn’t using version control with the plugin project, and even though I unchecked read-only for everything in that project, I suppose perforce also got something in the unreal engine folder as read-only.

so I uninstalled everything, UE 5.4, 5.5, epic launcher, visual studio, and then installed everything again. VS is a PITA so I followed these tutorials:

and Setting Up Visual Studio Development Environment for C++ Projects in Unreal Engine | Unreal Engine 5.5 Documentation | Epic Developer Community

hit a brick wall since there’s no Visual studio integration tools for UE 5.5 yet, but then searching online people said you don’t really need that, so I went ahead with everything fresh, and it compiled somehow.

can’t pin point what exactly was causing the error, but it works now.

thanks again for helping out every time something comes up!

Unreal can be a finicky beast :wink: Glad you got it running on your end.