At that point, I’d just recommend walking through the connection process starting from when your client attempts to connect all the way to your player being spawned in. You’d get a real feel for where you should put your initialization code.
Off-topic, but why do you keep your ASC in the PlayerState? I used it that way for some time and found it to be an inconvenience with no benefit compared to just plopping it on the character. Made possessing other characters a bit awkward as well.