Плагин RankUtils
автоматически обнуляет ранги (rank
и exp
) забаненных игроков в системе Ranks API.
Также в плагине есть команды для ручного сброса рангов и статистики игроков, а также отдельная команда для очистки рангов всех забаненных игроков.
Плагин поддерживает кэширование рангов перед баном и автоматическое восстановление после разбана, если время хранения кэша не истекло.
Теперь добавлена возможность сохранения топ-10 игроков перед выполнением сброса, если в конфигурации включена опция SaveTop10
.
✅ Автоматическое обнуление рангов при бане игрока
✅ Команды для очистки рангов и статистики игроков
✅ Гибкие настройки сброса данных
✅ Очистка рангов всех забаненных игроков
✅ Кэширование рангов перед баном и автоматическое восстановление после разбана
✅ Поддержка CRON-задач для автоматического сброса рангов по расписанию
✅ Сохранение топ-10 игроков в файл перед выполнением сброса
✅ Сброс опыта у игроков, которые не заходили на сервер определённое количество дней
- Скачайте
.zip
плагина и поместите его содержимое в папку/csgo/addons/counterstrikesharp/plugins/
- Убедитесь, что Ranks API установлен и работает
- Убедитесь, что IksAdmin API установлен и работает
- Перезапустите сервер
Плагин автоматически очищает ранги забаненных игроков.
Действует на все баны, независимо от причины.
💾 Кэширование перед удалением:
- При бане ранг игрока сохраняется в кэш (
rank_cache.json
). - Если игрок разбанен до истечения времени кэша, его ранг и статистика автоматически восстанавливаются.
⌛ Время хранения кэша настраивается в config.json
(параметр CacheSaveBanRank
).
Используйте команду:
css_lr_reset_ranks <all|exp|stats|play_time>
📌 Команда работает только в консоли сервера!
all
– полный сброс всех данных.exp
– сброс очков опыта (value
,rank
).stats
– сброс статистики (kills
,deaths
,shoots
,hits
,headshots
,assists
,round_win
,round_lose
).play_time
– сброс времени игры.
Пример использования:
css_lr_reset_ranks exp # Сбросит только очки опыта
css_lr_reset_ranks all # Полный сброс данных
Эта команда сбрасывает ранги (rank
и exp
) только у игроков, которые были забанены:
css_lr_clear_rank_if_banned
📌 Команда работает только в консоли сервера!
📌 Удаляет только ранги забаненных игроков, не затрагивая остальных.
Используйте команду:
css_lr_reset_old_exp <NUMBER>
📌 Команда работает только в консоли сервера!
📌 Удаляет опыт у игроков, которые не заходили на сервер в течение указанного количества дней.
Примеры:
css_lr_reset_old_exp 30 # Сбросит опыт у игроков, которые не заходили более 30 дней
css_lr_reset_old_exp 90 # Сбросит опыт у игроков, которые не заходили более 90 дней
Теперь можно настроить автоматический сброс рангов по расписанию с помощью CRON.
Файл конфигурации: config.json
"CronSettings": [
{
"CronExpression": "0 0 * * 0",
"Command": "css_lr_reset_ranks exp"
},
{
"CronExpression": "0 0 * * 0",
"Command": "css_lr_clear_rank_if_banned"
}
]
📌 Как работает CRON:
CRON | Расписание |
---|---|
* * * * * |
Каждую минуту |
*/5 * * * * |
Каждые 5 минут |
0 * * * * |
Каждый час |
0 0 * * * |
Раз в сутки (в полночь) |
0 0 * * 0 |
Раз в неделю (воскресенье в 00:00) |
0 0 1 * * |
Раз в месяц (1-го числа каждого месяца в 00:00) |
0 0 1 */3 * |
Раз в квартал (1-го числа каждые 3 месяца в 00:00) |
Если в конфигурации (config.json
) указано "SaveTop10": true
, перед выполнением CRON-задач или сбросом будет сохраняться топ-10 игроков по value
.
Файлы сохраняются с названием:
<command>_yyyy-MM-dd_HH-mm.json
Пример: reset_exp_2025-04-01_00-00.json
.
Для просмотра текущих настроек CRON используйте команду:
css_ru_cron_list
Выводит список CRON-задач с указанием:
- Команды, которая будет выполнена
- Расчётного времени следующего выполнения (например:
2025-04-01 00:00
)
- CounterStrikeSharp API (>=v305) [https://github.com/roflmuffin/CounterStrikeSharp]
- Ranks API [https://github.com/partiusfabaa/cs2-ranks]
- IksAdmin API [https://github.com/Iksix/Iks_Admin]