Summary
Currently, clients are spawning at the exact same location, resulting in clipping. Before spawning a player, server should choose a free tile, without tile objects or players and spawn the new player there.
One simple solution would be to predefine a list of tile location spawn and spawn the player on any of those, if it's free.
If no free location, spawn at (0,0) with an error message for now.
We'll improve the algorithm later.
Summary
Currently, clients are spawning at the exact same location, resulting in clipping. Before spawning a player, server should choose a free tile, without tile objects or players and spawn the new player there.
One simple solution would be to predefine a list of tile location spawn and spawn the player on any of those, if it's free.
If no free location, spawn at (0,0) with an error message for now.
We'll improve the algorithm later.