There's some good ones in the new WP video out. One of the first is 3 Imperius using their ults like Garrosh a few weeks back to pull people behind the wall, lol. At 3 minutes though, there's a Garrosh, Johanna, Anduin combo that gets pulled off really well (and video set up is great). Lightbomb Johanna, toss into enemies, dive after to follow up. I'm not going to be surprised if people start trying to emulate it.
I don't like that damage soaked is no longer tracked. Nothing but Tank hate out there.
Good tanks don't eat unnecessary damage, though. It's a fine line. If you just sit there and take all the damage, your team will lose the fight just by virtue of basic health bar numbers.
I still remember a game where I was playing Johanna and I juked a Hanzo arrow that then slipped past me and hit my team. In that case, I should've just popped D and ate the arrow, but the combination of muscle memory and the assumption that my team could also juke the arrow ended up with us getting team wiped.
+1
Options
The Escape Goatincorrigible ruminantthey/themRegistered Userregular
I keep coming back to ETC as my best Tank. Probably because he's easy to play and flexible for most comps. I find him especially good when my teammates start intsta-locking ranged DPS Mages. Like, OK, guess I'll boop away the dives coming your way. Also, taking the Orb quest at level 1 makes him a pseudo second healer on the team.
Basically, my whole game is just standing in between people and using E to absorb damage and heal. At 7, I can even help clear lanes faster with the AoE talent. And like, that's it. His initiation is good with his Slide, but leaves you screwed once you go in. I guess his ease of use is offset by his predictability and low health pool.
Need a voice actor? Hire me at bengrayVO.com
Legends of Runeterra: MNCdover #moc
Switch ID: MNC Dover SW-1154-3107-1051 Steam ID Twitch Page
Anduin is free to play this week so I gave him a whirl. First match ever using him went pretty well I'd say, despite Diablo doing nothing but dive in constantly and complain about everyone else. Not sure how we pulled off winning the immortals either since they should have burned them down way faster.
Also, I know he's the current OP hero, but I've been doing really well with Deathwing. And I'm never any good with the current OP hero either! Got two MVPs out of 10 or so games tonight.
This was probably the best one, but it started out slightly concerning when I kept wondering how Medivh was dieing. Also Artanis was pretty bloodthirsty and kept going way to far for some kills. Luckily it was never at a moment where it cost us much. Anyways, when you do a lot better than normal, you gotta show off when you can right?
There's a really good comment analyzing it and presumably finding where the issue is coming from and how it happened. Assuming this is accurate, she basically gets a 4 second infinite shield because of stagger on Chen due to how it might be storing/calculating the different damages. I copied the comment below in spoiler since it's kinda long.
I agree that something broke, but your test was a bit off. You walked through the edge of blizzard and took one hit so the cone and frostbolt gave shield, not the blizzard. In your test you used cone, which is the highest damage hit, as the chill applicator instead of blizzard. Watching the video at 0.25 speed, the Brew soak did end just before she got the shield and ran.
I tested it myself in try mode. For more accurate math I cast the skills separately for shield while at max hp to get the exact shield values to add to the current hp.
[Jaina]
Cone of Cold: 143
Frostbolt: 120
341 HP --> regenerated to 364 over the course of the shield.
263 Shield
604 Effective HP -> 627 including regen.
[Chen]
Breath of Fire: 114 D/S (The DoT lasted the full duration of the shield due to Chen's AAs increasing the duration by .75s per auto. The DoT was actually still on her when the shield ended, had some degen on the hp bar. Shield duration is 4s.)
--> 456 Damage while shield was up.
Ring of Fire: 95 D/S (The AoE of this is so small that she would have only taken 2 (during first 2 autos), possibly 3 ticks of damage from it. The aura looks like it ran out at the same time as landing with the kick, and that may or may not have registered a tick with the aura. Going to assume not so 2 ticks.)
--> 190 Damage.
Auto Attack: 156 (3 AAs during shield)
--> 468 Damage
Flying Kick: 208
TOTAL: 1,322 Damage against 627 HP
Tim! Jaina has -695 HP. Please fix.
I went into try mode with Jaina again, removed Malf, and set enemy to Chen. Getting the dumb ass try-mode AI to use Stagger was a chore, but I finally got the results I was looking for. The shield is not displayed for Jaina either when chen was the only source of damage for the shield. Removed the tower wall so the only structure was the Keep. Toggled minions on to get Chen to come at me then toggled off when he popped Stagger.
I hit Chen with Frostbolt to proc the chill then a single Cone of Cold for shield. I then took 3 shots from the Keep which were doing around 400+ damage, and took no damage. That's about 1,200 damage against a 143 point shield. There does seem to be a pixel of white shield while this effect is happening.
Edit: That pixel of white is at the end of everyone's healthbar when they are below full hp apparently. Missed that. So yeah, invisible shield.
Something has broken between Jaina's Ice Barrier and Chen's Stagger. It may have always been broken, as the effect only shows up when a Staggered Chen is the sole source of shield.
Unlike Protected(by the way), Stagger's 'Prevented' damage is stored until the effect ends at which point part of that damage is taken over time. Without knowing exactly how they coded this function I can only take a guess, but I think I'm probably spot on.
Stagger absorbed Jaina's damage and held onto it for DoT calculation after Stagger ends. Jaina's talent is still registering that she did "ability damage to chilled targets" but doesn't know how much.
The shield is gained but the shield value is in limbo. Now, you'd think that it would know once the Stagger effect ended how much shield to generate, but there are a few issues with the way the skills/talents work in this case.
Part of the bug lies in the way Shields and Health works. Damage is taken from Shields before Health.
The DoT from Stagger is considered "Self Inflicted" because that DoT isn't someone else's ability damage, it's a new aggregated value. Stagger adds up the soaked damage and multiplies it by .75 or .6 with the Ox talent then self-inflicts that value in damage at the end of the effect. So the DoT isn't going to give Jaina shields because it's not Jaina's ability damage, it's Chen's. The shield isn't going to refresh itself with new damage values from the DoT.
But Here's the main cause.
Ice Barrier does a single check for damage when one of Jaina's abilities does damage. IsChilled = True Then AddShield(AbilityDamage*0.25) or something.
But AbilityDamage is coming back an unknown value, not a real number, not 0. The value for AbilityDamage was "lost" and broke the calculation. Ice Barrier knows Jaina hit a chilled target and ran AddShield, so a "Shield" was applied.
So all the server knows is...
Jaina has Shields for 4 seconds.
Incoming damage is taken from Shields before Health, but the Shield value is [Unknown] and the game is attempting to subtract incoming damage numbers from a valueless Shield variable, resulting in no damage to Health.
This broken shield can theoretically absorb infinite damage.
Inquisitor772 x Penny Arcade Fight Club ChampionA fixed point in space and timeRegistered Userregular
Every time I see a bug report in this game I question whether Blizzard has actually implemented automated testing in any way or actually reviews the results.
Every time I see a bug report in this game I question whether Blizzard has actually implemented automated testing in any way or actually reviews the results.
Blizzard makes fun games, but their engineering practices have always seemed pretty sub-par.
Well OK. "Always" as in "since I started paying attention ~10 years ago" :P
Every time I see a bug report in this game I question whether Blizzard has actually implemented automated testing in any way or actually reviews the results.
Automatic testing? Unit tests? What are those again?
I work in the gaming industry (technically educational gaming now) and I've seen unit testing used exactly once. It was super useful but when your product is changing rapidly in design (compare hots at release to hots now) with poorly defined inputs (every situation that could happen in a match), there's a limit to how useful automated testing is going to be. This kind of interaction between chen's stagger and jaina's shield talent isn't the kind of thing that would be caught by test cases in any case. There's no substitute for manual QA.
Getting rolled on Hanamura by an Abathur dive comp that just keeps scoring picks
Come back from a level 17-20 deficit, because we refused to give up
Soak 40k+ XP on Zagara, with 19 Mercenary caps
They can't leave their fucking base
We win, feels fucking good fam (with @Dibby )
Getting rolled on Hanamura by an Abathur dive comp that just keeps scoring picks
Come back from a level 17-20 deficit, because we refused to give up
Soak 40k+ XP on Zagara, with 19 Mercenary caps
They can't leave their fucking base
We win, feels fucking good fam (with Dibby )
tassadar is pretty good, too
Battle.net Tag: Dibby#1582
+1
Options
Inquisitor772 x Penny Arcade Fight Club ChampionA fixed point in space and timeRegistered Userregular
Every time I see a bug report in this game I question whether Blizzard has actually implemented automated testing in any way or actually reviews the results.
Automatic testing? Unit tests? What are those again?
I work in the gaming industry (technically educational gaming now) and I've seen unit testing used exactly once. It was super useful but when your product is changing rapidly in design (compare hots at release to hots now) with poorly defined inputs (every situation that could happen in a match), there's a limit to how useful automated testing is going to be. This kind of interaction between chen's stagger and jaina's shield talent isn't the kind of thing that would be caught by test cases in any case. There's no substitute for manual QA.
I see what you mean, but in this case I kind of disagree. It's even more important in games like HotS to have a system in place that gives you the most information with the least amount of work up front. Balance decisions, for example, should not be made without knowing how changing an HP or damage value might impact a particular hero's thresholds (e.g., if you increase Thrall's HP, how does that impact which heroes win in trades against him in the solo lane?).
If you are going to introduce a Stagger mechanic, then you should be willing to invest the time to set up basic scripts that will simply run through literally every single hero and every single ability against Stagger, and then validate the results. If I hit Stagger and then Jaina uses Cone of Cold, how much damage is done? What are Chen's starting and ending HP values? What were his starting and ending shield values? How much damage did you expect Jaina to actually do in that case? Is there a difference?
Maybe you don't define literally every single permutation (imagine performing the test for every single level and level disparity, or for when Stagger is used immediately vs. after 1 second), but you should have basic tests in place and a system of logging, validating, and just-plain seeing the results in a spreadsheet or query that you can then perform a basic sanity check against.
This would free up your manual QA to run the really wonky stuff like multiple hero/ability combinations or following up on bug reports, rather than having to run through a rote check of basic hero vs. hero interactions.
To be fair, it's really easy to SAY that you should do something as opposed to actually doing it. I have on idea what tools they have available to do stuff like this or how painful it is to set up. But the ROI on automating hero and ability interactions strikes me as very high in this case, because that data informs basically everything from design to balance.
Every time I see a bug report in this game I question whether Blizzard has actually implemented automated testing in any way or actually reviews the results.
Automatic testing? Unit tests? What are those again?
I work in the gaming industry (technically educational gaming now) and I've seen unit testing used exactly once. It was super useful but when your product is changing rapidly in design (compare hots at release to hots now) with poorly defined inputs (every situation that could happen in a match), there's a limit to how useful automated testing is going to be. This kind of interaction between chen's stagger and jaina's shield talent isn't the kind of thing that would be caught by test cases in any case. There's no substitute for manual QA.
I see what you mean, but in this case I kind of disagree. It's even more important in games like HotS to have a system in place that gives you the most information with the least amount of work up front. Balance decisions, for example, should not be made without knowing how changing an HP or damage value might impact a particular hero's thresholds (e.g., if you increase Thrall's HP, how does that impact which heroes win in trades against him in the solo lane?).
If you are going to introduce a Stagger mechanic, then you should be willing to invest the time to set up basic scripts that will simply run through literally every single hero and every single ability against Stagger, and then validate the results. If I hit Stagger and then Jaina uses Cone of Cold, how much damage is done? What are Chen's starting and ending HP values? What were his starting and ending shield values? How much damage did you expect Jaina to actually do in that case? Is there a difference?
Maybe you don't define literally every single permutation (imagine performing the test for every single level and level disparity, or for when Stagger is used immediately vs. after 1 second), but you should have basic tests in place and a system of logging, validating, and just-plain seeing the results in a spreadsheet or query that you can then perform a basic sanity check against.
This would free up your manual QA to run the really wonky stuff like multiple hero/ability combinations or following up on bug reports, rather than having to run through a rote check of basic hero vs. hero interactions.
To be fair, it's really easy to SAY that you should do something as opposed to actually doing it. I have on idea what tools they have available to do stuff like this or how painful it is to set up. But the ROI on automating hero and ability interactions strikes me as very high in this case, because that data informs basically everything from design to balance.
They probably do something very much like that as I have confidence that Blizzard has better development practices than the small 6-10 dev game teams that I've worked with. But they probably aren't at the level of detail that are required to catch an interaction like this one.
I would not be surprised if they had something like this in psuedo code
if (currentHealth != expectedHealth)
FailUnitTest();
}
This is a very simple unit test but as a rule of thumb, I've usually heard that adding unit tests doubles or triples the amount of work that you need to do both on the initial creation and for every change you do. For example, if they change something as minor as how much damage stagger prevents, then you'll need to go back and update every test as they'll all start to fail now but that's not extremely prohibitive and it'll help catch when you inadvertently break stagger by changing some unrelated part of the code elsewhere.
What is prohibitive is attempting to test every possible interaction. The above bug was an interaction between a jaina talent and a chen ability. There are almost 1800 talents and over 400 abilities in hots and writing a specific test case for each of them interacting would require almost 2.5m test cases which is clearly not a productive use of time. Instead you'd write more general test cases and occasionally you'd probably forget in your jaina frost shields unit test to include the possibility that they could be damaging chen with stagger up and oops your shield value is returning null and that's causing unexpected behavior elsewhere.
The ability interaction is neat, but holy crap he's mad. It looks like he practically wants some judge to come in and invalidate the results of the match. Was the match important or is he just that bothered that the stars aligned and stole his kill?
Every time I see a bug report in this game I question whether Blizzard has actually implemented automated testing in any way or actually reviews the results.
Automatic testing? Unit tests? What are those again?
I work in the gaming industry (technically educational gaming now) and I've seen unit testing used exactly once. It was super useful but when your product is changing rapidly in design (compare hots at release to hots now) with poorly defined inputs (every situation that could happen in a match), there's a limit to how useful automated testing is going to be. This kind of interaction between chen's stagger and jaina's shield talent isn't the kind of thing that would be caught by test cases in any case. There's no substitute for manual QA.
I see what you mean, but in this case I kind of disagree. It's even more important in games like HotS to have a system in place that gives you the most information with the least amount of work up front. Balance decisions, for example, should not be made without knowing how changing an HP or damage value might impact a particular hero's thresholds (e.g., if you increase Thrall's HP, how does that impact which heroes win in trades against him in the solo lane?).
If you are going to introduce a Stagger mechanic, then you should be willing to invest the time to set up basic scripts that will simply run through literally every single hero and every single ability against Stagger, and then validate the results. If I hit Stagger and then Jaina uses Cone of Cold, how much damage is done? What are Chen's starting and ending HP values? What were his starting and ending shield values? How much damage did you expect Jaina to actually do in that case? Is there a difference?
Maybe you don't define literally every single permutation (imagine performing the test for every single level and level disparity, or for when Stagger is used immediately vs. after 1 second), but you should have basic tests in place and a system of logging, validating, and just-plain seeing the results in a spreadsheet or query that you can then perform a basic sanity check against.
This would free up your manual QA to run the really wonky stuff like multiple hero/ability combinations or following up on bug reports, rather than having to run through a rote check of basic hero vs. hero interactions.
To be fair, it's really easy to SAY that you should do something as opposed to actually doing it. I have on idea what tools they have available to do stuff like this or how painful it is to set up. But the ROI on automating hero and ability interactions strikes me as very high in this case, because that data informs basically everything from design to balance.
They probably do something very much like that as I have confidence that Blizzard has better development practices than the small 6-10 dev game teams that I've worked with. But they probably aren't at the level of detail that are required to catch an interaction like this one.
I would not be surprised if they had something like this in psuedo code
if (currentHealth != expectedHealth)
FailUnitTest();
}
This is a very simple unit test but as a rule of thumb, I've usually heard that adding unit tests doubles or triples the amount of work that you need to do both on the initial creation and for every change you do. For example, if they change something as minor as how much damage stagger prevents, then you'll need to go back and update every test as they'll all start to fail now but that's not extremely prohibitive and it'll help catch when you inadvertently break stagger by changing some unrelated part of the code elsewhere.
What is prohibitive is attempting to test every possible interaction. The above bug was an interaction between a jaina talent and a chen ability. There are almost 1800 talents and over 400 abilities in hots and writing a specific test case for each of them interacting would require almost 2.5m test cases which is clearly not a productive use of time. Instead you'd write more general test cases and occasionally you'd probably forget in your jaina frost shields unit test to include the possibility that they could be damaging chen with stagger up and oops your shield value is returning null and that's causing unexpected behavior elsewhere.
Of all the dumb engineering stuff Blizzard does, this interaction seems like quite an edge case, so I don't really blame them too much for this.
I mostly disagree with your overall assessment of the value of unit tests, but that's for another thread :P
At least this was a crazy edge case. This isn't nearly as embarrassing as BFA bringing back the same bugs in patch after patch.
+1
Options
Inquisitor772 x Penny Arcade Fight Club ChampionA fixed point in space and timeRegistered Userregular
I mean, there's a bug reported just recently where Deathwing benefits from Kharazim's Ally buff. I feel like that is something that should've easily been flagged via automated testing. If you're introducing a new hero you can just invest the time to build up the basic interaction scripts up front, prior to final release. You're doing a ton of ongoing balance and regression testing before then anyway, so it's not like that investment is wasted.
But again, it's an oversimplification to just assume they aren't doing it. There's a strong possibility they have a ton of stuff in place and this particular test or series of tests is just broken and they haven't gone back to fix it.
They probably do something very much like that as I have confidence that Blizzard has better development practices than the small 6-10 dev game teams that I've worked with.
I'm pretty sure that's the size of the HotS dev team now.
oh yeah i had another game today, i had diablo dailies and i was like "hmm i feel like playing someone i haven't played in a while.... maybe li-ming? haven't played her in a hot second though.... wonder if i'll be any good....."
Watching Fan play HotS is so inspiring and eye opening. His Samuro this game was gross (and funny), so I tried my hand at the off-brand version:
Not bad! Split soaking for days using E to race between lanes (while healing) and R to fast clear waves. The funny part is that the enemy Lunara was absolutely wrecking me in top lane until level 10. I simply don't have the micro skills and match-up knowledge to handle her solo. But after that, our map pressure was bonkers.
Sadly, this probably only works in QM. To even further punctuate this point, I got MVP and received no votes. :biggrin:
MNC Dover on
Need a voice actor? Hire me at bengrayVO.com
Legends of Runeterra: MNCdover #moc
Switch ID: MNC Dover SW-1154-3107-1051 Steam ID Twitch Page
Posts
https://www.youtube.com/watch?v=UFIBkHFogP8
Steam ID
dawn of the jungle muradin
woulda gotten more camps but we finished the game too fuckin fast smdh
Battle.net Tag: Dibby#1582
Legends of Runeterra: MNCdover #moc
Switch ID: MNC Dover SW-1154-3107-1051
Steam ID
Twitch Page
Good tanks don't eat unnecessary damage, though. It's a fine line. If you just sit there and take all the damage, your team will lose the fight just by virtue of basic health bar numbers.
I still remember a game where I was playing Johanna and I juked a Hanzo arrow that then slipped past me and hit my team. In that case, I should've just popped D and ate the arrow, but the combination of muscle memory and the assumption that my team could also juke the arrow ended up with us getting team wiped.
Basically, my whole game is just standing in between people and using E to absorb damage and heal. At 7, I can even help clear lanes faster with the AoE talent. And like, that's it. His initiation is good with his Slide, but leaves you screwed once you go in. I guess his ease of use is offset by his predictability and low health pool.
Legends of Runeterra: MNCdover #moc
Switch ID: MNC Dover SW-1154-3107-1051
Steam ID
Twitch Page
Steam ID
This was probably the best one, but it started out slightly concerning when I kept wondering how Medivh was dieing. Also Artanis was pretty bloodthirsty and kept going way to far for some kills. Luckily it was never at a moment where it cost us much. Anyways, when you do a lot better than normal, you gotta show off when you can right?
Steam ID
https://www.youtube.com/watch?v=Yr6VLezAwVs
There's a really good comment analyzing it and presumably finding where the issue is coming from and how it happened. Assuming this is accurate, she basically gets a 4 second infinite shield because of stagger on Chen due to how it might be storing/calculating the different damages. I copied the comment below in spoiler since it's kinda long.
I tested it myself in try mode. For more accurate math I cast the skills separately for shield while at max hp to get the exact shield values to add to the current hp.
[Jaina]
Cone of Cold: 143
Frostbolt: 120
341 HP --> regenerated to 364 over the course of the shield.
263 Shield
604 Effective HP -> 627 including regen.
[Chen]
Breath of Fire: 114 D/S (The DoT lasted the full duration of the shield due to Chen's AAs increasing the duration by .75s per auto. The DoT was actually still on her when the shield ended, had some degen on the hp bar. Shield duration is 4s.)
--> 456 Damage while shield was up.
Ring of Fire: 95 D/S (The AoE of this is so small that she would have only taken 2 (during first 2 autos), possibly 3 ticks of damage from it. The aura looks like it ran out at the same time as landing with the kick, and that may or may not have registered a tick with the aura. Going to assume not so 2 ticks.)
--> 190 Damage.
Auto Attack: 156 (3 AAs during shield)
--> 468 Damage
Flying Kick: 208
TOTAL: 1,322 Damage against 627 HP
Tim! Jaina has -695 HP. Please fix.
I went into try mode with Jaina again, removed Malf, and set enemy to Chen. Getting the dumb ass try-mode AI to use Stagger was a chore, but I finally got the results I was looking for. The shield is not displayed for Jaina either when chen was the only source of damage for the shield. Removed the tower wall so the only structure was the Keep. Toggled minions on to get Chen to come at me then toggled off when he popped Stagger.
I hit Chen with Frostbolt to proc the chill then a single Cone of Cold for shield. I then took 3 shots from the Keep which were doing around 400+ damage, and took no damage. That's about 1,200 damage against a 143 point shield. There does seem to be a pixel of white shield while this effect is happening.
Edit: That pixel of white is at the end of everyone's healthbar when they are below full hp apparently. Missed that. So yeah, invisible shield.
Something has broken between Jaina's Ice Barrier and Chen's Stagger. It may have always been broken, as the effect only shows up when a Staggered Chen is the sole source of shield.
Unlike Protected(by the way), Stagger's 'Prevented' damage is stored until the effect ends at which point part of that damage is taken over time. Without knowing exactly how they coded this function I can only take a guess, but I think I'm probably spot on.
Stagger absorbed Jaina's damage and held onto it for DoT calculation after Stagger ends. Jaina's talent is still registering that she did "ability damage to chilled targets" but doesn't know how much.
The shield is gained but the shield value is in limbo. Now, you'd think that it would know once the Stagger effect ended how much shield to generate, but there are a few issues with the way the skills/talents work in this case.
Part of the bug lies in the way Shields and Health works. Damage is taken from Shields before Health.
The DoT from Stagger is considered "Self Inflicted" because that DoT isn't someone else's ability damage, it's a new aggregated value. Stagger adds up the soaked damage and multiplies it by .75 or .6 with the Ox talent then self-inflicts that value in damage at the end of the effect. So the DoT isn't going to give Jaina shields because it's not Jaina's ability damage, it's Chen's. The shield isn't going to refresh itself with new damage values from the DoT.
But Here's the main cause.
Ice Barrier does a single check for damage when one of Jaina's abilities does damage. IsChilled = True Then AddShield(AbilityDamage*0.25) or something.
But AbilityDamage is coming back an unknown value, not a real number, not 0. The value for AbilityDamage was "lost" and broke the calculation. Ice Barrier knows Jaina hit a chilled target and ran AddShield, so a "Shield" was applied.
So all the server knows is...
Jaina has Shields for 4 seconds.
Incoming damage is taken from Shields before Health, but the Shield value is [Unknown] and the game is attempting to subtract incoming damage numbers from a valueless Shield variable, resulting in no damage to Health.
This broken shield can theoretically absorb infinite damage.
Steam ID
yiiiikes no thanks not ever again after what he did
Battle.net Tag: Dibby#1582
I loaded up the vid and saw who it was and just got this instant feeling of repulsion
Welp. That's a shame, I'm sure it's a cool vid, but.
Battle.net Tag: Dibby#1582
3DS Friend Code: 3110-5393-4113
Steam profile
Blizzard makes fun games, but their engineering practices have always seemed pretty sub-par.
Well OK. "Always" as in "since I started paying attention ~10 years ago" :P
3DS Friend Code: 3110-5393-4113
Steam profile
Automatic testing? Unit tests? What are those again?
I work in the gaming industry (technically educational gaming now) and I've seen unit testing used exactly once. It was super useful but when your product is changing rapidly in design (compare hots at release to hots now) with poorly defined inputs (every situation that could happen in a match), there's a limit to how useful automated testing is going to be. This kind of interaction between chen's stagger and jaina's shield talent isn't the kind of thing that would be caught by test cases in any case. There's no substitute for manual QA.
Come back from a level 17-20 deficit, because we refused to give up
Soak 40k+ XP on Zagara, with 19 Mercenary caps
They can't leave their fucking base
We win, feels fucking good fam (with @Dibby )
tassadar is pretty good, too
Battle.net Tag: Dibby#1582
I see what you mean, but in this case I kind of disagree. It's even more important in games like HotS to have a system in place that gives you the most information with the least amount of work up front. Balance decisions, for example, should not be made without knowing how changing an HP or damage value might impact a particular hero's thresholds (e.g., if you increase Thrall's HP, how does that impact which heroes win in trades against him in the solo lane?).
If you are going to introduce a Stagger mechanic, then you should be willing to invest the time to set up basic scripts that will simply run through literally every single hero and every single ability against Stagger, and then validate the results. If I hit Stagger and then Jaina uses Cone of Cold, how much damage is done? What are Chen's starting and ending HP values? What were his starting and ending shield values? How much damage did you expect Jaina to actually do in that case? Is there a difference?
Maybe you don't define literally every single permutation (imagine performing the test for every single level and level disparity, or for when Stagger is used immediately vs. after 1 second), but you should have basic tests in place and a system of logging, validating, and just-plain seeing the results in a spreadsheet or query that you can then perform a basic sanity check against.
This would free up your manual QA to run the really wonky stuff like multiple hero/ability combinations or following up on bug reports, rather than having to run through a rote check of basic hero vs. hero interactions.
To be fair, it's really easy to SAY that you should do something as opposed to actually doing it. I have on idea what tools they have available to do stuff like this or how painful it is to set up. But the ROI on automating hero and ability interactions strikes me as very high in this case, because that data informs basically everything from design to balance.
They probably do something very much like that as I have confidence that Blizzard has better development practices than the small 6-10 dev game teams that I've worked with. But they probably aren't at the level of detail that are required to catch an interaction like this one.
I would not be surprised if they had something like this in psuedo code
Test_Chen_Stagger(damage, expectedHealth){
hero = CreateHero(Chen);
hero.ActivateAbility(Chen_Stagger);
DoDamageToHero(hero, damage);
WaitForSeconds(Chen_Stagger.duration);
currentHealth = CheckHealth(hero);
if (currentHealth != expectedHealth)
FailUnitTest();
}
This is a very simple unit test but as a rule of thumb, I've usually heard that adding unit tests doubles or triples the amount of work that you need to do both on the initial creation and for every change you do. For example, if they change something as minor as how much damage stagger prevents, then you'll need to go back and update every test as they'll all start to fail now but that's not extremely prohibitive and it'll help catch when you inadvertently break stagger by changing some unrelated part of the code elsewhere.
What is prohibitive is attempting to test every possible interaction. The above bug was an interaction between a jaina talent and a chen ability. There are almost 1800 talents and over 400 abilities in hots and writing a specific test case for each of them interacting would require almost 2.5m test cases which is clearly not a productive use of time. Instead you'd write more general test cases and occasionally you'd probably forget in your jaina frost shields unit test to include the possibility that they could be damaging chen with stagger up and oops your shield value is returning null and that's causing unexpected behavior elsewhere.
The ability interaction is neat, but holy crap he's mad. It looks like he practically wants some judge to come in and invalidate the results of the match. Was the match important or is he just that bothered that the stars aligned and stole his kill?
Armchair: 4098-3704-2012
But he also gets paid to overreact to shit.
So take that for what it's worth.
Of all the dumb engineering stuff Blizzard does, this interaction seems like quite an edge case, so I don't really blame them too much for this.
I mostly disagree with your overall assessment of the value of unit tests, but that's for another thread :P
3DS Friend Code: 3110-5393-4113
Steam profile
Battle.net Tag: Dibby#1582
But again, it's an oversimplification to just assume they aren't doing it. There's a strong possibility they have a ton of stuff in place and this particular test or series of tests is just broken and they haven't gone back to fix it.
POP. OFF. QUEEN.
Battle.net Tag: Dibby#1582
HE TOOK MARCH OVER OCTOGRAB FFS. INTO AN ILLIDAN/BUTCHER/FENIX/ZJ/ANA????? FREE KILLS????? HELLO???????????????
Battle.net Tag: Dibby#1582
time spent dead is a factor and that there is three murky-deaths
but..... but....... pop-off queen li-ming :bigfrown:
Battle.net Tag: Dibby#1582
popped off to the grave three times too many
Watching Fan play HotS is so inspiring and eye opening. His Samuro this game was gross (and funny), so I tried my hand at the off-brand version:
Not bad! Split soaking for days using E to race between lanes (while healing) and R to fast clear waves. The funny part is that the enemy Lunara was absolutely wrecking me in top lane until level 10. I simply don't have the micro skills and match-up knowledge to handle her solo. But after that, our map pressure was bonkers.
Sadly, this probably only works in QM. To even further punctuate this point, I got MVP and received no votes. :biggrin:
Legends of Runeterra: MNCdover #moc
Switch ID: MNC Dover SW-1154-3107-1051
Steam ID
Twitch Page
COME FORTH, AMATERASU! - Switch Friend Code SW-5465-2458-5696 - Twitch