The Problems with Pyro, and a Few Potential Fixes

In honor of the incoming Pyro rework, I’d like to discuss the shortcomings of the class, and the shortcomings of Valve’s previous attempts to “fix” him.

Oh, Pyro. You’ve been a mediocre class from launch, and nobody at Valve ever really took the time to fix you. From the lowest levels of “I just installed yesterday” pubs, all the way up to invite play, few would debate the statement that “Pyro is a broken, poorly balanced class”. Fewer still could (or would care to) describe exactly why Pyro is broken to begin with.

SECTION 1: WHY PYRO BREAKS PUBS

At lower levels of play, where repeatedly whiffed shots by hitscan classes are common, his refire-lacking, forgiving source of stream damage is incredibly simple to aim, and therefore effective. In addition, in lower levels, few players have a good idea of when they need to run from a fight, or back off the front lines. This plays right into a medium-movespeed, average-to-poor mobility close-range-only classes’ hands, as when people don’t run from him, or worse yet walk into him, Pyro’s main weakness of range is far less crippling. Without the head start other classes get from the ingrained habits of experienced players, such as backpedaling and focusing fire the moment Pyro begins approaching, Pyro has a much easier time chasing classes down to burn them to death. When combined with the generally poor map knowledge of low-level play, and the stupidly simple to apply mechanic of afterburn, which will deal a maximum of 60 additional damage to a player already damaged by the weapon that applied it, a Pyro who charges in can be remarkably effective so long as he never has more than 3 enemies looking at him. A suicidal Pyro can kill groups of 3 or fewer enemies with startling effectiveness given that the enemies have: (1) poor awareness of him, and do not notice him until they are being burnt, (2) unreliable aim which falters while panicked and having vision obscured by fire particles, and (3) poor enough map knowledge such that health kits are hard to find, and afterburn under 50HP becomes a veritable death sentence. All this, added to the (again) stupidly easy movement control Valve gave Pyro with airblasts, which completely removes movement-based counterplay from someone unfortunate enough to get airblasted, makes getting into a building with a Pyro (assuming low skill levels) a virtually guaranteed death. This makes him feel very “easy” as a class, and “unfair” to play against when all players involved are of a lower skill level.

Then they gave Pyro the Backburner, which makes the cost of attempting a reflect affect not just his HP drastically, but also his ammo pool, while letting him melt unaware players far faster. After that, they threw him the Phlog, which entirely removes his only prayer of fighting aware projectile classes while melting players who don’t see him coming without the skillful positioning requirement of the Backburner, and pub rage reached the critical mass we have today.

SECTION 2: WHY PYRO IS INEFFECTIVE

Meanwhile, in higher levels of play, the Flamethrower’s design is extremely questionable. As a close quarters weapon, fire has one advantage over any other combat class primary: it’s easy to hit someone with. On all other fronts, it fails an experienced player. When a player is capable of repeated meatshots (or at least 5+ pellet shots) as Scout, or repeated max-damage or near-footshot rockets as Soldier, suddenly Pyro feels pitifully weak. Let’s ignore for a moment the monstrous advantage bestowed upon Scout and Soldier by their incredible engagement and disengagement tools (which Pyro can only poorly imitate, and by sacrificing the majority of his loadout slots and functionally all his burst damage to do so) to examine the most fundamental problem with trying to frontline as Pyro. Even assuming beautiful fire-particle leading, because YES, achieving the maximum DPS Pyro is capable of with flames is actually extremely hard and network-connection-dependent, and also assuming enemies that allow you to get into range, Pyro simply takes too long to kill other classes to run around fighting people like a Scout or Soldier. Even assuming the Pyro has an aimbot, his fire can deal at most 154.5 non-critical Damage Per Second. This provides rather pathetic Time To Kill on most every class, especially relative to formidable primaries like the Rocket Launcher and Scattergun.

For example, rockets can kill any 2-shottable class in .8 seconds + near-negligible close range projectile travel time and any 3-shottable class in 1.6 seconds + aforementioned projectile travel time. This equates to a potential aimbot max damage in 1.6 seconds of 3 max damage rockets, or 112 damage * 3. This leaves us with 336 damage in just 1.6 seconds, assuming max damage rockets from a perfect aiming Soldier. What can a Pyro do in that time? If that Pyro has a particle aimbot and somehow hits every fire particle, that’s going to be just 246 damage while the Soldier could deal 336. The 2-shot scenario favors Soldier even more heavily, with .8 seconds giving a Soldier 224 damage compared to a Pyro’s 123. Pyro cannot deal enough damage to kill a Scout (without afterburn damage) before a Soldier could 2shot him. The reward for becoming amazing at fighting with flames is just not relevant enough to not switch to Soldier to fight people.

The gap with a scattergun is even wider. A scattergun can kill any 2-shottable class in .625 seconds, and any 3-shottable class in 1.25 seconds (Scout is VERY scary up close, that’s why he’s so frail). This lets a Pyro deal just 96 damage in the time a Scout could deal 210(!!!), and 193 in the time a Scout could deal 315 damage.

Pile this mediocre TAS damage output on top of a method of hit registration that can make even near-perfect human particle leading on standard network conditions deal between 5-15% less damage than the particle damage numbers and the player’s performance would suggest, and suddenly the gap widens even further. Flame particles don’t have “rampup” like many close-range weapons in this game. Instead, flame particles use how long they have existed to determine how much damage they will deal when they strike an opponent. This means that the moment a flame particle passes the pilot light of your Flamethrower of choice, it has already started to lose its potency. Latency (ping) increases only exacerbate this issue, as the fire particles exist for longer before the server registers them as “hitting” an enemy player, and thus they have more time to decay in their damage dealing capacity. The worst part? Because flames are stream and not burst damage, every particle you miss comes directly out of your Time To Kill. A Scout can hit two mediocre shots on a Sniper, missing a few pellets on each shot, and get the same 2shot .625 second Time To Kill he would’ve had if he aimed perfect meatshots. With Pyro, you need every particle you can get to add up to the enemy’s HP pool in damage, so missing any directly hurts your time to kill far more tangibly than placing suboptimal shots with burst classes, who often have damage to spare when it comes to clearing kill thresholds cleanly within a function time.

And into this void of pathetic flame damage was flung a new tactic, by the genius minds at Valve. “What if we gave Pyro a mouse2 that COMPLETELY REMOVES ENEMY CONTROL OVER THEIR MOVEMENT FOR AT LEAST A THIRD OF A SECOND? Wouldn’t that be fun? Let’s just give it the same crippling range weakness as his flamethrower, let it bounce back projectiles if the Pyro is insane at predicting the specific guy he’s fighting or just lucky AF, and give him some weapons to capitalize on his STUPID MOVEMENT REMOVING ABILITY THAT IS HIGHLY SPAMMABLE, ONLY LOSES ITS TOTAL CONTROL OVER MOVEMENT WHEN SPAMMED, REQUIRES ALMOST NO AIM, AND ONLY COSTS 20 AMMO. There, Pyro is fine now, right?”

Ok, Valve. Not only is comboing, and airblast spam in general, extremely irritating to play against, it is also not a faster Time To Kill in close range than any other combat class, while still maintaining Pyro’s biggest weakness of range and mediocre tools to get in range. Let’s examine how fast our aimbot Pyro can abuse irritating, movement-eliminating combos to deal 200 damage, slightly less damage than but comparable in kill threshold (killing a full HP soldier) to a .8 second rocket 2shot or .625 second scattergun 2shot. As i will demonstrate, neither the well-balanced Flare Gun nor the F***ING STUPID Reserve Shooter can give Pyro enough of a band-aid to beat a combat class damage-wise in his home range. For reference, an aimbotting flamethrower deals 200 dmg in 1.29 seconds.

To kill optimally with combos, we must deal what our burst damage source would not deal via flames, then instantly swap and frame-perfect combo them with our fastest swap time primary (Degreaser) for the kill. This leaves us with a Flare Gun combo kill time of: 110hp of fire damage/(Flamethrower DPS of 154.5 * .9 for degreaser damage penalty)= .79 seconds) + .35sec to holster Degreaser + negligible flare travel time and then the 90 dmg flareshot kills, 1.14 seconds to kill with degreaser and flares.

Reserve Shooter perfect meatshots leave us with 89 flame dmg in .64 sec + .28 sec from the expedited Degreaser to Reserve Shooter swap and 1 meatshot to kill = .92 sec, STILL SLOWER BOO HOO RESERVE SHOOTER TOO OP.

Combos kill faster than fire, require marginally more skill to pull off than just proper fire leading alone because they contain proper fire leading within them to be viable damage-wise, and ruin the enemy’s ability to fight back, unless they just kill the Pyro before he finishes (very possible when players hit shots, especially because using your airblast for an optimal combo means it’s predictable, so you can’t reliably reflect). They level the playing field slightly, but at the cost of fairness and basic FPS design principles. Only airstrafing can affect your movement mid-airblast, which pub players rarely understand, and even then airblast has a stun to prevent that so long as the enemy has touched the ground again since the last airblast. Most troublingly, Pyro was not “fixed” by combos, because the gameplay strategies that work to avoid getting burnt to death also avoid combos. Airblast and flamethrower range are comparable, and you must burn for a few seconds to get good damage and start the combo such that it will kill when your combo shot hits. If you’re avoiding our aimbot Flamethrower Pyro properly, you are also avoiding our aimbot Degreaser/Combo secondary Pyro properly. At the end of this comboing bogus, all we have is a slightly-stronger-than-just-burning Pyro that can push you into a corner or against any clipping anywhere to screw you over horribly for coming into flamethrower range. Pubstomping reaches a new, slightly higher level, while competitive Pyro changes minimally.

Airblast reflects can give Pyro some degree of a chance to fight people, but at the end of the day, they’re still cheesy and annoying for both players, Pyro and projectile class. They’re annoying for Pyro due to multiple reasons, an important one being because they’re downright buggy sometimes.

Exhibit A:

https://www.youtube.com/watch?v=d-eG_4nLrME

Exhibit B:

Exhibit C: (skip to 40 seconds, more than half the video is garbage intro and irrelevant gameplay)

Worse yet, they still don’t make Pyro feel at home in close range. To avoid a Soldier’s easy, clean 2shot on you in close range, you must either react before his rocket reaches you, which is simply not within the purview of human reaction time and thus not feasible, or predict when he will fire. Prediction requires knowledge not only of general class habits, but also knowledge of the specific opponent’s firing pattern. This is more akin to making a hard read on your opponent in a fighting game (a clear indicator that you have outplayed your opponent by a large margin) than a level-playing-field counterplay option. To make an analogy, when you’re playing Super Smash Brothers Melee and you have your opponent in the corner on Final Destination, you don’t charge a smash attack facing what was formerly just behind you unless you’re awfully certain your opponent will attempt a roll to center stage, because virtually any other option they choose would make your smash attack charge incredibly risky and extremely punishable. Same goes for a close range airblast. Unless it was to set up a combo, airblast knockback provides a perfect punish opportunity where it pushes your opponent away from you (read: where they want to be) and places you in refire where you cannot burn things or reflect things. This means no damage for you, and a free rocket/pill/sticky/weapon switch/retreat/whatever they want for the enemy. The skill required to successfully reflect against a skilled combat class in close range is enormous, and the punishability really couldn’t be reasonably higher. High risk, high reward isn’t a terrible thing, but when the determinant of airblasting to reflect’s reward is either a terribly precise prediction indicative of a massive skill differential, or simply a lucky choice of opportunity in a metagame of when to fire and when to airblast against a skilled opponent, it doesn’t feel reliable in the slightest for Pyro to engage Soldiers in close range. To consistently reflect a Soldier’s rockets in close range is to be a far better player than the Soldier, and yet this is the only reliable way Pyro can win in close range against a class whose primary has no range restriction to begin with.

Reflects are annoying for projectile classes too, because they’re almost guaranteed at long range (exception being airburst stickies), and they feel like luck-based BS that makes you eat a horribly painful minicrit explosive round in close range (because they are, once you get inside of the reaction-time airblast distance bubble). Nobody REALLY likes reflects, except Pyro mains in denial who hold onto it (rightfully so) as their only hope against a Soldier in close quarters combat.

Finally, we must address the most crippling reason why Pyro cannot fight in close range, and why even a stupid, pub-ruining flat flame damage buff wouldn’t even help him in high level play: Good players are extremely effective at keeping Pyro out of his best range. When you KNOW a class has to get quite close to you to be effective, you learn to instantly move away and bait him. If he commits, he is dead. If he disengages, he has failed as a combat class, and you can choose to chase him or retreat or do whatever you feel. Every class has a factor to give them an advantage over a confrontational Pyro.

SCOUT: You are faster than he is and your scattergun eats him alive. Kite him just outside of flamethrower reach and 3-4shot him. He won’t catch you if he W+M1’s, and he won’t get away if he runs.

SOLDIER: If you have a shotgun, weapon heckle him. Use shotty until he dies or switches to his secondary, then rocket him. If you don’t have a shotgun, aim to his sides or behind him to try and prevent reflects, or wait until after he airblasts to shoot a rocket. Alternatively, jump away.

PYRO: Mirror match. Be better than your opponent. NEVER chase him when he backpedals unless you know he is very low HP. Try to bait him into chasing you and burn him as he walks towards you; you will outdamage him and kill him even if he was up HP on you.

DEMOMAN: If you are using a shield, you deserved to die. Pyro essentially hard-counters knights as hard as Heavy counters knights. Charge away from the Pyro next time. If you have an SL, airburst him to death. Properly timed airbursts are very difficult to avoid damage from, even when reflected. If he gets close, he will kill you. Demo is naturally weak up close due to the SL’s arm time, Grenades having no instant splash damage like rockets and generally killing himself from self damage. Stay near your team so the Pyro can’t get close as easy, and if you are alone, stay at mid range at all costs. The Loose Cannon helps here.

HEAVY: Hold m1 until the Pyro dies. If you both had full HP, he WILL die first unless he catches you by surprise with a critting phlog or backburner (which means you screwed up, have better situational awareness next time). It’s just that easy. If your aim is better than his movement, you win. If his movement is better than your aim, you die.

ENGINEER: I don’t care what loadout you are using. If you are near your sentry and your sentry isn’t placed somewhere idiotic, you win. Don’t leave your sentry and Pyros are essentially free kills.

MEDIC: Backpedalling while shooting needles is actually very effective at deterring smart Pyros and killing dumb ones. Nevertheless, if a Pyro kills you, stay closer to your team or pick a better class/player to pocket next time.

SNIPER: If Pyro is close to you, you are dead and deserve it. Have better situational awareness next time. If a Pyro is far from you, have the common sense to avoid flares (not hard if you see them coming) and use Jarate if he is packing the Detonator or Scorch Shot. Blow his head off. Sniper VS Pyro at long range is EXTREMELY one-sided in favor of the Sniper, even if the Pyro is using the Detonator.

SPY: Pyro is your counter class. Be sneakier next time, or equip Spycicle and DR and laugh as you become 20 times harder to deal with. Throw an Ambassador on that loadout, and laugh even harder as you use Spycicle fire damage immunity to land a free headshot, and suddenly become able kill him outright while still having a DR to run away with if you flub shots or his team finds you.

All these issues with Pyro as a combat class leave him as a supposed “support” class relegated to using airblast to cheese people out of their movement when they get too close (even when they’re invulned!), mitigate spam to the best of his abilities, and extinguish the handiwork of enemy Pyros, which was already made irrelevant when you move up a few skill tiers and every team has a Medic for extinguishes and sticks together, or the individual players know where to find the nearest health kit or water on the map at all times. These are the only support tools this class has.

SECTION 3: PYRO IS FIXABLE

How can we make him less dumb? My ideas (many of these are not my own original concepts, and were inspired by other SPUFfers and members of other TF2 communities) suggest that fire should reach further and travel much faster leaving the muzzle of the weapon, BUT be in a much thinner and thus harder to aim cone, with which you must track far more precisely to deal damage, and with notable particle deceleration towards the end of the damage range so that you must lead your target drastically more at mid range than in close range. On top of this, fire should have recoil that pushes you backwards. The effect here is twofold: you are slower while W+M1ing, but faster when you face away from your direction of movement and fire. Stock mobility for good players, and an easier escape from derpy charging suicide Pyros for bad players? Yes please. Another thing: making fire’s DPS start weaker, but increase in DPS the longer you’ve burnt someone in the past 10 seconds. This makes heavier classes die faster relative to light ones, taking away one of Pyro’s weakest scenarios, combat against healthy or overhealed high-HP classes, without making Scouts and Snipers melt in .005 seconds before they can even react. Finally, if Valve could rework afterburn to scale with total damage taken from fire, instead of a flat 60 even from 1 damage of fire particles grazing your right pinky, that’d be great.

All of the above changes make Pyro less forgiving for a bad player, and more rewarding for a good one. This is exactly the sort of stuff he needs, because right now, he’s stupid easy when players are bad, and stupid ineffective when players are good.

My changes may not be perfect, but I tried, and I honestly believe they are better than what we have now.

TL;DR
Pyro does nothing better than any other class except be easy AF to aim with, nullify movement without effort, and reflect spam projectiles. Getting amazing at Pyro does not yield the benefit that getting amazing at other classes does. Pyro should be more than a walking airblast, and the only way to get him there is new fire mechanics and hitreg.

Leave a Reply

Your email address will not be published. Required fields are marked *