8.2.2019

Blog autorów: Cofanie zmian w punktach MMR

Wraz z rozpoczęciem Sezonu 1 R4 wprowadzamy do gry funkcjonalność cofania zmian w punktach MMR (Match Making and Rating). Dzięki tej funkcji w chwili, gdy oszust zostanie zbanowany, wszyscy gracze, którzy brali udział w meczach z jego udziałem zyskają (lub stracą) punkty MMR przyznane im lub odjęte za te mecze. System nie będzie jednak przyznawał MMR wyższego niż maksymalne, jakie udało się graczowi zdobyć w obecnym sezonie.

Celem funkcji cofania zmian w punktach MMR jest zmniejszenie długofalowego wpływu oszustów na twoją pozycję w rankingu w danym sezonie. Funkcja ta stanowi dodatkowe narzędzie w naszym stale poszerzającym się arsenale środków do walki z oszustami.

W ramach przygotowań do premiery, system cofania zmian w punktach MMR działał dyskretnie w tle przez poprzedni sezon, dzięki czemu zbieraliśmy dane, za pomocą których mogliśmy zidentyfikować potencjalne problemy, sprawdzić przypadki ekstremalne i prawidłowo rozstrzygnąć sytuacje sporne. W nowym środowisku cofania zmian w punktach MMR przetestowaliśmy rozmaite podejścia i parametry, ale planujemy dalej rozwijać ten proces dzięki uwagom od naszej społeczności.

Wpływ na boostowanych graczy

Na tym wykresie widzimy najwyższe liczby punktów MMR usunięte z konta pojedynczego gracza w 30-minutowych odstępach przez 24 godziny.

Wprowadzamy ten system również dlatego, aby zwalczyć usługi boostowania, w których używa się oszustw w celu zwiększenia poziomu konta. Na powyższym wykresie ekstrema to boostowani gracze, których MMR był cofany z poziomu platynowego/diamentowego do znacznie niższej rangi. Największe z ekstremów (na przykład -5600 MMR) to gracze, którzy wielokrotnie grali z oszustami przez dłuższy czas, a następnie stracili nieuczciwie zdobyte punkty MMR.

Warunki zmiany punktów MMR

W swojej aktualnej formie system skasuje wpływ wszystkich gier na MMR (tak zwycięstw, jak i porażek), w których brał udział oszust. Sprawdzaliśmy również kilka innych podejść, ale na podstawie przeanalizowanych danych cofnięcie wpływu wszystkich gier pomaga w utrzymaniu stabilnego środowiska MMR, jednocześnie zmniejszając wpływ oszustów na wyniki gier.

W przypadkach testowych cofaliśmy zmiany w punktach MMR wyłącznie zwycięskiej drużynie oszusta (braliśmy pod uwagę tylko zwycięstwa, porażki nie zmieniały punktów MMR). Odkryliśmy wówczas, że takie podejście poważnie zakłóca równowagę MMR, ponieważ stracone przez tę drużynę punkty MMR znikały, ale zwycięstwa nie podnosiły jej poziomu punktów MMR. W wyniku tego przyrost punktów MMR graczy, którzy grali z oszustem (z własnej woli lub nieświadomie) znacząco spadał, zwłaszcza w niższych rangach miedzianych. Takie jednostronne usuwanie wyników meczów okazało się dalekie od idealnego, a my doszliśmy do wniosku, że cofanie zmian punktów MMR ze wszystkich meczów (zarówno wygranych, jak i przegranych), w których potwierdziliśmy udział oszusta, to znacznie efektywniejsze rozwiązanie. Z punktu widzenia danych możecie to zaobserwować poniżej .

Na tym wykresie widzimy największe liczby punktów MMR przyznanych pojedynczemu graczowi w 30-minutowych odstępach przez okres 24 godzin. To wskazuje, że wahnięcia MMR są znacznie mniej istotne, niż początkowo przewidywaliśmy.

Czas cofnięcia zmian w punktach MMR

Ze względu na sposób działania naszego procesu wykrywania oszustów oraz następujące po nim banowanie nie potrafimy zidentyfikować, w których konkretnie meczach dana osoba używała oszustw (na przykład kiedy gracz włączał, a kiedy wyłączał oszustwa, zanim został przyłapany). Mając ten fakt na uwadze przetestowaliśmy możliwość ograniczonych zmian w punktach MMR na podstawie czynnika czasu i sprawdziliśmy resetowanie zmian w MMR za ostatnie 7 dni oraz za cały sezon. Wyniki były jednak zbyt przypadkowe i na ich podstawie nie dało się określić, czy udało się nam całkowicie zniwelować wpływ oszusta. Aby mieć pewność, że nasz system maksymalizuje usunięcie wpływu oszusta na innych graczy, wprowadzamy rozwiązanie resetowania zmian w MMR ze wszystkich meczów z oszustem, w których dany gracz brał udział na przestrzeni całego sezonu.

Chcemy rozwijać tę funkcję, ale potrzebujemy w tym celu spostrzeżeń ze strony naszej społeczności. Dzielcie się nimi z nami na forach oraz oficjalnym subreddicie.