I'm working on the same project as al9191 (who has also been posting here recently). I am currently working on character motion, which needs to support forwards and backwards motion, rotating and strafing from side to side. So far, I have implemented rotation using a SingleEntityAngularMotor in servo mode, and Z-axis motion using a LinearAxisMotor in velocity mode. Each of these seems to work independently, however I'm having trouble using both at the same time. When I spawn my character, rotation seems to work fine, but as soon as I move away from the starting position, rotation starts misbehaving. As far as I can tell, the centre of rotation doesn't move with the character and instead stays where it is, the effect being that I start oscillating wildly (the 'wildness' is proportional to the distance from the starting position that I moved) as the servo tries to swing me into position about the centre. This oscillation spirals out of control and I end up being catapulted out of the map at a ridiculous speed.
This problem does not occur if I implement Z-axis motion by altering the Entity's velocities as opposed to using a LinearAxisMotor - everything works as I would expect (although I wanted to switch to using LinearAxisMotors because I'm having some slight accuracy trouble using the 'velocity method' which I don't get using the motor). I was wondering whether I'm using the classes incorrectly - am I supposed to be able to attach two motors to the same Entity? Does it sounds like I'm taking the right approach to implementing motion, and if so, is there anything obvious that I'm doing incorrectly?
Thanks a lot for any help
