You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I was previously using TrueSkill to rate player performance for a FFA boardgame. It's typically played with 6 players and the end game has a single winner. The rest of the players can't accurately be ranked in order, so I am marking them as ties between "close to winning" and everyone else (e.g. ranks of 1, 2, 2, 2, 3, 3).
I decided to give OpenSkill a shot and am finding that sigma is decreasing much slower. With TrueSkill, after 40 or so games I'd see sigmas of ~1, from a start of 8.3334. With OpenSkill, 40 games are getting people down to ~7.
As an aside, there's also a much wider range of μs, despite providing the same starting values as I did to TrueSkill. With TrueSkill, the highest ratings I saw were in the lows 30s, from a start of 25. With OpenSkill, some players have rocketed up to 50+. That may just be apples to oranges comparison there, so I'm not too worried, as it's generally the same players at those ranks, but it was curious because I expected the two to be pretty analogous down to the final ratings.
All my settings are default, using PlackettLuce, with a starting sigma of 25/3 and μ of 25.
BradleyTerryFull on the other hand gives me a very different leaderboard than TrueSkill did, and I don't find it to be accurate.
There is no way to supply your own function.
It could be as simple as exposing a delegate for users to modify the gamma, or exposing a double parameter which is simply multiplied with the gamma to speed up sigma changes.
delta *= gamma * newGammaFactorParam
I found that newGammaFactorParam works well when it's [15.0, 35.0] depending on how fast you want sigma to go down.
Activity
Kermalis commentedon Apr 18, 2026
(Late reply) but other implementations of OpenSkill allow the user to supply a custom gamma function for this purpose.
In this library, Gamma is calculated here: https://github.com/pocketcombats/openskill-java/blob/master/src/main/java/com/pocketcombats/openskill/model/PlackettLuce.java#L61
There is no way to supply your own function.
It could be as simple as exposing a delegate for users to modify the gamma, or exposing a double parameter which is simply multiplied with the gamma to speed up sigma changes.
delta *= gamma * newGammaFactorParamI found that
newGammaFactorParamworks well when it's [15.0, 35.0] depending on how fast you want sigma to go down.