Okay, so I’ve worked up a new system. I never set the authority of any of the fighters now, I just use their ID to send input to the server.
This works great ONLY when the client’s fighter is freed after the client disconnects. Despite the client’s fighter not ever knowing about the client at all, except from a custom id variable, it acts as if they’re connected through quantum mechanics or something…
Both of the fighters are spawned on the server and replicate on the client, I never set the authority of the fighters, only an ID variable I use to check if the input of the node should be sent to the server. I even tried completely resetting the ID when the client disconnects, setting it to the default 1, which gives control to the server. Nope it wants to be freed completely.
Nope, nevermind, that’s not the only thing. Joining while the players are in the arena throws the same errors again.
HOWEVER if the server goes arena before any clients connect, it works fine, even after clients join and reconnect.
If I wait a second before spawning the fighters it also works fine. I don’t know what I’m waiting for, but I guess this is a temporary fix.
It possibly needs to wait for the arena to load on all clients before i spawns anything, but this is just ridiculous.
The best guess I have is that it tries to spawn the fighters before the arena is loaded. I thought this would be handled by the engine becuase it’s quite an obvious thing but I guess not. I’ll open a github issue.
It seems like a feature as well, that nested spawners get the RPC call first because it happens every single time and on lan too.
Yeah, just tried waiting for the players to load the arena before spawning and it’s fine.