Yes something like that
I only use the PlayerAddedEvent
Then let that run a func then spawn a func wait 5 seconds then it seems to be fine for me
You can also spawn the func and instead of sleep run a loop and when the fc is active then break the loop ect to be safe
I think the player gets added fine ect but the player might not be asigned a fort char yet hence not teleporting for example this 5 seconds always works on my maps so i just do that tbh