Hi, I'm just starting to play around with DarkPhysics. I got it mainly for the vehicle functions, though i do plan on using other stuff too. I have a number of questions.
I've modified one of the examples to see what happens (see below)
` demonstrates simple creation of a vehicle
` set up program
phy enable debug
phy start
autocam off
sync on
sync rate 60
color backdrop 0
make light 1
set directional light 1, -5, -5, 5
position camera -20, 20, -25
point camera 0, 10, 0
` create ground
load image "road2.png", 1
make object box 1, 1000, 1, 1000
texture object 1, 1
phy make rigid body static box 1
` load car
load object "beach.x", 2
load image "beachBu2.tga",2
load image "dbprocubemap.dds",3
texture object 2,2
set blend mapping on 2,1,3,2,16
position object 2, 15, 2, -25
rotate limb 2,0,0,-90,0
` set up vehicle
phy create vehicle 2
phy add vehicle body 2, 2.2, 0.6, 0.75, 0.0, 0.6, 0.0
phy add vehicle wheel 2, 5, 1.5, 0.3, 1.1, 0.6, 0.2, 0, 0
phy add vehicle wheel 2, 7, 1.5, 0.3, -1.1, 0.6, 0.2, 0, 1
phy add vehicle wheel 2, 3, -1.5, 0.3, -1.1, 0.6, 0.2, 1, 0
phy add vehicle wheel 2, 9, -1.5, 0.3, 1.1, 0.6, 0.2, 1, 1
phy set vehicle max motor 2, 400.0
phy set vehicle steering delta 2, 0.1
phy set vehicle max steering angle 2, 0.4
`phy set vehicle auto 2, 1
phy set vehicle suspension spring 2,100
velx as float : velx = phy get rigid body linear velocity x (2)
vely as float : vely = phy get rigid body linear velocity y (2)
velz as float : velz = phy get rigid body linear velocity z (2)
vel as float : vel = sqrt((velx * velx) + (vely * vely) + (velz * velz))
phy set vehicle lateral tire force function 2, 0, 0.5, 2.0, 4.0, 1.0, 300.0 / ((vel * .1) + .01)
phy set vehicle lateral tire force function 2, 1, 0.5, 2.0, 4.0, 1.0, 300.0 / ((vel * .1) + .01)
phy set vehicle lateral tire force function 2, 2, 0.5, 2.0, 4.0, 1.0, 300.0 / ((vel * .1) + .01)
phy set vehicle lateral tire force function 2, 3, 0.5, 2.0, 4.0, 1.0, 300.0 / ((vel * .1) + .01)
phy build vehicle 2
` display image
load image "logo.png", 100000
sprite 1, 0, 600 - 60, 100000
` main loop
do
` follow car
set camera to follow object position x ( 2 ), object position y ( 2 ), object position z ( 2 ), 0, 6, 4, 1, 0
` update physics and screen
If upkey()=1
PHY SET VEHICLE MOTOR Force 2,400
EndIf
If Downkey()=1
PHY SET VEHICLE MOTOR Force 2,-400
EndIf
If UpKey()=0 and downkey()=0
PHY SET VEHICLE MOTOR Force 2,0
EndIf
If RightKey()=1
PHY SET VEHICLE STEERING Value 2,40
PHY SET VEHICLE STEERING Angle 2,-40
EndIf
If LeftKey()=1
PHY SET VEHICLE STEERING Value 2,-40
PHY SET VEHICLE STEERING Angle 2,40
EndIf
If Leftkey()=0 And Rightkey()=0
PHY SET VEHICLE STEERING Value 2,0
PHY SET VEHICLE STEERING Angle 2,0
EndIf
Set cursor 10,10
Print PHY GET VEHICLE MOTOR FORCE(2)
phy update
sync
loop
This seems to crash everytime I run it. I'm quite sure its the PHY SET VEHICLE LATERAL TIRE FORCE FUNCTION command. I've simply copied in a block of commands to (apparently) allow the vehicle to do powerslides, but I had previously tried this command before finding this block of commands. It still crashed the program. Would there be a reason for this?
Another question is about the PHY SET VEHICLE MOTOR TORQUE command. If tried making the car front wheel drive (I assume thats the kind of thing this function is for?), but it always seems to pull to the left, now yes a real car could get torque steer, but this isn't that complex yet!

It also does the same if I send equal torque to each wheel (making it...in theory 4WD). Is there a way to stop this? I used the following code instead of the motor force command:
PHY SET VEHICLE MOTOR Torque 2,1,1000
PHY SET VEHICLE MOTOR Torque 2,2,1000
PHY SET VEHICLE MOTOR Torque 2,3,1000
PHY SET VEHICLE MOTOR Torque 2,4,1000
My final (for now) question is why when I steer does it slow to a crawl even though the motor force is high? The wheels go very slow forwards and yet its slowly going backward?
All I'm aiming for in my initial experiments is some basic handling that is skiddy using keys that can be changed as I don't want to use the auto controls. I've only used the arrow keys in this brief test because its easier commandwise.