Quote: "sync on
sync rate 60
backdrop on
color backdrop 0
make matrix 1,5000,5000,70,70
dim players(3,4)
players(1,1) = 50
players(1,2) = 50
players(1,3) = 0
players(1,4) = 0
players(2,1) = 70
players(2,2) = 50
players(2,3) = 0
players(2,4) = 0
players(3,1) = 90
players(3,2) = 50
players(3,3) = 0
players(3,4) = 0
for lp = 1 to 3
load object "models\player.3ds",lp
scale object lp,2500,2500,2500
yrotate object lp,180
fix object pivot lp
next lp
cp = 1
do
for pp = 1 to 3
position object pp,players(pp,1),players(pp,3),players(pp,2)
next pp
set camera to follow players(cp,1),players(cp,3),players(cp,2),players(cp,4),65,50,5,0
point camera players(cp,1),players(cp,3),players(cp,2)
yrotate object cp,players(cp,4)
xrotate camera 30
if upkey() = 1 then players(cp,1) = newxvalue(players(cp,1),players(cp,4),1):players(cp,2) = newzvalue(players(cp,2),players(cp,4),1)
if leftkey() = 1 then players(cp,4) = players(cp,4) - 2
if rightkey() = 1 then players(cp,4) = players(cp,4) + 2
players(cp,4) = wrapvalue(players(cp,4))
sync
loop"
This is the start of my team-play engine, and I can't work out why the player moves strangely

.
Use the arrow keys to move him and you will see
Can anyone help? I've been coding for years and have never come across this before