Page 1 of 4

/in-vitational Round 4 Discussion

Posted: Wed Oct 26, 2016 5:02 am
by mith
(Because for some reason I think I don't have enough on my plate right now...)

The /in-vitational is a player/mod matching system which has been run three times previously. The general process is:
  1. All interested players and mods sign up. Mods optionally post what type of game they intend to run if selected.
  2. Once the list is final, all players send preference lists for players, mods, and a range of game sizes.
  3. ???
  4. The algorithm spits out a set of games attempting to maximize a happiness score.
  5. Play those games!
We have used a different algorithm each time we've done this, and will almost certainly come up with yet another one this time, so the main discussion point for this thread will be determining priorities for placement. The general rules (subject to weighting) are:
  1. "Don't" preferences are mandatory - players should never be placed in a game with players they don't want to play with, by mods they don't want to play under (whether because of the mod or because of the mod's proposed setup), or with too many or too few players.
  2. For a given potential solution, points are awarded for players being in a game with other players on their like list (possibly weighted - last time players could give their preferences a weighting from 1 to 3), with mods on their like list, and for being assigned to a game at all.
  3. We have also discussed giving bonuses for meeting at least X likes for a given player (to avoid games being formed where none of the players have opinions, just because of the assignment bonus). This might be in lieu of an assignment bonus (or your preference list may include something along the lines of whether you would like to meet a certain threshold, or whether you just want to be in a game and don't care that much about who is in it).
Issues that have popped up in previous iterations:
  1. Because the algorithm generally looks for an overall maximum happiness, it generally spits out one large game full of "popular" players with a really high score, while the "last" game or two have few matches and are formed as leftover games to include as many as possible. Providing significant bonuses to a player's first or second match may reduce this behavior somewhat.
  2. The low-score individual games are also sometimes due to players not submitting enough likes; I'm not sure there is any way around this, other than emphasizing that the point of this system is to match players who want to play together, whereas if you don't care about that part you can just join any old game in the queue.
  3. Replacements are a big problem - we usually can't use unmatched players, because of "don't" preferences. One possible solution is to allow players to join a second game as a replacement, if needed, and give a list of all potential allowed replacements for each game.
Feel free to comment with suggestions for what you would like to see in a matching algorithm, or just express your interest in participating. At this point, I'm not expecting signups to happen 'til after Thanksgiving at least, which means games starting early next year.

Posted: Wed Oct 26, 2016 5:11 am
by Nexus
I enjoyed modding last time round but think my game ended up being the apathy game, which was a shame.

Edit: The playerlist was cool but I remember being a little upset about the player apathy and amount of prods and replacements I needed.

Posted: Wed Oct 26, 2016 5:18 am
by chamber
So, based on the last time I helped with the algorithm, I'd make a couple notes here, for whomever does the work this time:

You should have people ask whether they actually want to be forced into a game, or if they'd rather not play if it's going to be below a given threshold.
You should make sure people have an understanding of how weighting works. (some may select few thinking it increases their weighting?)
You need to break up the big super game. I'm not sure the best way to go about this, miths suggestion may work.

Posted: Wed Oct 26, 2016 7:02 am
by hitogoroshi
This is a really interesting problem to think about.

I think the way to go about the "assignment bonus" is to have the likes and dislikes be fixed values (you can only specify hard veto, dislike, neutral, like, or really like, with the definition of really like being that really like + dislike is a positive tradeoff for you, corresponding to "point values" of -infinity, -1,0,+1,+2), but allow people to specify their OWN values for their baseline and for the compromises from their preferred game type they're willing to accept. And then we focus on trying to improve points over baseline, and don't put a player in a game if their total score isn't at least zero.

This hopefully could help make it immune to being meta-gamed by people falsely reporting preferences - if someone says that "I will only want a game with my five favorite players" and so sets their baseline to -15, they can do that, but it's also pretty likely they just won't get a game, because having a negative baseline means that it's only smarter to include the player instead of exclude them if at least some of the likes are reciprocated. If that makes sense, I'm kind of typing in a hurry but I think it could be made to work.

Would we want a "WOTC" system wherein the system is willing not to assign a player to the game if doing so necessarily means the playerbase as a whole gets less happy?

Posted: Wed Oct 26, 2016 12:15 pm
by callforjudgement
I don't generally have huge preferences for people I want to play with (and when I do, I normally just look for a game they're playing and replace into it). So if I participate in this as a player, it'd be because people want to play with me, rather than the other way round. Is there some way to participate as "include me if it makes other players happy, otherwise leave me out"?

I'd be willing to join this as a mod, though. I'm not sure I have anything much to recommend myself in terms of actual modding practice, but I've become somewhat typecast in the sorts of setup I run (small, mostly vanilla, often symmetrical using unusual mechanics for balance) and many people seem to like playing in them.

Posted: Sat Oct 29, 2016 7:05 pm
by mhsmith0
not sure if I'd be /in to play, but am def /in to mod

Posted: Sat Oct 29, 2016 11:00 pm
by Yume
I wanna play

Posted: Sat Oct 29, 2016 11:21 pm
by Infinity 324
I'd also like to play

Posted: Sun Oct 30, 2016 5:01 am
by Aeronaut
i'd play

Posted: Sun Oct 30, 2016 5:20 pm
by Realeo
In post 0, mith wrote:Because the algorithm generally looks for an overall maximum happiness, it generally spits out one large game full of "popular" players with a really high score, while the "last" game or two have few matches and are formed as leftover games to include as many as possible. Providing significant bonuses to a player's first or second match may reduce this behavior somewhat.
Have a maximum standard deviation? If the standard deviation of happiness is over a limit, it's off the table?

Posted: Sun Nov 06, 2016 2:59 pm
by mastina
This is definitely a thing I enjoy more as a player.

Posted: Sun Nov 06, 2016 6:06 pm
by hiplop
in probably

Posted: Mon Nov 07, 2016 3:51 pm
by Ircher
would I meet requirements to mod?

Posted: Mon Nov 07, 2016 4:28 pm
by callforjudgement
In terms of the algorithm:

Perhaps it'd make sense to do the /in-vitational queueing in two stages, one with nonspecific signups (as player or as mod, that's it), and after that, to post the whole list and ask people to (probably secretly) rate how much they'd like to play with each player (I'd suggest a +2, +1, +0, -∞ system). That's likely to resolve the issues of players not giving enough "I'd like to play with player X" preferences. (I don't think I could list many players who I'd particularly like to play with, but on the other hand, given a list of players, I'd almost certainly give many of them positive ratings.)

Posted: Mon Nov 07, 2016 4:55 pm
by Kmd4390
Of course this comes up right when I stop playing. You guys are gonna force me back too soon lol

Posted: Mon Nov 07, 2016 7:19 pm
by Realeo
In post 13, callforjudgement wrote:In terms of the algorithm:

Perhaps it'd make sense to do the /in-vitational queueing in two stages, one with nonspecific signups (as player or as mod, that's it), and after that, to post the whole list and ask people to (probably secretly) rate how much they'd like to play with each player (I'd suggest a +2, +1, +0, -∞ system). That's likely to resolve the issues of players not giving enough "I'd like to play with player X" preferences. (I don't think I could list many players who I'd particularly like to play with, but on the other hand, given a list of players, I'd almost certainly give many of them positive ratings.)
This algorithm is superior in terms of data handling and computation. I endorse this solution.

Posted: Mon Nov 07, 2016 8:20 pm
by Realeo
And it look nice on Google Form. No more data nightmare.

Image

Posted: Tue Nov 08, 2016 5:45 am
by mith
In post 13, callforjudgement wrote:In terms of the algorithm:

Perhaps it'd make sense to do the /in-vitational queueing in two stages, one with nonspecific signups (as player or as mod, that's it), and after that, to post the whole list and ask people to (probably secretly) rate how much they'd like to play with each player (I'd suggest a +2, +1, +0, -∞ system). That's likely to resolve the issues of players not giving enough "I'd like to play with player X" preferences. (I don't think I could list many players who I'd particularly like to play with, but on the other hand, given a list of players, I'd almost certainly give many of them positive ratings.)
All the previous /in-vitationals have been done in two stages; we don't take preferences until signups are complete.

Posted: Tue Nov 08, 2016 8:59 am
by Cephrir
is there a way to be reminded when this is in signups i have every intention of making bad choices

Posted: Sun Nov 13, 2016 2:09 pm
by hiplop
^

Posted: Tue Nov 15, 2016 11:34 am
by ZZZX
interesting enough i'd say.

Posted: Sun Nov 27, 2016 2:31 am
by Fishythefish
In post 0, mith wrote: Issues that have popped up in previous iterations:
  1. Because the algorithm generally looks for an overall maximum happiness, it generally spits out one large game full of "popular" players with a really high score, while the "last" game or two have few matches and are formed as leftover games to include as many as possible. Providing significant bonuses to a player's first or second match may reduce this behavior somewhat.
  2. The low-score individual games are also sometimes due to players not submitting enough likes; I'm not sure there is any way around this, other than emphasizing that the point of this system is to match players who want to play together, whereas if you don't care about that part you can just join any old game in the queue.
  3. Replacements are a big problem - we usually can't use unmatched players, because of "don't" preferences. One possible solution is to allow players to join a second game as a replacement, if needed, and give a list of all potential allowed replacements for each game.
You could get round large, "popular" games by dividing the score for each game by the possible number of likes (ie the number of players in the game squared).

I thought last time that it might also be sensible to put more weight on each player being happy; one player with 4 likes and one with 0 in a game is not as good as both having 2. One simple way to do that would be to square root the number of likes for each player.

Posted: Mon Dec 05, 2016 1:30 am
by LicketyQuickety
I might want to /in as a player if I see enough people I have played with join. The problem is, I have not played with a ton of people from this site; a lot of the vets I have played very little with and it seems this type of thing is geared toward those players. On the plus side, if I "/in" and I am not assigned to play in any of the games, I know that people don't like me here. This might look pessimistic, but it is info to work with.

Posted: Sun Dec 18, 2016 11:52 am
by Davsto
/in

Maybe something like this will help get me back into mafia

Posted: Mon Dec 19, 2016 1:05 am
by Skybird
/in

This looks fun.