Open rjackson opened 10 years ago
We should handle them in the same way that the compendium 10 heroes handles them.
I do not know what that is, but yeah, just like that.
I assume no-stats isn't counted, so we should not count that for sure.
Thoughts
The compendium excludes low-priority matches, however I don't think the WebAPI exposes whether or not a match is low priority, so we can't replicate that behaviour (I dont' think we should even if we could anyway.)
I propose we implement two whitelists for lobby types and game modes. A game must match both whitelists in order to count toward the challenge.
ID | Desc | Whitelisted? |
---|---|---|
0 | Public Matchmaking | YESP |
2 | Tournament | YESP |
5 | Team matchmaking | YEP |
6 | Ranked solo | YEP |
7 | Ranked party | YEP |
1 | Practice lobby | NOPE |
4 | Co-op bot match | NOPE |
ID | Desc | Whitelisted? |
---|---|---|
1 | All pick | Yep |
2 | Captain's Mode | Yep |
3 | Random Draft | Yep |
4 | Single Draft | Yep |
5 | All Random | Yep |
7 | Reverse Captain's Mode | Yep |
12 | Least Played | Yep |
16 | Captain's Draft | Yep |
17 | Balanced Draft | Yep |
6 | Diretide | Nope |
9 | The Greeviling | Nope |
10 | Tutorial | Nope |
11 | Mid Only | Nope |
14 | Compendium Matchmaking | Nope |
18 | Ability Draft | Nope |
We should check the leaver_status
for the player associated with the challenge, and have another white-list of allowed leaver-status options.
I propose the following
ID | Desc | Whitelisted? | Notes |
---|---|---|---|
0 | None (didn't leave) | Yep | |
1 | D/c but no abandon | Yep | |
2 | D/c but didn't reconnect in time | Yep | There's a number of reasons somebody could get D/C'd and not reconnect in time (I've had it happen to me), I don't think we should presume every abandon through this is malicious - so we should count the match. |
4 | AFK abandon | Yep | There are reasons to go AFK in a game, and teams aren't always considerate with their pauses. There's also the problem of being starved from EXP - whether by playing carefully, or by being griefed by a malicious teammate. If the player won but had an AFK abandon, I think we should allow their hero to be complete. |
3 | D/c and clicked "Leave game" | Nope | |
5 | Player never connected | Nope | |
6 | Player never connected (_TOO_LONG variant) | Nope | Not sure what the distinction is between status 5 and 6, but they're both "player never connected", so they shouldn't count. |
I'm not sure how we identify no-stats-recorded matches, but we can have some additional rules to filter out clearly nonsensical matches. Off the top of my head, we should exclude a match if any of the following conditions are true:
How should 10hero handle these cases:
Any other things to consider?