Player movement tips (2.58a/Python)

Hello

I’ve been working on a player movement system and I’m trying to tweak it to be similar to player movement from Source games (example: Team Fortress 2). I found their player movement to work good and I’d like to try to recreate it, or something of a similar fashion, for my own game projects.

In the .blend below, the only changes in settings I’ve made is moving the World Gravity setting up to 15 to make things fall faster. So far, the player can run, jump, and crouch (it works more like Sneak than Crouch, currently).
The player can’t move or crouch during a jump mid-air. When the player stops moving, there’s a small bit of slide, but not as much when crouching.

Now what I’d like to ask for are suggestions or tips on how I can improve the current system, I’m pretty sure there’s a few things that could be added or use tweaking. Any ideas would be great.

player movement.blend (91.5 KB)

For the sliding issue you could use a “brake” Motion actuator that is activated as soon as the “W” forward movement stops.
Here’s an example with logic bricks or with Python.

Well it isn’t actually an issue, I was pointing out the things that I wanted to achieve. For example, in Team Fortress 2, when the player stops moving they slide a bit depending on what class they are and how much they weigh. The sliding is less when they’re crouching though.

I’m just wondering if there’s anything I can improve on.

Bumping to see if anyone has any more ideas for this. It might be good enough as it is, and if so, I was thinking of releasing it in the Resources section.