Well, for my two cents on strategy, this is generally how I play:
Like bio said, constant mobility is definitely a plus, but you also don’t want to use predictable mobility. Don’t run around your enemy and jump/double jump in static curves. By that I mean, don’t just hold one direction key down and move that way, be constantly switching your direction to make your trajectory less predictable. Usually when I double jump, I will jump away from my opponent, then double jump slightly toward them, then pull away again. This usually causes melee weapon users (flame throwers, shotguns, anything close range) to switch over to the close range the moment I start moving closer, but then they’re already dedicated to close range and I’m moving away again.
Use the ability to drop through multiple platforms at a time and any bounces in your area to your advantage, but be smart with it. Dropping straight down through a bunch of platforms can quickly put distance between you and your opponent if you need to create a gap, or outright flee, but it can also be smart to drop through only one or two layers, let the enemy follow, and then immediately jump up as they keep falling down, or jump off to the side and open fire on them.
Learn to predict latency. In a lot of games my ping can get decently high, because I live in the US, but am forced to play on the Europe server a lot when people aren’t in the US server. Because of this, if I shoot an enemy with my crosshairs over them and red, it will not actually be a critical hit. You have to learn to lead your aim to compensate for the latency, so when the server catches up, your crosshairs are actually over them at the point of real impact, rather than client-side impact. You’ll know you crit by hearing the sound effect, rather than seeing the crosshairs.
Learn to predict enemy movement and fire into their path, rather than their exact position. This goes hand in hand with predicting latency. You need to be constantly moving your aim to where your enemy is moving, and you can’t do that visually. The game moves too quickly to be able to look at them, point at where they have moved to, and then fire, so you need to project their motion in a solid line, and move your aim along that line at the speed at which they’re moving in order to land every shot and maximize your damage output. Don’t just wave your gun around wildly in combat, you’ll miss 90% of your shots and get owned.
Fire tracer rounds. While spray and pray is revealing, you can use a similar, less revealing method to locate your opponents at locations you would assume them to be. All you have to do is fire a single round (or if you don’t click and release quick enough, two rounds) of any long range type weapon (SMG/pepper/ray, etc) into a direction you think your enemy will be. If you hear the bullet hit, move that way and open fire, if you don’t, fire another round at a different probable location.
Think ahead. There are many places on the map that players will flock to naturally. Heal boxes, bouncing platforms, bash boxes especially. Certain little hiding spots, high ground, ledges, all sorts of things like that. You need to think ahead and realize where players will probably be, fire tracer rounds there, and explore those areas much more frequently than others, while making sure that you don’t flock to those predictable spots openly yourself.
Going along with that thought, when an enemy is low on health and escapes my line of sight, the very first thing I do is open fire on the nearest health box. I kill the player a good 70% of the time this way. Always know where the nearby HP boxes are, and be ready to shoot them whenever someone is low on health and in retreat. On the same note, try your best not to run to the most open, closest health box when you’re low. If you have a clear path to it where your enemy can’t hit you, sure, go for it, but if that box puts you, in any way, through their line of fire, do not run at it, go the other way, to a safer, maybe further away health box.
Lastly, when you’re in combat with someone who doesn’t have a close range weapon, try to get on top of them throughout the course of the fight and repeatedly jump over them while maintaining your lock on them. The closer you are to them, the more extreme of a mouse movement they have to make to correct for your position every time you pass over them. Be careful not to stand directly on top of any enemy, however, because when two units collide, the physics get a bit wonky, and your shots become unpredictable.
Oh and one more thing I forgot about, Bash is not just for offense!. I see people die with bash constantly because they hold onto it like it’s some sort of precious metal or gem. Don’t do that! Just use it the moment you enter a fight, or, if you’re low on HP, bash to get to the health boxes more quickly! Don’t bash and then engage in a fight at half HP just because you used your bash!