BP functions with enum-type input argument named 'Category' is erroneously assigned to category 'New Enumerator n'

Fun one I just found.

Steps to reproduce:

  • Start a fresh, new project (I used the FirstPerson template, but it hardly matters).
  • Create a new BP Enumeration. Name it whatever, add some enumerators, save it.
  • Open a blueprint (I used the FirstPersonCharacter BP, but again, it doesn’t matter).
  • Add a new function. It doesn’t do anything - we just want to create its signature.
  • Add an input argument named ‘Category’ to the new function.
  • Set the argument type to be the BP Enumeration you just created.
  • Now hit the Compile button.

In the ‘My Blueprint’ tab, the new function will now appear under a category header named ‘New Enumerator 0’. In the ‘Details’ panel however, it’s still listed as Category ‘Default’. If you do this in a project that already has a bunch of BP Enumerations, the “bad” category will have some higher number rather than 0. At any rate, any attempts to move the function to a proper category will be shot down as soon as you compile the BP again, at which point the “bad” category pops up again.

The only apparent way to resolve this is either to rename the input argument to something else, or to change its type to something that is not an enumeration.

Oh, I just noticed… While keeping the argument name as ‘Category’, setting the type to the built-in ‘RenderToTextureEnum’ produces ‘New Enumerator 10’ instead. Aaaand with a more core-type enum like ‘EDraw Debug Trace’ we get a ghost category simply called ‘None’. It’s a bit of a secretive guy, that.


We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.



It has been done.

We have a similar issue in UE4.20. Any function parameter called “Category” prevents the editor from showing that function in the correct category. The function is instead listed in the default category.
I submitted an issue in the new tracker for this on UE4.20.