▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/MysticalVillager
MysticalVillager

MysticalVillager

MysticalVillager is a comprehensive villager management plugin for Paper servers. It tracks every cure, kill, and breed on your server while providing anti-abuse protection, configurable rewards, and a real-time web dashboard that requires no login.

5
1

MysticalVillager

Track, reward, and protect your server's villager ecosystem

Paper Java License Modrinth

FeaturesInstallationCommandsDashboardAPI


Overview

MysticalVillager is a comprehensive villager management plugin for Paper servers. It tracks every cure, kill, and breed on your server while providing anti-abuse protection, configurable rewards, and a real-time web dashboard that requires no login.

Whether you run a small SMP or a large network, MysticalVillager gives you the tools to monitor and reward positive villager interactions while detecting and preventing abuse.


Features

Tracking & Statistics

Track villagers cured, killed, and bred per player. The plugin maintains streaks, personal bests, and global statistics across your entire server. All data persists across restarts and is accessible through commands, PlaceholderAPI, or the web dashboard.

Reward System

Reward players for curing zombie villagers with money, experience, items, or custom commands. Each reward type has its own probability, and cooldowns prevent spam curing. The system integrates with Vault for economy support.

Anti-Abuse Detection

A scoring system analyzes player behavior to detect suspicious activity. It catches rapid cures, repeated targeting of the same villager, and detects villager farms based on concentration and breeding patterns. When abuse is detected, rewards are blocked and staff are notified.

Cross-Plugin Protection

Automatically blocks fake villagers from Citizens NPCs, MythicMobs, and similar plugins. This prevents players from exploiting spawned mobs for rewards.

Cooldown Protection

When a player attempts to cure while on cooldown, items aren't wasted:

  • Golden apples stay in inventory when blocked
  • Weakness potions are returned if thrown near zombie villagers while on cooldown
  • Visual feedback via title messages shows remaining cooldown time

Kill Penalties

Optional XP loss when players kill villagers. Configurable level penalty with visual shame messages displayed on screen.

Title Messages

On-screen title and subtitle messages for cure, kill, and breed events. Fully configurable text with color code support. Can be enabled or disabled per event type.

Web Dashboard

A public web interface displays real-time statistics:

  • Global and per-player stats
  • Leaderboards filterable by type (cured/killed/bred) and time period
  • Player search with detailed stats modal
  • Weekly activity charts showing cure patterns
  • Hourly distribution graphs
  • Recent activity feed with player avatars
  • Fully responsive for mobile devices

The dashboard updates automatically via Server-Sent Events - no page refresh needed.

Discord Integration

Send events to Discord via webhooks. Supports cure notifications, abuse alerts, farm detection warnings, and exploit blocks with rich embeds and player information.

Multi-Language

Ships with English, Dutch (Nederlands), German (Deutsch), Spanish (Español), and Portuguese (Português). All messages are customizable through language files.

PlaceholderAPI Support

15+ placeholders for use in scoreboards, holograms, tab lists, and more.


Requirements

SoftwareVersion
Paper (or forks like Purpur)1.21.x
Java21+

Optional integrations:

  • PlaceholderAPI
  • Vault (for money rewards)

Installation

  1. Download from Modrinth or GitHub Releases
  2. Drop the JAR into your plugins/ folder
  3. Restart the server
  4. Edit plugins/MysticalVillager/config.yml
  5. Use /mysticalvillager reload to apply changes

Commands

CommandDescriptionPermission
/mysticalvillager helpShow help-
/mysticalvillager stats [player]View statisticsmysticalvillager.stats
/mysticalvillager leaderboardView leaderboardmysticalvillager.leaderboard
/mysticalvillager reloadReload configmysticalvillager.reload
/mysticalvillager debug [player]Debug informationmysticalvillager.debug

Aliases: /villagers, /mvillager, /mystvillager

/mv is intentionally avoided to prevent conflicts with Multiverse.


Permissions

PermissionDescriptionDefault
mysticalvillager.adminFull admin accessop
mysticalvillager.statsView own statstrue
mysticalvillager.stats.othersView others' statsop
mysticalvillager.leaderboardView leaderboardtrue
mysticalvillager.reloadReload configurationop
mysticalvillager.staffalertsReceive abuse alertsop
mysticalvillager.bypass.cooldownBypass cure cooldownsfalse
mysticalvillager.bypass.antidupeBypass anti-dupefalse

Web Dashboard

Access at http://your-server-ip:25574 (port configurable)

The dashboard features a dark theme with glass-morphism design. It shows:

  • Live statistics counters
  • Leaderboards with filtering options
  • Player search functionality
  • Activity charts (weekly + hourly distribution)
  • Recent cure events feed
  • Configured reward chances

Rate limiting protects against spam. If exceeded, a friendly countdown page is shown.


PlaceholderAPI

PlaceholderDescription
%mysticalvillager_cured%Player's cures
%mysticalvillager_killed%Player's kills
%mysticalvillager_bred%Player's breeds
%mysticalvillager_streak%Current streak
%mysticalvillager_best_streak%Best streak
%mysticalvillager_global_cured%Server total cures
%mysticalvillager_global_killed%Server total kills
%mysticalvillager_global_bred%Server total breeds
%mysticalvillager_top_curer%#1 curer name
%mysticalvillager_leaderboard_<n>_name%Position N name
%mysticalvillager_leaderboard_<n>_count%Position N count

Discord Webhooks

discord:
  enabled: true
  webhookUrl: "https://discord.com/api/webhooks/..."
  serverName: "My Server"
  events:
    cure: true
    abuseDetected: true
    farmDetected: true
    exploitBlocked: true

API

REST Endpoints

EndpointMethodDescription
/api/stats/globalGETGlobal statistics
/api/stats/player/{uuid}GETPlayer statistics
/api/players/search?q=nameGETSearch players by name
/api/leaderboard?type=CURED&period=ALLGETLeaderboard
/api/activity/weekGETWeekly activity data
/api/activity/hourGETHourly distribution
/api/events/recent?limit=10GETRecent events
/api/rewardsGETConfigured rewards
/api/events/streamGETSSE event stream

Server-Sent Events

Connect to /api/events/stream for real-time updates:

  • connected - Initial connection established
  • stats_update - Statistics changed
  • cure - New cure event
  • heartbeat - Keep-alive (every 30s)

Database

Supports SQLite (default), MySQL, and MariaDB. All operations are async with connection pooling via HikariCP.

database:
  type: sqlite  # or mysql, mariadb
  
  # MySQL/MariaDB settings
  host: localhost
  port: 3306
  database: mysticalvillager
  username: root
  password: ""

Configuration Highlights

Rewards
rewards:
  enabled: true
  chance: 100
  items:
    money:
      enabled: true
      chance: 80
      amount: 500
      command: "eco give %player% %amount%"
    experience:
      enabled: true
      chance: 50
      amount: 100
      command: "xp give %player% %amount%"
Anti-Abuse
antiAbuse:
  enabled: true
  threshold: 50
  scoring:
    fastCure: 5
    repeatedVillagerUuid: 10
    farmDetected: 15
Title Messages
titles:
  cure:
    enabled: true
    title: "&a&lVillager Cured!"
    subtitle: "&7+500 coins"
  kill:
    enabled: true  
    title: "&c&lVillager Killed"
    subtitle: "&7-2 XP levels"

Performance

  • Async database operations
  • Aggressive caching with configurable TTLs
  • No main thread blocking
  • Efficient entity scanning
  • HikariCP connection pooling

License

MIT License - see LICENSE

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Сервер

Детали

Лицензия:LicenseRef-All-Rights-Reserved
Опубликован:2 недели назад
Обновлён:1 неделю назад
Главная