No description
- build.gradle: Gradle toolchain languageVersion 26 (auto-detects /usr/lib/jvm, no JAVA_HOME export needed), .java-version file for IDEs - gradle wrapper 9.3.1 -> 9.7.0, spotless 6.25->8.10.0, spotbugs 4.9.3->4.10.3 - Dockerfile: eclipse-temurin 26-jdk/jre-alpine + -Xmx512m G1GC StringDedup - docker-compose: bot mem_limit 1g - CI workflows: setup-java 26 - deps: jda 6.5.0, lavaplayer 2.2.7, logback 1.6.3, slf4j 2.0.18 (stable), caffeine 3.2.4, sqlite 3.53.2.1, hikaricp 7.1.0, okhttp 5.5.0, junit 5.13.4 + launcher 1.13.4, mockito 5.23.0, bytebuddy 1.18.12, checkstyle 13.10.0 (toolVersion), spotbugs plugin 6.4.8, jsoup 1.22.2 - 458 tests green, build green without JAVA_HOME export |
||
|---|---|---|
| .github/workflows | ||
| .settings | ||
| config | ||
| data | ||
| gradle | ||
| lavalink | ||
| ref | ||
| scripts | ||
| src | ||
| .classpath | ||
| .dockerignore | ||
| .editorconfig | ||
| .env.example | ||
| .gitignore | ||
| .java-version | ||
| .project | ||
| build.gradle | ||
| deploy.sh | ||
| docker-compose.yml | ||
| Dockerfile | ||
| FEATURES.md | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| README.md | ||
| settings.gradle | ||
| TODO.md | ||
🤖 Loki Discord Bot
Многофункциональный Discord бот с системой уровней, личными голосовыми каналами и модерацией.
⚡ Быстрый старт
# Запуск
gradle run
# Настройка через Discord (префикс по умолчанию «!»)
!voice-setup trigger #создать-канал
!counter-setup channel #счетчик
!log-setup moderation #логи
🔧 Административные команды
Сброс уровней (одноразовая команда)
!resetlevels
Описание: Сбрасывает уровни и XP всех пользователей на сервере. Сохраняет время в войсе и количество сообщений.
Требования:
- Права администратора
- Команда работает только один раз
- Требует подтверждения через кнопки
Что сбрасывается:
- Уровень → 0
- XP → 0
Что сохраняется:
- Время в голосовых каналах
- Количество сообщений
- Репутация
Генерация рейтингов (супер-админ)
!generateratings
Описание: Генерирует все rating значения (ship, gay, iq, pp, mustache, fat, boykisser) для всех участников сервера.
Требования:
- Только для супер-админа (ID:
1414975197269987471) - Не перезаписывает существующие значения
- Сохраняет в SQLite базу данных
Генерируемые рейтинги:
- Ship (0-100%)
- Gay (0-100%)
- IQ (0-200)
- PP (0-30 см)
- Mustache (0-100, редко 1000-1500)
- Fat (0-100%)
- Boykisser (0-100%)
Особенности:
- Хранится в таблице
ratingsв SQLite - Пропускает ботов
- Показывает статистику генерации
📚 Документация
- FEATURES.md - Полный список функций
- TODO.md - План развития
🎯 Основные функции
- 🎯 Система уровней (200 XP × уровень)
- 🎤 Личные голосовые каналы
- 📊 Счетчик участников
- 📝 Логи модерации
- 🎮 Развлекательные команды
- 🛡️ Модерация
- 🎨 Кастомные роли
🛠️ Технологии
- Java 21
- JDA 5.0.0
- SQLite
- Google Guice
📦 Требования
- Java 21+
- Gradle 8.x
❤️ Health (HTTP)
В .env можно задать HEALTH_HTTP_PORT (0–65535, 0 = не поднимать сервер). После готовности JDA слушает GET /health и отдаёт JSON (uptime, счётчики команд, версия из манифеста или dev).
Версия: 2.0 | Лицензия: MIT