-
Notifications
You must be signed in to change notification settings - Fork 7
Level Difficulty System
Pathology has an automatic system to assign difficulties to levels based on user play time.
Name | Threshold | |
---|---|---|
β³ | Pending | - |
π₯ | Kindergarten | 0 |
βοΈ | Elementary | 45 |
π | Junior High | 120 |
π | Highschool | 360 |
π | Bachelors | 600 |
π | Masters | 1200 |
π¬ | PhD | 3000 |
𧬠| Professor | 6000 |
π | Grandmaster | 12000 |
π§ | Super Grandmaster | 30000 |
A level's difficulty estimate is calculated by dividing its total play time by its number of solves and multiplying the result by a factor. This factor is based under the assumption that veterans will play and solve levels sooner than beginners, so difficulty should be scaled higher for a lower solve count. It is calculated using the following formula:
The difficulty estimate is then compared against the above thresholds to find the difficulty category. To show an example, if a level has 5 solves and a total play time of 3600 seconds it would have a difficulty estimate of:
This results in the π Bachelors
difficulty category.
If less than 10 users have played a level, it will show β³ Pending
instead of a difficulty category.
While playing a level, requests are made every 15 seconds to track play time. If you complete a level and continue to play the same level, the extra play time is not included in the difficulty estimate calculation. However, this extra play time is still tracked in case a new record is set.
To account for inactivity: If you stop playing, play time stops being tracked.
To account for thinking periods: If you stop playing but start playing again within 3 minutes, it is counted as if you had played for the whole time while you were idle.
Note that the level author's play time is not included in the difficulty estimate. The only case where this is not true is if a new record is set, in which case the author's play time after publishing would be included in the difficulty estimate.