I'm having trouble visualizing how this will work. Do people still create their own tables with automatch, or does automatch create the game for them? If people create tables, how does automatch decide whose table to use? Or is there a dichotomy between automatch hosts and automatch joiners and you choose which to be?
I think we should talk about this before (or concurrently with) talking about being able to play hidden sets of 10 in casual, etc. As it stands I can't really formulate opinions about that stuff without knowing the framework.
Someone is hosting a game. That's part of the premise currently; they host a game and you play with their cards. I was imagining that that would stay true, but uh that's worth thinking about, why would it. There are people who want to play, they have the things they care about (I want a 3-player pro game), why not just match them up? Having a host however is tied to "and you play with their cards." And you want to be able to host in order to do specific things, I want to play this particular set of 10. So okay for the moment let's say, there is a host.
So there are two sets of information - preferences for games, which might change from moment to moment - I want a 3-player pro game - and more specific stuff you get to pick when hosting - let's play these specific 10.
You either host a game or click "match me." If you host you pick whatever's in the hosting-specific set of information and the game is generated and you wait to see if someone joins it. If you click "match me" it looks for a game matching your requirements and adds you to it if it finds one. Obv. if you are tired of waiting for joiners/matches you can switch.
Aha, wait. If you click "match me" it can also just match you with another person who clicked "match me." I mean we have good defaults for the additional hosting-based information. I am thinking "hosting" only makes sense for special stuff.
So it's like this (in this imagined plan that follows, ugh). You pick a set of things you want out of your game, you click ready. You can just get matched vs. someone that matches. Or you can be more specific as a special thing, in which case you host a game and people can get matched to it.
The existing list of unstarted/started games has like no value here. If you want a 4-player game and only 3 have joined, you want to see that, but that's it. I guess if you are having trouble getting matched you want to see what people are asking for, although that could be a chart, I mean they will be vanishing as you look at them.
What might the options be? Default *'d for when no-one cares; "don't care" is the actual default selection.
- pro / *casual / don't care
- *rated / unrated / don't care
- minimum number of expansions (*0)
- minimum number of players (*2)
- maximum number of players (*6)
- minimum rating for opponents (*0)
- maximum rating for opponents (*max)
- maximum opponent quit% (*100)
- find opponents from friend-list only
- maximum number of selected cards by host (*1) [if casual or relevant to pro]
- let host pick expansions (*yes) [if casual or relevant to pro]
- *exclude cards we all hate-list / exclude cards any of us hate-list [if casual or this is also part of pro]
- card selection type [if casual or to the degree this is part of pro]
-- *random from available expansions [incl. main set obv.]
-- random from two available expansions plus promos (counting expansions as published, not half-sets)
-- random recommended set doable with available expansions [including one hand-picked by a host]
-- don't care
Special options for hosting:
- ability to request particular opponents (for people who just want to play together)
- pick expansion for particular slot
- pick card for particular slot
- pick a recommended set
- visible card list [if casual]
- pick starting player [when also picking particular opponents]
edit: had too many asterisks and a missing don't care
edit: added "let host pick expansions;" let chosen recommended set match random one