If an Actor destroys another Actor when the game is first starting, then End Play does not get called on the destroyed Actor. In the attached project, there is an Actor Blueprint in the level that spawns a second Actor Blueprint during its Begin Play. The second Actor then destroys the first Actor in its own Begin Play. When this occurs, the End Play for the first Actor does not run. If there is a delay in the second Actor's Begin Play before it destroys the first Actor, then the first Actor's End Play does run.
RESULT:
Two notices are displayed at the top of the screen stating that Begin Play was run on two actors in the level, but no notice appears that End Play was run for one of the actors that is destroyed by the other.
EXPECTED:
Two notices are displayed at the top of the screen stating that Begin Play was run on two actors in the level, and a third notice is displayed that End Play is run for one of the actors that is destroyed by the other.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-57091 in the post.