В качестве кривой для расчета рейтинга была взята кривая логарифмического распределения с основанием 10 чтоб про прошествии определенного времени в системе небыло многотысячных рейтингов и огромного влияния старых пользователей по сравнению с новыми.
В новой системе рейтинга отсутвуют минимальные значения влияния на силу и пользователь с 0 силой не может повлиять на силу других пользователей и голосовать за топики, что на мой взгляд кажется логичным. В связи с этим при регистрации всем пользователям присваивается определенная сила, в моем случае равная 1. Рейтинг нового пользователя равен 0 т.к. новый пользователь не может иметь авторитета в сообществе.
Основные формулы для расчета силы и рейтинга:
$iDeltaSkill=log($skill/3.85+1,10);
$iDeltaRating=log($rating+1,10)+log(log($skill/1.2+1,10)+1,10);
Коэффициенты подобраны из соображений, что на начальном этапе пользователь может передать десятую часть своей силы и рейтинга другому пользователю.
В зависимости от силы пользователя, влияние на силу другого пользователя выглядит следующим образом:
Как видно из формулы расчета рейтинга, повлиять на рейтинг другого пользователя можно как своим рейтингом (авторитетом), так и при помощи силы. Когда заканчиваются слова в ход идут кулаки :)
График влияния на рейтинг пользователя в зависимости от силы или рейтинга другого пользователя:
При голосовании за топик и комментарий используются те же формулы, но влияние при голосовании за топик в 4 раза меньше чем за пользователя, а за комментарий - в 40 раз.
Кол-во голосов за топик считается по следующей формуле:
$iDeltaRating=round($iValue*log($skill*3+1,10)+0,12);
возможность плюсануть топоки появляется при силе около 0.5, при силе 10 пользователь отдает уже 2 голоса за топик и при силе около 100 - 3 голоса.
Для установки начальной силы необходимо изменить значение по-умолчанию на 1 в таблице prefix_user, поле user_skill. Для более точного расчеты силы и рейтинга в таблице prefix_user поля user_skill и user_karma удалить значение разрядности 9,3
Модуль рейтинга с описаными формулами можно скачать здесь.
--
Созданием сайтов и продвижением сайтов априори должны заниматься профессионалы.
Оставить комментарий