Friday, April 24, 2020

Multiplayer Competitive Matchmaking!

After a lot of hard work, and great support and feedback from the community of Cribbage Pro players during "beta testing", we are excited to announce the full release of Online Multiplayer Competitive Matchmaking in Cribbage Pro!


The game of cribbage has often faced challenges in calculating player skill levels in both real world physical games and online digital versions. Accurately ranking players by their skill is a challenge in any game that involves a degree of chance/luck. We have tried many different ways of doing this in the past, and through that experience we have learned a lot. With that history as a teacher, and algorithms now available that have improved dramatically since we started, we are happy to announce our new Competitive Rank - CR (or "Cribbage Rank" if you prefer) ranking system.

Here are the new basic elements of Competitive Matchmaking:

  • Best-Of-3
  • Automatic Counting
  • 10 Sec. Turn Limit
  • No Chat
  • Start Automatically
  • Disconnect/Quit is Always a Loss
  • Classic (non-competitive) XP Level of 5+ Required
  • 5 Placement Matches Required for Ranking

We chose these criteria to make competitive matchmaking the best it can be. First, it is a matchmaking system so that it avoids players selecting only newer players to try and easily win points against, while also providing fun and challenging games. We went with a "Best-of-3" series as a good way to remove some of the chance/luck from the game (alternating dealer as expected). There are also other things our algorithm does internally to help offset the chance/luck factor. Automatic Counting was chosen because, although counting and math is certainly a skill, the skill we want to measure here is playing cribbage. We have found that although new players may miss points from time to time, a skilled player will win against an unskilled player in a best of 3 series no matter if manual counting and muggins is enabled or not. The automatic counting option enables us to set a shorter time limit of 10 seconds, which makes a best of three games series more practical. The shorter time limit helps move the game along so that the entire match can still complete in a reasonable time frame. We removed the chat for the same reason - to keep it fast and competitive without unnecessary distractions.

This new Competitive Matchmaking is also a "Season" based system. We will be having "Competitive Seasons", just like you would see in a professional sports season. This means that on a regular basis (currently about 3 months; Quarterly), a new season will start and give everyone a chance to come in and participate on equal footing to see if they can take the title of the best player of the season! We are also planning on awarding a special prize to the top finishers of the season! The specifics of that prize will be shared at a later time and may be unique for each season. You must play games every week of the season (2 per week minimum), or you will see a reduction in your CR as a result. This happens because of an increase in our uncertainty of your actual skill if you don't keep playing regularly against other players. Stale players will not be able to sit at the top. Make certain you are regularly playing competitive matches to hold on to your CR.

When you complete your placement matches, you will be given a CR value, and a corresponding named CR Level. The levels are simply a breakdown of the CR value like this:

Bronze - 1 - 1499 CR
Silver - 1500 - 1999 CR
Gold - 2000 - 2499 CR
Platinum - 2500 - 2999 CR
Diamond - 3000 - 3499 CR
Master - 3500 - 3999 CR
Grand-master - 4000+ CR

The system that is used to calculate your CR, and to adjust it when you win or lose (and as part of the matchmaking itself), is similar to the "Elo Rating System" but a bit more complex like a derivative of that called the "Glicko Rating System" (to clarify, it is NOT just the Glicko system). We have taken the ideas of those systems, and others that are derived from them in modern games/sports, and created our own customized system for cribbage games. Instead of repeating what you can read in each of those links to those systems, just know that we have a system that is very much like them that includes a "confidence factor" (or sometimes called an "uncertainty factor") and a few other adjustments specific to what we felt was needed after running various simulations/tests of the system. We will almost certainly make further tweaks and adjustments to those things as we review how the system is working from time to time.

There are some questions that are common with a system like this, so I'll clarify a few of them here. First, you will see situations where someone's win percentage may be lower than you (and/or have fewer games played than you), and yet they are ranked higher. This is because a skill ranking system like this is significantly concerned with the skill of the opponent you are facing when determining how many points you win or lose from each match you play. Someone who has faced many highly skilled players, and won, will not have to play as many games to move up. Similarly, if they are relatively lower skilled and play higher skilled, they will lose very little when they lose games. This system can then account for people who play a lot of games, versus someone playing fewer total. As long as you are playing games every week, that is enough for the system to calculate your skill with a high enough degree of confidence (just don't miss too many days). You will also notice that in your stats there will not be any "skunk" related stats for competitive matchmaking games, as currently all "best of 3+" series style games have no concept of a skunk in them. You always win or lose by the same minimum games in a series based system like this, for instance a best-of-3 is always won by whoever wins 2 games, a best-of-5 by whoever wins 3, etc. You can never win a a best-of-3 series by more than 2 games, or less than 2 games, so as such there is no way to "skunk" someone in a series.

Lastly, a disconnect or forfeit in a competitive game, of any kind, will count as a full loss in every respect. There is no mercy here in competitive play. Consider this like a professional sports league, and there will be no exceptions beyond the rare case where we can accurately determine that there was a bug of some kind in our system that caused the disconnect/forfeit (which you must fully report to us for investigation). To be clear, this does NOT mean that you will avoid a loss if you try to show it was your internet connection failing - that will still be a loss as there would be too many ways to cheat the system otherwise. We will determine independently if it was our code itself that caused the problem, and only then will a loss be reversed if needed.

This new Competitive Rank system continues to extend our goal of making Cribbage Pro the best option for serious cribbage players. We hope you all enjoy this new mode of play as much as we have during our testing of it. You should find the matches to be against similarly skilled players, so that the matches are both challenging and fun! As always, if you have any questions or suggestions, please let us know through email to support@FullerSystems.com