Cannot re-add Interface to a Class

Hey guys,

currently using 4.13.2 and experienced the following bug:

  1. Add a Blueprint Interface to a Blueprint Class in Class Settings
  2. After it has been added, delete it again (“Clear Path”)
  3. “Would you like to transfer the interface functions to be part of your blueprint?” Select No
  4. Try to add the same Interface again - nothing happens (not even a fail message)

Duplicating the Class as well as the Interface brings no success.

Anyone able to reproduce this? Or any hints what could solve the problem?

Hi MrBallantine,

I attempted to reproduce this but I couldn’t get your results. On step 4, I was able to add the Interface back to the blueprint without issue. I tested this in a blank blueprint project.

Are you only seeing this in your project or can you also reproduce it in a new clean project?

I tried it and yes, it works in a clean project with an empty class and interface.

Any hints on why it couldn’t work on filled classes and interfaces?

I know there was a similar issue a while back but I believe it was fixed somewhere prior to 4.13. Was your project converted from an older engine version?

If so, it’s possible some of the old code/changes could be conflicting. In this case there isn’t much to fix. It may have just become a quirk of a project that has been through different engine version.

If you like, you could try migrating some assets out of your project into a new project to create a smaller test case, then upload that here. That may give me enough to create a bug report.

Yes, it is a project we created with an earlier version.

Nevertheless, when I migrated the files into a clean project (and solved reference issues) the problem persists. I uploaded the files with this post.

If you try to add the interface “collidable” to “projectileSphere” it works once, but if you delete it from the class settings and re-add it, it doesn’t work anymore. Go ahead and try with the newly created class and interface, that works fine.

In this minimal setup, it is possible to re-add the interface by saving all assets again. But this doesn’t work for me in the original project.

Hope thats enough information to recreate the issue.

link text

Hi MrBallantine,

Sorry for the delay. Yeah, it does repro like you said; however, the fact that recompiling fixes the issue is troublesome for a bug report. We would need a repro that essentially breaks the blueprint like in your original project. But even then I still believe it’s related to project conversion and is likely unfix-able at this point.

I know this isn’t fantastic news. Does it also occur in a new blueprint in your existing project? If not, is recreating the blueprint an option at this point?

Recreating is not an option at this point as this is a grown project with lots of dependencies and child blueprints. Recreating it would take hours.

The blueprint class I posted here is originally a child blueprint of another one so I tried to make a new child blueprint, but with no success.

Seems to be very odd overall as I can add a copied interface of the one mentioned here only once, too. So it seems like it has nothing to do with the engine version it was created in.

I was able to re-create this problem just now. It turns out I had a function already implemented with the same name as a function on the interface. Unreal 4.13 then fails to add the interface silently. I had to temporarily rename the function, compile, then add the interface, then copy the implementation back over to resolve.

MrBallantine,

Have you tried Cedeon’s work around above? Let us know if this gets you past the issue or not.

Yes, this does the job.