ASTERION Monitor β — Патч 1.5.5b
Что обновлено в ревизии 18.09.2026
Asterion Monitor получил масштабное обновление телеметрии: полный переход на асинхронный двухслойный рендерер карточек ранга LevelUP 2.0, раздельные пулы опыта для текста и войсов, алгоритм защиты от AFK/Mute и прямую синергию с Happy Hours.
- Dual-Layer Compositor 2.0: отрисовка карточки
/profileи/rankразделена на два прохода: статический холст с эффектом матового стекла и векторный слой телеметрии. За счёт LRU-кэширования аватаров (TTL 3600s) рендеринг занимает менее 65мс с отдачей легковесного WebP/PNG. - Isolated XP Engine: текстовые сообщения приносят
15–25 XPс кулдауном 60 сек на пользователя; голосовой онлайн рассчитывается независимо (10 XP/мин) и начисляется только при наличии минимум 2 активных участников в канале без серверного или локального заглушения. - Honor & Happy Hours: динамическая синхронизация с глобальными окнами удвоенного опыта (
2.0×). Активируется автоматически при проведении клановых ивентов или после побед в ConCord Raids без перезагрузки процесса бота. - Tier Hierarchy: автоматическое присвоение статусов Onyx, Nemesis и Diamond при достижении 10, 25 и 50 уровней с кастомными рамками и постоянными множителями опыта.
- SQLite WAL Protection: полная миграция на асинхронный журнал упреждающей записи (Write-Ahead Logging), исключающий блокировки базы данных и десинхронизацию таблицы лидеров при пиковом онлайне (500+ msg/мин).
Команды участников (Monitor Core)
Доступны всем участникам сервера для проверки ранга, прогресса и просмотра лидербордов:
| Команда | Параметры | Доступ | Описание |
|---|---|---|---|
/profile |
user:@Игрок |
Public | Показывает двухслойную карточку LevelUP 2.0, ранг, прогресс-бар XP и позицию в топе |
/leaderboard |
type:xp|voice|fury |
Public | Глобальный и серверный топ участников по очкам опыта, голосовому онлайну или FuRY |
/stats |
period:day|week|all |
Public | Общая телеметрия активности сервера: новые участники, суточный объем XP и пиковые часы |
/monitorhelp |
— | Public | Интерактивная справка по возможностям бота, формуле расчёта XP и ролевым наградам |
/voice_status |
— | Public | Проверка текущей сессии: активен ли таймер XP, множитель канала и валидность войса |
/level_card |
skin:classic|neon|dark |
Public | Выбор визуального скина карточки ранга (для обладателей рангов Nemesis и Diamond) |
/rewards |
— | Public | Список всех ролевых наград и монетных бонусов, разблокируемых по мере роста уровня |
Технология LevelUP 2.0 — Двухслойный рендерер
Собственный графический конвейер ASTERION для сверхбыстрой генерации карточек ранга без блокировки асинхронного event loop:
Layer 0: Dynamic Canvas
ENGINEПодложка с эффектом матового стекла (glassmorphism), градиентным размытием аватара участника и наложением фирменного неонового контура партнёрского сервера.
Layer 1: Vector Telemetry
60 FPSМатематически точный расчёт прогресс-бара, позиционирование шрифта JetBrains Mono, значки рангов Onyx/Nemesis/Diamond и клановый тег FuRY.
LRU Avatar Cache
TTL 1HЛокальный кольцевой буфер аватаров Discord с временем жизни 3600 секунд. Исключает повторные внешние HTTP-запросы и снижает время ответа до 40–60мс.
WebP Lossless Stream
OPTIMIZEDСжатие готовой картинки в поток WebP в памяти без сохранения временных файлов на диск. Минимальный вес payload при идеальной чёткости типографики.
Интерактивная карточка прогресса
Наглядная визуализация ранговой шкалы и анимации начисления опыта. Поддерживает динамическое переключение тем оформления и интеграцию с серверными множителями.
Административные команды (AST Monitor Admin)
Управление балансом опыта, настройка каналов и аудит прогрессии:
| Команда | Аргументы | Доступ | Назначение |
|---|---|---|---|
/xp |
user:@... amount:... reason:"..." |
AST Admin | Ручное начисление или списание очков XP у участника с записью причины в лог |
/setlevel |
user:@... level:... |
AST Admin | Принудительная установка уровня пользователя с перерасчётом ролевых прав |
/award_event |
user:@... xp:400 fury:50 |
Event Staff | Интеграционное начисление очков опыта и валюты FuRY за победу в турнире |
/mass_award |
users:"@A @B" xp:250 |
AST Admin | Массовое начисление XP списку участников (до 50 человек за одну транзакцию) |
/set_channel_multiplier |
channel:#voice mult:1.5 |
AST Admin | Установить локальный множитель опыта для голосового или текстового канала |
/set_role_multiplier |
role:@VIP mult:1.25 |
AST Admin | Назначить персональный буст опыта для обладателей заданной роли (Discord Nitro, etc.) |
/list_multipliers |
— | AST Admin | Вывести список всех активных множителей по ролям, каналам и категориям |
/remove_multiplier |
target:@VIP|#channel |
AST Admin | Удалить заданный множитель и вернуть базовое начисление 1.0× |
/blacklist |
action:add|remove channel:#... |
AST Admin | Исключить канал из телеметрии (опыт за сообщения и войс в нём не начисляется) |
/sync_roles |
— | AST Admin | Полная синхронизация ролевых наград за уровни для всей базы участников сервера |
/reset |
user:@... confirm:true |
AST Admin | Полный сброс прогресса участника (обнуление XP, уровня и снятие ранговых ролей) |
/user_stats |
user:@... |
AST Admin | Глубокая диагностика пользователя: распределение XP по дням, время в войсе, логи |
/admin_logs |
limit:20 |
AST Admin | Журнал последних административных действий, изменений множителей и сбросов |
/guildinfo |
— | AST Admin | Сводка по серверу: состояние SQLite WAL базы, число отслеживаемых каналов и кэш |
Система XP — Формулы и механика
Расчёт прогрессии и начисления очков в движке Monitor LevelUP 2.0 подчиняется строгой математической модели:
-
Формула требуемого опыта для уровня:
XP_REQUIRED(L) = 5 × (L ˆ 2) + 50 × L + 100Кумулятивная кривая: 1-й уровень требует 155 XP, 10-й — 1 100 XP, 50-й — 15 100 XP.
-
Текстовая активность (Chat XP):
XP_msg = rand(15, 25) × channel_mult × role_mult × happy_hour_multКулдаун: 1 начисление в 60 секунд. Фильтр спама отсекает повторяющиеся фразы и сообщения короче 3 символов.
-
Голосовая активность (Voice XP):
XP_vc = (10 × active_vc_minutes) × channel_mult × role_mult × happy_hour_multУсловия: минимум 2 участника в голосовом канале без мута/дефа, вне категории AFK.
Ранговые ступени (Monitor Rank Tiers)
Шкала званий с уникальными эмблемами, множителями и ролевыми привилегиями:
Уровень 10+
Onyx Rank
Базовая ступень признания в сообществе. Открывает доступ к клубным комнатам, кастомным эмблемам в профиле и еженедельным монетным бонусам.
- Эмблема Onyx в карточке /profile
- Постоянный множитель 1.10×
- Роль @Onyx Member на сервере
- Бонус +100 FuRYCoin при получении
Уровень 25+
Nemesis Rank
Продвинутый статус опытного участника. Разблокирует эксклюзивную фиолетовую рамку профиля, право на создание приватных комнат и скидку 15% в магазине.
- Фиолетовая неоновая рамка профиля
- Повышенный множитель 1.25×
- Создание закрытых голосовых лобби
- Скидка 15% на покупки в /shop
Уровень 50+
Diamond Rank
Высший статус легенды сообщества. Максимальный постоянный буст 1.50×, алмазная анимация карточки, персональный цвет роли и прямой доступ в закрытый совет.
- Алмазный анимированный фрейм LevelUP
- Максимальный множитель 1.50×
- Персональный цвет никнейма на сервере
- Приоритетный слот в Asterion Events
Сводная таблица прогрессии рангов
| Уровень | Ранг | Суммарный XP | Множитель | Роль Discord | Особенности статуса |
|---|---|---|---|---|---|
| 1–9 | Новичок | 0 – 5 999 | 1.00× |
— | Стартовый доступ к чатам и голосовым комнатам |
| 10–24 |
Onyx
|
6 000 | 1.10× |
@Onyx Member | Базовая эмблема ранга, доступ в #onyx-lounge |
| 25–49 |
Nemesis
|
34 375 | 1.25× |
@Nemesis Elite | Фиолетовая рамка, создание лобби, скидка 15% в /shop |
| 50+ |
Diamond
|
137 500 | 1.50× |
@Diamond Legend | Анимированный скин профиля, персональный цвет никнейма |
Правила каналов и каскадные множители
Приоритеты наложения коэффициентов в движке ASTERION:
/blacklist add) начисление строго равно 0× независимо от ролей.
Как настроить систему уровней на сервере
-
Инициализация и привязка каналов: Задайте выделенный анонс-канал для уведомлений о повышении уровней с помощью
/bot_settings key:levelup_channel. -
Черный список спам-комнат: Исключите каналы ботов, музыки и оффтопа через
/blacklist action:add channel:#bot-commands, чтобы предотвратить фарм сообщений. -
Назначение ролевых наград: Свяжите ранги 10, 25 и 50 с соответствующими ролями сервера и запустите синхронизацию через
/sync_roles. -
Калибровка множителей бустеров: Установите поощрительный множитель для премиум-участников:
/set_role_multiplier role:@ServerBooster mult:1.20. -
Аудит и контроль: Регулярно проверяйте нагрузку и корректность начислений через
/guildinfoи/admin_logs.