Плагин для серверов Майнкрафт с экономикой: он хранит балансы игроков и синхронизирует их между серверами сети. Подходит для серверов с Vault или VaultUnlocked, где нужны общая валюта, переводы, топ богатых игроков и защита экономики от подозрительных операций.
Возможности
- Показывает баланс, позволяет переводить деньги другим игрокам и открывает общий рейтинг по количеству валюты.
- Синхронизирует экономику между узлами сети через Redis; для постоянного хранения может использовать MySQL, MariaDB или PostgreSQL.
- Поддерживает отдельный сервер с локальной SQLite-базой, сеть с Redis и SQL-базой, а также режим, в котором основной экономикой управляет CMI.
- Проверяет крупные и подозрительные операции: ограничивает частые действия, может приостановить работу экономики при аномалиях и заморозить отдельный аккаунт.
- Ведёт журнал транзакций с поиском, статистикой и очисткой старых записей; умеет создавать фоновые копии состояния счетов во вторичной базе.
- Встраиваемая веб-панель показывает состояние Redis, кэша и базы данных, настройки, аудит и данные экономики.
- Есть расширение для PlaceholderAPI. Например, доступны плейсхолдеры
%syncmoney_balance%,%syncmoney_balance_formatted%,%syncmoney_rank%,%syncmoney_top_<n>%,%syncmoney_total_supply%и%syncmoney_online_players%.
Команды
Игрокам доступны:
/money— посмотреть свой баланс./money <player>— посмотреть баланс другого игрока./pay <player> <amount>— перевести деньги./pay confirm— подтвердить крупный перевод./baltop [page]— открыть рейтинг балансов./baltop me— узнать своё место в рейтинге.
Для администрации:
/syncmoney admin give <player> <amount>,/syncmoney admin take <player> <amount>,/syncmoney admin set <player> <amount>и/syncmoney admin reset <player>— изменить баланс./syncmoney admin view <player>— посмотреть подробные сведения о счёте./syncmoney breaker status,/syncmoney breaker reset,/syncmoney breaker unlock <player>— управлять защитой экономики и разблокировать игрока./syncmoney audit <player> [page],/syncmoney audit search <args>,/syncmoney audit stats— работать с журналом операций./syncmoney monitor [redis|cache|db]и/syncmoney econstats [supply|players]— проверить состояние компонентов и статистику валюты./syncmoney sync-balance <player>— принудительно отправить баланс в Redis и SQL-базу./syncmoney shadow [status|now|logs],/syncmoney web [status|open|reload],/syncmoney migrate <cmi|local-to-sync>— управлять фоновыми копиями, веб-панелью и переносом экономики./syncmoney reload [config|messages]— перезагрузить разрешённые части конфигурации.
Права
syncmoney.money— свой баланс и рейтинг.syncmoney.money.others— просмотр чужого баланса.syncmoney.pay— переводы.syncmoney.admin.give,syncmoney.admin.take,syncmoney.admin.set— выдача, списание и установка баланса.syncmoney.admin.audit— доступ к журналу операций.syncmoney.admin.monitor— мониторинг Redis, кэша и базы.syncmoney.admin.econstats— статистика экономики.syncmoney.admin.reload— перезагрузка настроек.syncmoney.admin.test— тестирование нагрузки.syncmoney.admin— административные проверки, защита, синхронизация, веб-панель и миграция.
В admin-permissions настраиваются уровни syncmoney.admin.observe, syncmoney.admin.reward, syncmoney.admin.general и syncmoney.admin.full с разными дневными лимитами на выдачу и списание валюты.
Настройка
Основной файл — plugins/Syncmoney/config.yml. Каждому серверу сети нужен уникальный server-name.
Режим задаётся ключом economy.mode:
local— локальная SQLite-экономика для одного сервера.local_redis— общая экономика через Redis без SQL-базы.sync— Redis Pub/Sub и общая SQL-база для сети серверов.cmi— CMI остаётся основной экономикой, а изменения передаются через Redis.auto— автоматический выбор по найденному окружению.
В режиме sync все узлы используют одну изолированную Redis-базу и одну SQL-схему, но разные значения server-name. Для этого режима нужны включённые redis, database, db-enabled и pubsub-enabled.
Отдельно включаются circuit-breaker.enabled, circuit-breaker.player-protection.enabled, transfer-guard.enabled, audit.enabled, shadow-sync.enabled и web-admin.enabled. Команда /syncmoney reload обновляет сообщения и безопасные параметры работы, но изменение режима экономики, подключений Redis и базы данных, переключателей модулей, планировщиков или адреса веб-панели требует перезапуска сервера.
Для веб-панели укажите web-admin.server.host, web-admin.server.port и замените web-admin.security.api-key на длинный случайный ключ. Панель рекомендуется привязать к 127.0.0.1, а внешний доступ настроить через Nginx или Caddy с HTTPS.
Требования
Нужен Paper, Folia или Canvas; обычный Spigot не поддерживается. Для экономики требуется Vault либо VaultUnlocked — одновременно загружать оба моста с одним именем нельзя.
Redis необходим для режимов sync, local_redis и cmi. Для общей SQL-экономики поддерживаются MySQL, MariaDB и PostgreSQL, а SQLite используется для локального режима и фоновых копий. PlaceholderAPI и CMI подключаются при необходимости.
