I like the new system with the spawn movement after changing the servers but somehow you are punishing very hard.
I would like to have a system that is a bit more complex but very user friendly. When I first time heard that you introduce this, I was likely happy but didn't think that after a server change I would be back on the coast.
I would suggest to build a system based on how many times you change the server, the next Respawn will be further...
You will let the people respawn once in the same spot after a server exchange (and the timer is starting, let's say: 3 hours. If the user will change the server again in this 3 hours he will be respawned on the level 2 stage (500m away) and maybe this stats could be displayed in the main menu on the character statistics)
A system like this:
Changing server once - you will be spawned in the same spot but you are not allowed to change a server for 3 hours (if you do, then you will be moved to the next level of spawn, 500m and if you are changing again then you will be on 1.5km or on the coast)
I'm not a person that is doing a server swipe, but many times I want to play on full servers and if my server is going on low population I will have to make a decision: 1. To Leave the game, 2. To change the server to a full one. If I do that and you are kicking me to the coast, I might be super tired/nervous/not in mood to walk back and I will leave the game again.. So is not a win situation.
I would like and expect from you guys to rethink this approach of respawn.