Choices, choices...

I’ve only recently started exploring the BGE and am a bit bemused by the fact that there seem so many ways to achieve the same result. I guess it’s the same with modelling too. Specifically a simple character is going to move forward on a key press. I’ve seen a couple of tutes on this and one sets the location in the motion actuator, another sets the force, and a third the linear velocity. Another variation is that where the character has a walk one demonstrates setting both the walk action and the movement on the armature, another activates the walk action on the armature and the actual movement on another object that the armature is parented to. I can see that they all work but am wondering if there’s actually any reason to choose one method over another or is it just personal preference?

The sources of these tutes are all respectable sources - the Blender Game Kit, one of Tony Mullen’s books, and David Ward on Blender Cookie.

I have noticed that setting linear velocity works the best with collisions of these choises (my experiences, not facts). Also to note that applyForce literally applies Force on top of the old Force so your movable object with keep moving faster and faster unless you limit it somehow. You could limit the velocity from physics menu but this will also affect on various other things, like falling speed etc since it limits all velocity.

Edit: Of course it is also matter of what kind of a game it is. For example if it’s a game where you move a “player” left and right dodging/shooting/picking up things, an arcade style game. Then there might not be a need for physics based movement at all. In this case you could simply use worldPosition or similar to keep things light.

Personal preference plays a big part.
Other than that no, there really isn’t much difference.

But some ways are “more” correct than others.
eg:
The “loc” under Motion actuator is a bad way to move a character.

Typically, the armature is simply used as a graphical representation (set to no collision), and it’s parented to a bounding box that makes for a more efficient physics body.

And that’s why that method is used so often, I think.

For performance reasons.