I think This Is What Your Looking For:
Sync On : Sync Rate 0
Hide Mouse
Make Matrix 1,1000,1000,20,20
Make Object Sphere 1,5 : Position Object 1,500,0,500
Do
CAy#=WrapValue(CAy#+(MouseMoveX()*.5))
CAx#=WrapValue(CAx#+(MouseMoveY()*.5))
Rotate Camera CAx#,CAy#,0
YRotate Object 1,CAy#
If DownKey()=1 Then Move Object 1,-10
If UpKey()=1 Then Move Object 1,10
Px=Object Position X(1)
Py=Object Position Y(1)
Pz=Object Position Z(1)
If Py>Get Ground Height(1,Px,Pz) Then Dec Py
If MouseClick()=2 Then Dec Py,5
If MouseClick()=1 Then Inc Py,5
If RightKey()=1
Px=NewXValue(Px,CAy#+90,10)
Pz=NewZValue(Pz,CAy#+90,10)
EndIf
If LeftKey()=1
Px=NewXValue(Px,CAy#-90,10)
Pz=NewZValue(Pz,CAy#-90,10)
EndIf
Position Object 1,Px,Py,Pz
Cx=NewXValue(Px,CAy#,-20)
Cz=NewZValue(Pz,CAy#,-20)
Position Camera Cx,Py+5,Cz
Sync
Loop
Controls:
-Mouse Movement - Controls Camera View
-Right/Left Mouse Click - Decend and Ascend
-Down/Up Keys - Move Backward and Foward
-Right/Left Keys - Move Right and Left
That should work just fine for what you want, if you need any help or have any questions just ask

.