Hi,
I don’t know if this is a real bug or intended design, but using AttachTo inside the constructor may cause a lot of problems. In my case, I have a Billboard Component that I create and Attach to my root inside my class constructor. However this eventually causes a crash. The error I get says that the engine attempts to detach the Billboard Component from the Collision Cylinder but it’s not attached to anything.
I moved the Attach To to PostInitializeComponents. Currently I am getting the following warnings (but no crashes as of yet).
[2015.06.15-10.05.15:583][513]LogActor:Warning: Natively added component (Enemy_StaticBot_C_3.CollisionCylinder) was left unattached from the actor's root.
[2015.06.15-10.05.29:614][319]LogActor:Warning: Natively added component (Enemy_StaticBot_C_4.CollisionCylinder) was left unattached from the actor's root.
[2015.06.15-10.05.34:829][618]LogActorComponent: UnregisterComponent: (/Engine/Transient.CharMoveComp) Not registered. Aborting.
[2015.06.15-10.05.35:904][682]BlueprintLog: New page: Compile Enemy_StaticBot
[2015.06.15-10.05.35:953][682]LogActor:Warning: Natively added component (Enemy_StaticBot_C_0.CollisionCylinder) was left unattached from the actor's root.
[2015.06.15-10.05.35:956][682]LogActor:Warning: Natively added component (Enemy_StaticBot_C_1.CollisionCylinder) was left unattached from the actor's root.
[2015.06.15-10.05.35:958][682]LogUObjectGlobals:Warning: Guid is in use by CapsuleComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_2.CollisionCylinder and CapsuleComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_C_1.CollisionCylinder, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE
[2015.06.15-10.05.35:958][682]LogUObjectGlobals:Warning: Guid is in use by ArrowComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_2.Arrow and ArrowComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_C_1.Arrow, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE
[2015.06.15-10.05.35:958][682]LogUObjectGlobals:Warning: Guid is in use by CharacterMovementComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_2.CharMoveComp and CharacterMovementComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_C_1.CharMoveComp, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE
[2015.06.15-10.05.35:958][682]LogUObjectGlobals:Warning: Guid is in use by SkeletalMeshComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_2.CharacterMesh0 and SkeletalMeshComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_C_1.CharacterMesh0, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE
[2015.06.15-10.05.35:958][682]LogUObjectGlobals:Warning: Guid is in use by BillboardComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_2.LockGraphic and BillboardComponent /Game/Maps/World_0.World_0:PersistentLevel.Enemy_StaticBot_C_1.LockGraphic, which should never happen in the editor but could happen at runtime with duplicate level loading or PIE
Notably the “Collision Cylinder was left unattached”.