I have been playing "Voices of Area 51", an FPS with multiplayer (via internet), for some time now, and have made up my mind a bit about combat mechanics.
Sorry for the long post beforehand

1. Sometime ago I proposed a new way of movement that could solve a bunch of problems, for instance the falling downstairs accidentally, the impossibility to walk really slow, but also a major problem here with combat.
Easy put: Movement should be based on acceleration.
That means, if you press the forward button, you dont move with a predefined velocity but you accelerate (similar to car racing games) linear (or more like dampened logistic growth) to an upper limit, say 40. When you release the button, you slowly brake until you reach velocity 0. If you press backwards, you accelerate to the limit -20.
In implementation terms that could be realised by start/stop events on pressing and releasing the buttons. When a start event occurs, a package is sent to the server, including a timestamp. The Server calculates an acceleration up to the given limit, until a stop event (+timestamp) reaches the server. The server keeps track of the events and interpolates the position to a given time. The server sends then the calculated position to the client in order to synchronize.
Ingame that would allow very slow motions, smooth acceleration and braking (preventing people from falling downstairs, for instance), but also a pretty easy implementation of modification of velocity limits (for example taking the weight into account) and acceleration (taking agility into account).
That would also make jumping back and forth a lot more difficult, because the backwards-acceleration could be slower than forwards, also the upper limit on running backwards isnt as high as running forwards. For a quick back and forth you'd also need an exorbitant agility.
2. A circle in the middle of the screen could indicate the direction from where the hit came and the amount.
3. Showing the back to the enemy might make critical strikes highly possible.
4. Usually you can grasp a little vial also with a hand that already is carrying a shield or sword, therefor the need to unequip before drinking a healing potion wouldn't be realistic.
5. Eating and drinking normal food and drinks should indeed require to unequip and take a longer time to eat and a much longer time to regenerate the wounds.
6. The effect of a healing potion must not be instantly. It requires time to drink the potion (1-3 sec not being able to attack and loosing the vial when getting hit) and it requires time to heal, depending on the strength of the potion and the amount of HP. Drinking more healing potions should speed up the healing process.
Also healing potions could be regarded as "drugs", meaning that the usage of one sort of healing potion could be limited to 6 potions per (ingame) day, requiring players to take care a lot more.
7. Like in Voices of Area 51 I'd like to see special effects like a strongly shifted visual spectrum when playing a race with nightvision or when using a potion that gets you into a berserk rage.
8. If you get hit on a specific body part, this body part should be affected. For instance every single bodypart could have HP internally and the average could be calculated for the player. If a bodypart gets hit, the effectivity of this part could be reduced.
9. In Jagged Alliance (still one of my favourite tactic games) a player looses HP over time when a wound is not being taken care of.
That however would require a medecine skill and one or two specific items (small and big medecine box, for example). The injuries of a player who is down below 10% of his HP could only be taken care of someone with, say 30 in the medecine skill. The skill level also affects the time how long it takes to take care of the wounds.
In JA the wounds which are taken care of don't heal instantly when being treated, but still count as wounds, as long as they arent regenerated. They are indicated with orange, meaning that they arent regenerated but aren't open (getting worse) neither.
10. A "Follow target" command would be _very_ useful, not only in combat, but also in normal gameplay.
11. Last but not least I think collision detection on entities should be enabled, really. This however isn't an easy thing to balance. Here are some ideas on that:
In general, players can't walk through other players and can't push them away. If a player moves against another player, a comparison between the strength stats of both players could be taken as factor to determine the success of the pushing. Also the velocity and direction of the two players (even the weight) might be taken into consideration whether the pushing action was successful.
Pulling would require an extra command, because it depends also on the agility and how you grasp the other.
If this automatic push/pull mechanic is too sensible for abuse, an alternative might be considered:
On right-click an extra push/pull button is available, making it possible to push/pull the target for 2-5 seconds, depending on the difference between of Str/Agi and the direction the acting player is moving.
However, I see some potential abuse in this idea, it surely needs some more thought.