Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HavenModeration

A powerful, fully configurable moderation plugin inspired by LiteBans — built for Velocity (with a standalone Paper version).


🇹🇷 Türkçe

Özellikler

  • Ban, IP Ban, Mute, Warn, Kick, VoiceChat Mute
  • Kalıcı (perma) veya geçici süre desteği (1d, 2h30m, 1mo, perma)
  • Ban ekranı: banlanan oyuncu sunucuya giremeye çalıştığında özel mesaj görür, ekranın altında Ban ID gösterilir
  • /unban <ID> ile ban ID'si üzerinden doğrudan ban kaldırma
  • Veri depolama: SQLite, MySQL, JSON (config.yml'de seçilir)
  • Discord webhook entegrasyonu (discord.yml): her ceza olayı özel embed ile Discord kanalına gönderilir
  • Tüm mesajlar messages.yml'de düzenlenebilir (& renk kodu ve MiniMessage <red> desteklenir)
  • Yetkili bildirimleri (havenmoderation.staff yetkisine sahip oyunculara broadcast)
  • /alts ile aynı IP'den bağlanan hesapları listeleme
  • Velocity proxy'e kurulur; Paper backend'e ayrıca kurmanıza gerek yoktur

Kurulum

Velocity (Önerilen)

  1. HavenModeration-Velocity-1.0.0.jar dosyasını Velocity sunucunuzun plugins/ klasörüne kopyalayın.
  2. Velocity'yi başlatın — plugins/HavenModeration/ klasörü otomatik oluşturulur.
  3. config.yml, messages.yml, discord.yml dosyalarını düzenleyin.
  4. Hazır! Backend (Paper) sunucularına ekstra bir şey kurmanıza gerek yoktur.

Paper (Velocity kullanmıyorsanız)

  1. HavenModeration-Paper-1.0.0.jar dosyasını Paper sunucunuzun plugins/ klasörüne kopyalayın.
  2. Sunucuyu başlatın — plugins/HavenModeration/ klasörü oluşturulur.
  3. config.yml, messages.yml, discord.yml dosyalarını düzenleyin.

Not: Velocity plugin'i kurduysanız Paper plugin'i kurmayın. İkisini birden kullanmanıza gerek yoktur.


Depolama (config.yml)

storage:
  type: sqlite   # sqlite | mysql | json

  mysql:
    host: "localhost"
    port: 3306
    database: "havenmoderation"
    username: "root"
    password: "sifre"

Discord Webhook (discord.yml)

enabled: true
webhook-url: "https://discord.com/api/webhooks/..."
username: "HavenModeration"
footer: "Moderation System"

events:
  ban:
    enabled: true
    title: "🔨 Oyuncu Banlandı"
    description: "**{player}** kullanıcısı **{staff}** tarafından banlandı"

Komutlar

Komut Açıklama Yetki
/ban <oyuncu> <süre|perma> [sebep] Oyuncuyu banla havenmoderation.ban
/unban <oyuncu|ID> Banı kaldır (isim veya Ban ID) havenmoderation.unban
/banip <oyuncu|IP> <süre|perma> [sebep] IP ban havenmoderation.banip
/unbanip <IP> IP banını kaldır havenmoderation.unbanip
/mute <oyuncu> <süre|perma> [sebep] Sustur havenmoderation.mute
/unmute <oyuncu> Susturmayı kaldır havenmoderation.unmute
/warn <oyuncu> [sebep] Uyarı ver havenmoderation.warn
/delwarn <ID> Uyarı sil havenmoderation.delwarn
/warnings <oyuncu> Uyarıları listele havenmoderation.warnings
/kick <oyuncu> [sebep] At havenmoderation.kick
/history <oyuncu> Ceza geçmişi havenmoderation.history
/checkban <oyuncu> Ban durumu havenmoderation.checkban
/checkmute <oyuncu> Mute durumu havenmoderation.checkmute
/alts <oyuncu> Aynı IP'li hesaplar havenmoderation.alts
/vcmute <oyuncu> <süre|perma> [sebep] Ses sustur havenmoderation.vcmute
/voicechatmute /vcmute takma adı havenmoderation.vcmute
/sesmute /vcmute takma adı havenmoderation.vcmute
/hmoderation reload Config'i yeniden yükle havenmoderation.admin.reload
/hmoderation notifications Bildirimleri aç/kapat havenmoderation.staff
/hmoderation clearhistory <oyuncu> Geçmişi temizle havenmoderation.admin.clearhistory

Süre formatı: 1s, 5m, 2h, 3d, 1w, 2mo, 1y, perma


Yetkiler

Yetki Açıklama
havenmoderation.* Tüm yetkiler
havenmoderation.staff Yetkili bildirimleri
havenmoderation.admin Admin komutları
havenmoderation.admin.reload Config yenileme
havenmoderation.admin.clearhistory Geçmiş silme
havenmoderation.exempt.ban Banlanmaktan muaf
havenmoderation.exempt.kick Atılmaktan muaf
havenmoderation.exempt.mute Susturulmaktan muaf

Ban Ekranı

⚡ YOU ARE BANNED ⚡

Reason: Hile kullanımı
Staff: Admin
Duration: 7d 0h

Appeal at discord.gg/example

Ban ID: #42

Yetkili /unban 42 komutu ile bu ban'ı doğrudan kaldırabilir.



🇬🇧 English

Features

  • Ban, IP Ban, Mute, Warn, Kick, VoiceChat Mute
  • Permanent (perma) or timed punishments (1d, 2h30m, 1mo, perma)
  • Custom ban screen with Ban ID at the bottom — staff run /unban <ID> to lift by ID
  • Storage: SQLite, MySQL, JSON (selected in config.yml)
  • Discord webhook integration (discord.yml): all punishment events sent as rich embeds
  • All messages configurable in messages.yml (supports & color codes and MiniMessage)
  • Staff broadcast notifications
  • /alts to list accounts sharing the same IP
  • Designed for Velocity — no Paper installation needed when using Velocity

Installation

Velocity (Recommended)

  1. Copy HavenModeration-Velocity-1.0.0.jar to your Velocity plugins/ folder.
  2. Start Velocity — plugins/HavenModeration/ is created automatically.
  3. Configure config.yml, messages.yml, and discord.yml.
  4. Done! You do not need to install anything on Paper backend servers.

Paper (If not using Velocity)

  1. Copy HavenModeration-Paper-1.0.0.jar to your Paper plugins/ folder.
  2. Start the server — config files are generated automatically.
  3. Configure as needed.

Note: If you have the Velocity plugin installed, do not also install the Paper plugin.


Storage (config.yml)

storage:
  type: sqlite   # sqlite | mysql | json

  mysql:
    host: "localhost"
    port: 3306
    database: "havenmoderation"
    username: "root"
    password: "password"

Discord Webhook (discord.yml)

enabled: true
webhook-url: "https://discord.com/api/webhooks/..."
username: "HavenModeration"

events:
  ban:
    enabled: true
    title: "🔨 Player Banned"
    description: "**{player}** has been banned by **{staff}**"

Available placeholders: {player}, {staff}, {reason}, {duration}, {id}, {type}


Commands

Command Description Permission
/ban <player> <duration|perma> [reason] Ban a player havenmoderation.ban
/unban <player|ID> Unban by name or Ban ID havenmoderation.unban
/banip <player|IP> <duration|perma> [reason] IP ban havenmoderation.banip
/unbanip <IP> Remove an IP ban havenmoderation.unbanip
/mute <player> <duration|perma> [reason] Mute a player havenmoderation.mute
/unmute <player> Unmute havenmoderation.unmute
/warn <player> [reason] Warn havenmoderation.warn
/delwarn <ID> Delete a warning havenmoderation.delwarn
/warnings <player> List warnings havenmoderation.warnings
/kick <player> [reason] Kick havenmoderation.kick
/history <player> Punishment history havenmoderation.history
/checkban <player> Check ban status havenmoderation.checkban
/checkmute <player> Check mute status havenmoderation.checkmute
/alts <player> List alt accounts havenmoderation.alts
/vcmute <player> <duration|perma> [reason] Voice chat mute havenmoderation.vcmute
/voicechatmute Alias for /vcmute havenmoderation.vcmute
/sesmute Alias for /vcmute havenmoderation.vcmute
/hmoderation reload Reload config havenmoderation.admin.reload
/hmoderation notifications Toggle staff notifications havenmoderation.staff
/hmoderation clearhistory <player> Clear player history havenmoderation.admin.clearhistory

Duration format: 1s, 5m, 2h, 3d, 1w, 2mo, 1y, perma


Permissions

Permission Description
havenmoderation.* All permissions
havenmoderation.staff Receive staff broadcasts
havenmoderation.admin Admin commands
havenmoderation.admin.reload Reload config
havenmoderation.admin.clearhistory Clear history
havenmoderation.exempt.ban Cannot be banned
havenmoderation.exempt.kick Cannot be kicked
havenmoderation.exempt.mute Cannot be muted

Ban Screen

⚡ YOU ARE BANNED ⚡

Reason: Hacking
Staff: Admin
Duration: 7d 0h

Appeal at discord.gg/example

Ban ID: #42

Staff run /unban 42 to remove ban #42 directly.


Building from Source

# Velocity plugin
cd velocity && mvn clean package
# → target/HavenModeration-Velocity-1.0.0.jar

# Paper plugin
cd paper && mvn clean package
# → target/HavenModeration-Paper-1.0.0.jar

Requirements: Java 17+, Maven 3.6+

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages