Since the new snapshots, the behaviour of tp has changed. It now executes relative to the executor. However, it also disrupts player movement on all axis's.. What I mean is this: make a repeating command block with
execute as @a at @s run tp @s ~ ~ ~
Players won't be able to move at all. I don't want this!
In 1.12.2, you can still move around freely with a command like this.
What I had built previously was a no swim system. that pushes you down ~ ~-0.2 ~ if there is more than 1 block of water under the player's feet. once in 4 blocks deep of water, it would be impossible in survival mode for the player to surface to breathe unless they walk their way out. (if there's an adjacent non water block to ~ ~-1 ~, then the effect stops) Also they receive wither damage while submerged.
It sort of works in the new snapshot after converting it except it is much more choppy and slow if the player is constantly trying to swim upwards while moving forward due to this also "rubberbanding" the player x and z motion instead of just the y axis like it would in 1.12.2 even if it's not moving them in that direction.
I also happen to have another system, however, that I believe may be completely rendered useless and impossible to work around..
If you have previously been submerged in water within the past 5 minutes, then your wings will be wet. if you try to fly with wet wings (elytra), you will spiral out of control into a spin and may crash hard. this relies on rotating the player and forcing them to look down with the tp yaw and rot arguments.
But i'm sure this is going to rubberband the players in their regular flying motion and mess the whole thing up (Maybe) Haven't tried it yet..
I noticed this is not the case with other entities( only players). I ran a few tests on villagers. I had a command block teleporting a villager up ~ ~0.1 ~ if they stepped on a pressure plate while moving. They kept moving easily while also moving up in a smooth manner. exactly what I would have wanted.
I tried it on myself without the same results. as soon as I stepped on the pressure plate, I practically stopped moving forward, rubberbanding back every tick while also rising until the pressure plate released.
This is very frustrating. Do you think this could currently be a bug? Due to the fact that only players are affected this way by the tp command and not other entities? I certainly hope so... Or else things would have gotten a lot tougher
Edit: looks entities are actually affected the same.. I have a twisting, derping, floating villager that fell as soon as I turned off the rotation machine. they just have a different way of moving.