Description

Creating an event dispatcher and BlueprintImplementableEvent function with the same names causes a signature conflict inside the blueprint. The event dispatcher is then broken as it cannot be deleted or renamed, and changing the name of the function does not fix the error with the event dispatcher.

Steps to Reproduce

1. Open UE4 Editor (any project)
2. Add code to project based on Actor (MyActor)
3. Add BP to project based on MyActor (MyActorBP)
4. Inside MyActorBP, create an event dispatcher named UniqueName
5. Add call to UniqueName to the event graph and wire it into BeginPlay
6. In Visual Studio add the following to the constructor of MyActor:

UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category = Test)
		bool UniqueName();

7. Compile the code

Result:
The UniqueName event dispatcher will show with "_0" after the name and causes compile errors in the blueprint.

Community References

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-21368 in the post.

5
Login to Vote

Won't Fix
ComponentUE - Gameplay - Blueprint
Affects Versions4.9.1
CreatedSep 22, 2015
ResolvedJul 14, 2016
UpdatedJul 14, 2021