We’ve wired up the automatch feature! It is currently available to people to check out and try to break on the beta server, https://beta.online-go.com. Feedback is appreciated!
To find a game with automatch, simply click ‘Play’ on the nav bar, then click ‘Blitz’, ‘Normal’, or ‘Correspondence’. You will then be entered into the automatch system and await an opponent.
The matching system currently works as follows:
If two players of the same rank enter the automatch queue with compatible settings, a match between the two will be created pretty much right away.
If those two players aren’t the same rank, we wait for a little bit (10s per rank for blitz, 30s per rank for normal games, and an hour per rank for correspondence games). If no one else joins the automatch queue that is a better match for either player during that time, a match is made between those two players anyways.
Limits can bet set to the min/max rank difference you’re willing to play, the default is ± 3
Once a match is made, future matches between the same two people are suppressed by the equivalent of 6 ranks for 20 minutes, 2 hours, and 2 days for blitz, normal, and correspondence games respectively. (This means that if the same two people join the automatch queue right after a game, the system will wait a bit longer to create a match between the same two people)
Once you’ve clicked an automatch button, you’re free to navigate around the site to do other things while a match is found, though for blitz and normal games, if you close the browser tab that you used to find a game, the seek request will also be canceled. (Correspondence seeks will remain active in the system and you can have many of them going at once.)
Enjoy and thanks to all that are going to test it out and make sure we didn’t break anything along the way!
I’m really happy that this feature is getting implemented. Being a programmer myself I’m looking for simple minimalistic approaches where possible. Here are my $0.02 about why do I find the experience a little too inconsistent:
Three challenges types?
The idea behind auto-match is to make things easier for newcomers / not harder. We already have direct challenges and open challenges, having auto-matches as third category will make the whole experience unnecessarily conflated. From the design perspective I would see it as a new feature on top of existing challenge model rather than a completely new challenge type.
Where is my game…
For a new joiner who is trying to start a game, not seeing his game on a radar might be really confusing. After all he just wants to play a game, doesn’t he? If there are few players on a server, or your rank is very high (or low) - do you setup an auto-match and wait? But then noone can see you, or ask you “Hey, I’ve noticed you have a game open, but I’m just outside of your rank preference, would you adjust the setting for me please?”. In the end he might prefer to get his game on the radar, and to do that … he needs to click Custom button, intuitive isn’t it? But why do we need to make a choice at all?
Keep it simple
Why not keep the open-challenges as they used to be, with the small twist, that challenges with standard settings ‘attract’ each other. There is no good reason to not show them on the radar. As soon as two ‘compatible’ challenges are open an ‘auto-match’ should happen between those challenges resulting in a game. IF someone picks the game from the radar, the player that set up the game shouldn’t mind?
It may seem that timed wait is incompatible with open-challenges protocol, but the solution could be as simple as making fresh auto-match challenges disabled on the radar. Challenges player could pick could be restricted by the effective (time based) rank limit rather than full declared one.
Symmetric rank limits
If someone wants to play with player 2 stones stronger, there should be another person willing to play with player 2 stone weaker. So it’s natural to make the limits symmetric, isn’t it? However the limitation feels artificial - if someone does want to play stronger players, he is probably willing to wait until player happy to play with him shows up. Generally we should let users decide how and whom they want to play. Slight restrictions could be made in case of auto-match to improve pairability, but again I don’t see a reason why we need a different experience compared to open challenges.
No such thing as 'No preference’
I don’t mind the kind of time settings I play, but I do have preference. I believe everybody does. It feels like ‘No preference’ was introduced to get a better chance of finding a match, however ‘loose’ preference is as good. In case of mismatch server can always ‘throw a coin’. Again a minor thing, but makes the experience slightly less consistent.
Basing the auto-match on open challenges gives interesting opportunities - for example conditional ‘auto-matches’ allowing negotiation of mismatches, etc. That’s just nice to have, not needed right now. However if auto-match stays as a different category - these potential features will never be possible to implement.
New picker for board size!
I love it. If only all pickers were like that, ideally with 3 shades supported:
That would solve the ‘No preference’ problem while giving nice and consistent feel for all the game settings.
Whatever shape the auto-match feature takes, it will be a good addition to the server. I do believe however, that this is a great opportunity to implement the best and simplest game making experience available in the internet. Let’s use this chance well
There is no time information available on the “Quick Match Finder” window. There should be information about the average time per move.
What happens if someone who is a better match does enter automatch queue. Does the “new” pairing also have these waiting periods? If there is this waiting period for each new “pairing” then the top and bottom ranks could have really hard time getting a game with the automatch.
(Hmm I just tested this and my 1d and 2d test accounts got paired immeaditly with no 10 second wait period)
I tested this. The notification thing on the upper right corner indeed does not appear on a new tab but when I close the original tab used in automatch and navigate to the Play section of OGS using a new tab it will still show “Finding you a game…” pulsating icon thing. It does not pair you though. (also tested this)
The existing challenge modal is effectively replaced by the Play screen. I originally was planning on just making those three buttons on the current modal turn into automatch, however that makes it hard to know that in order to find a custom game, you need to then navigate over to this other page to see what’s open - I fear it’d create a bias that would make it rather difficult to match custom games.
Now, everything is just on the one screen, you can go there and click a button for a quick match and/or check out the open custom games, and something there might catch your eye.
I’m not convinced the current setup is the best, it is a bit more graphically complicated than I’d like… but at the same time I’d hate to make it neigh impossible to find a custom game outside of automatch. I’m definitely open to suggestions.
Eh, i dunno, we tell the user explicitly that we’re finding them a game… I don’t think it not popping up on the radar will be confusing. The radar already blinks too much, that’s been a common complaint from people, it’s sometimes hard to get a match because by the time you click a match, read the settings and make sure it’s something you want to play, then click play, someone else has already come along and accepted. I don’t think we need any more noise on that graph.
I was initially thinking about that too, but I’d have to rework that system to account for the variability in automatch (multiple sizes, multiple speeds, various preferences), which we could do but I do think that, like i was noting in the previous paragraph, it’d make the graph too noisy, so all n all i think not displaying them would be best for custom games.
This isn’t a hard limit, I wanted to feel out how the community felt about it. At this point it’s just a UI change, so depending on what folks think about symetric vs asymetric, we can change things pretty easy.
Well, when two people state a preference, we do exactly that, throw a coin and pick. ‘No preference’ is the same as saying, “If my opponent has a preference, lets use that, otherwise lets just use the default setting”.The defaults btw are, according to our recent poll, preferred by most.
So in this case you’re talking about automatch matching a custom match that is “close enough” to what someone would expect from an automatch game given their automatch criteria, and then possibly having a step to work out any of the special settings that was put in for the custom match? That might indeed be pretty cool. FTR that’d still be completely possible, the underlying automatch and seek graph systems are “close” on the server side, there would be no technical reasons why doing a cross match like that would pose any notable technical challenges.
What would ‘maybe’ mean when a match came up with that setting?
No, how it works is each user has their own “search radius” that expands over time, and we also match in order of who has been in the queue the longest, so if you join with a 1d account and wait 30 seconds and join with a 2k, the match should be instant because the 1d has a search radius of 3 at that point.
Ah whoops, I thought i had all that worked out, apparently not, thanks for the catch
I was thinking about how to make presentation of custom challenges consistent with auto match, ideally presented in a single form. I suppose one picture, no matter how bad (apologise for my skills in the area) is better than 1000 words.
And btw. I do understand that the system is almost ready, and it’s not a great time to make a revolution. What I read from your answers is that the underlaying model is quite flexible. So all the crazy ideas are just something to have in mind in future iterations of the system
Uhmmm, why are handicaps disabled by default for live games? I’m looking at the poll results right now and people preferred hadicaps enabled 52.5% to 47.5%.
I myself voted in favor of handicaps for live games, as I see no reason to waste such a useful game feature and prefer raw mismatched competition (which might be “good” for the ego, but not so much for improving skill).
I’m going to have to ponder on this a bit more. I like that with that system you can say something like “I prefer canadian timing, byo-yomi is fine as well, but never give me a fischer game”. And I also lament a bit that the current UI doesn’t have the ability to look for “either a blitz or normal game”. I do worry a bit about complexity, but maybe it wont be too bad.
(It was on purpose, my thinking was “ehh, it was a neck and neck race and this way non-correspondence settings will be consistent” … but with your prod and my re-analysis of the data, i’m convinced to go strait with the vote again )
I’m happy that you like some of my ideas. I do also agree, that we shouldn’t make the system too complex, so depending on the state of the code it might be better to keep the solution simple, just giving it a nudge in a direction where some of the suggestions would be possible to implement in future.