AdminWarn (предупреждения игрокам)
AdminWarn
Полноэкранная GUI-система предупреждений для админов — отправляете предупреждение любому игроку, онлайн или офлайн, и оно показывается как попап, который нельзя пропустить, с обязательной кнопкой подтверждения. Каждое предупреждение автоматически переводится на язык клиента игрока — админ пишет один раз, каждый игрок читает на своём языке.
Возможности
/warn <игрок> <сообщение>— полноэкранный GUI-попап, а не просто строка в чате, которую легко проскроллить и не заметить. Работает и для офлайн-игроков: предупреждение покажется автоматически при следующем заходе.- Автоперевод на язык клиента игрока (английский, русский, немецкий, испанский, французский, венгерский, итальянский, польский, украинский) через Azure Translator или Google Translate — пишете предупреждение один раз, каждый игрок читает на своём языке.
- Безопасная доставка в бою — если игрок в момент предупреждения дерётся, попап откладывается и показывается сразу после боя, не прерывая файт.
/warnall— рассылает одно предупреждение всем игрокам, онлайн и офлайн, одной командой.- Защита от дублей — одинаковая связка админ/игрок/сообщение в течение 5 секунд не отправится дважды.
- Лог подтверждений в Discord через webhook.
- Автоочистка старых предупреждений при вайпе (настраивается).
- Дублирующие консольные команды (
warn/warnall/warnclearall) для RCON и серверной консоли.

Команды и права
| Команда | Что делает |
|---|---|
/warn <имя или steamid> <сообщение> |
Отправляет предупреждение конкретному игроку (онлайн или офлайн) |
/warnall <сообщение> |
Отправляет предупреждение всем игрокам, онлайн и офлайн |
/warnclearall |
Очищает все сохранённые/непрочитанные предупреждения |
Право: adminwarn.admin — требуется для всех трёх команд (и чатовых, и консольных версий).
Настройка
Автоперевод опционален и по умолчанию выключен ("Auto-translate warnings": false) — если он выключен, каждый игрок просто видит текст ровно так, как его написал админ, никакой API-ключ вообще не нужен.
Чтобы включить автоперевод, выставьте "Auto-translate warnings" в true и "Translation Provider" в "Azure" или "Google", затем впишите соответствующий ключ:
- Azure: создайте ресурс «Translator» в Azure Portal (есть бесплатный тариф), скопируйте его Key в
"Azure Translator Key", а Region в"Azure Translator Region"("Azure Translator Endpoint"оставьте по умолчанию). - Google: включите «Cloud Translation API» в Google Cloud Console, создайте API-ключ, вставьте его в
"Google Translate API Key".
Остальные опции: "Combat Delay Enabled" / "Combat Timeout (seconds)" — задержка при бое, "Discord Webhook URL" + "Discord Log Enabled" — лог подтверждений, "Translation Cache Time (hours)" — сколько хранить кэш переводов (по умолчанию 168ч / 7 дней), "Clear data on wipe" — автоочистка старых предупреждений на новой карте.
Требования
Фреймворк Oxide или Carbon. Автоперевод опционален — плагин полностью работает и без него, ресурс Azure Translator или ключ Google Cloud Translate нужен только если хотите включить эту функцию.