DestroySession fails on client machine after seamless map travel

Well this one was pretty silly on my part.

The reason why it fails is because I overwrote the CopyProperties function in the PlayerState. It allowed me to carry over player info from one map to the next, like their character and color choices. However, I forgot to call the base class version of CopyProperties.

Sure enough, when looking through the source, the base PlayerState::CopyProperties function copies over the net ID and other session information. Thus, when travelling maps, all of that was lost. So once I added the base class call, all was well.

Oops.