Talk:PvP Matchmaking Algorithm

From Guild Wars 2 Wiki
Jump to navigationJump to search

typo in code[edit]

Pseudo-Code for function "predict" under "Match Prediction" states in the comment that a prediction value is between -1 and 1. But the in the return value the clamp is between 0 and 1. Following the code below it the clamp should be between -1 and 1. Jurrit (talk)

You're right, thanks for the change. I wrote the pseudo-code from memory while at home, so it likely contains other errors as well. I'll make another pass after I finish pseudo-code for matchmaking. Justin ODell (talk) 22:56, 22 November 2014‎ (UTC)
Tut, four tildes please, gentlemen. We need to date you as well as identify you. — snogratUser Snograt signature.png 05:42, 23 November 2014 (UTC)
Got it! :D Justin ODell (talk) 05:57, 23 November 2014 (UTC)

Another one : in the createMatches function, you call "withdrawRosters". There is no such function, are you referring to "withdrawPlayers" instead ? The same goes for "shouldPopulateTeam" in the populateMatch function, shouldn't it be "shouldPopulateRed" ? Dwim be (talk) 10:59, 2 December 2014 (UTC)

Yep, this was a mistake. I've fixed it, thanks. Justin ODell (talk) 04:35, 4 December 2014 (UTC)

penalty system[edit]

Hi there! You put "Penalty/@reason: Reason the dishonor is being awarded. Abandon: leaving a match before the end. QueueDodge: leaving or failing to confirm you're ready for a match. Banned: When a GM determines you may no longer participate in ranked or unranked arena." If one enters the tpvp map before the match starts for instance and then swaps profession before the countdown goes to 0s, does this count as QueueDodge? Many thanks --Lead (talk) 00:19, 23 November 2014 (UTC)

No, this will count as an Abandon, and your stats will be updated as if you lost the game no matter the outcome. We may change that in future builds, however. Justin ODell (talk) 03:51, 23 November 2014‎ (UTC)
Thank you for the speedy response. Ok how about when the rooster is waiting for a match to begin. If one leaves the rooster (prior to map being available or match begining) because of whatever reason, is this also Abandon? Many thanks --Lead (talk) 17:18, 23 November 2014 (UTC)
They must confirm before getting to map voting or being sent to a match. If you decline that confirm (or don't accept before the time runs out), the roster will be removed from the match (including those that did accept). The player(s) that don't confirm will get QueueDodge dishonor, but that will not include the other people in their roster that did confirm. The system will also try to find other rosters to fill the missing spots. If it can't, the remaining rosters in the match will be returned to the top of the queue. Justin ODell (talk) 21:58, 23 November 2014 (UTC)
What if we get disconnected during the game, as it recently happened a lot? When you get an error 7 and then get back into the game (that you often lose, anyway)? Tsukasa Li (talk) 17:46, 5 December 2014 (UTC)
If you get an error 7, or any other error, please send me the full error code and I'll look into it. Justin ODell (talk) 20:39, 15 January 2015 (UTC)
Could you update this section according to the last build? It's not clear in players' mind if they score -1 when they reroll. Tsukasa Li (talk) 11:40, 15 January 2015 (UTC)
Yes, I'll schedule some time today to update everything. Justin ODell (talk) 20:39, 15 January 2015 (UTC)

Matchmaking queue time[edit]

I wanted to react on this sentence in the matchmaking part : While this may seem unfair at first, this has actually been shown to decrease wait times for all players. Is that actually true ? I understand that part of the matchmaking as "trying to start the games with obvious matches ASAP, and dealing with rest a bit later". Even if not obvious, I agree with the fact that it will indeed lower the average queue time, as it is likely that many matches fall in this category. But the difficult matches will probably take longer than a strict FIFO matchmaking, am I correct ? So if you are a player that has a rating that is difficult to match with others, won't this system give you longer queues ? I still find this system pretty good, but then we might need to rewrite "decrease wait times for all players". Dwim be (talk) 10:40, 2 December 2014 (UTC)

The problem is the system will trash until those rosters are matched, causing everyone behind them to be stuck waiting. Also, just because we can't find a match customized for a specific roster doesn't mean the roster won't be picked as part of another match customized for some other roster. E.g. a high MMR team may not be able to find 5-9 players at the same high level, but they may be able to fill the a spot with someone lower but whom they're still in range of. Justin ODell (talk) 16:35, 2 December 2014 (UTC)
Makes sense, ty. Also, see my remark in the "typo" part.Dwim be (talk) 10:31, 3 December 2014 (UTC)

Appearance[edit]

This is only my opinion, but i think the article would present much better if the reading sections were the main focus with all the coding in collapsable boxes. Its important to retain it of course, but the vast majority of users will only want the summary information. I admit i did browse here on my phone, so on a pc screen it may not appear quite so cluttered.

rating vs ladder vs div/tier[edit]

  • So, basically there is a mix using a ladder, Glicko, and the div/tier system with the pip range threshold?
  • I wonder how the players glicko rating is updated after matches. I can not find this. Is it based on enemy average rating? How is a rating that accounts for individual deviation and volatility averaged then?
  • Player rating is weighted zero for outcome prediction according to the code?
  • The part about class specific MMR deviates from statements on forums. Please clarify.