You might think I'm lying, but my code stopped working after I opened it's blueprint

I needed the player to use a different player blueprint, so I used posses function in the level blueprint like seen below.


It worked fine. I have play tested this multiple times. I finished the entire level landscape and lighting with this setup and it worked.
Then I went on to add events to my level and needed to add stuff to event begin play, so I added a sequence which branched into 0-the possession and 1-to a widget and went to playtest it… I can’t move anymore. I see from BP_FirstPersonCharacterDIVING’s camera, but I cannot move, so I Ctrl-Z all the changes back to what it was all this time and it still doesn’t work. No other change was made in the time between me opening the blueprint and me undoing all the changes. I swear the code looked exactly like this before and it worked.
Does anybody have any idea how did this happen and how to fix this?

If it’s using multiplayer the try to add a delay after begin play.

P.s. Your cast to player controller is redundant.

1 Like

Okay, I have no idea how or why, but adding that delay does fix it for some reason

You have no guarantee in what order the beginplay will fire. If the elements you are referencing are not ready it will fail.

The best place to move possessing would be to the game mode => OnPostLogin event