Upload folder via GUI - src

This commit is contained in:
Git Manager GUI
2026-05-24 21:43:03 +02:00
parent 5ef38326bd
commit 4a522b5a5a
55 changed files with 16198 additions and 0 deletions

376
src/main/resources/chat.yml Normal file
View File

@@ -0,0 +1,376 @@
# ============================================================
# StatusAPI - ChatModule Konfiguration
# Kompatibel mit Java & Bedrock (Geyser) | BungeeCord Secure Chat
# ============================================================
# Standard-Kanal beim Einloggen
default-channel: "global"
server-colors:
default: "&7" # Fallback für unbekannte Server
lobby:
color: "&a"
display: "Lobby" # Anzeigename (optional, sonst wird der echte Servername verwendet)
survival:
color: "&#E8A020"
display: "Survival"
skyblock:
color: "&b"
display: "SkyBlock"
citybuild:
color: "&#A020E8"
display: "CityBuild"
minigames:
color: "&e"
display: "MiniGames"
chatlog:
enabled: true
retention-days: 7 # 7 oder 14
reports:
enabled: true
webhook-enabled: true
confirm-message: "&aDein Report &8({id}) &awurde eingereicht. Danke!"
close-permission: "chat.admin.bypass"
view-permission: "chat.admin.bypass"
# Leer = jeder Spieler darf reporten, sonst Permission eintragen (z.B. "chat.report")
report-permission: ""
cooldown: 60
# Discord Webhook für Report-Benachrichtigungen (leer = deaktiviert)
discord-webhook: ""
# Telegram Chat-ID für Report-Benachrichtigungen (leer = deaktiviert)
telegram-chat-id: ""
# ============================================================
# KANÄLE
# Jeder Kanal hat eigene Permissions, Format und Brücken.
# format-Platzhalter:
# {server} - Servername
# {prefix} - LuckPerms Prefix
# {player} - Spielername
# {suffix} - LuckPerms Suffix
# {message} - Nachricht
# {channel} - Kanalname
# ============================================================
channels:
global:
name: "Global"
symbol: "G"
permission: ""
color: "&a"
format: "&8[&a{server}&8] {prefix}&r{player}&8: &f{message}"
discord-webhook: ""
discord-channel-id: ""
telegram-chat-id: ""
# Themen-ID für Telegram-Gruppen mit Themen (0 = kein Thema / normale Gruppe)
telegram-thread-id: 0
local:
name: "Local"
symbol: "L"
permission: "chat.channel.local"
color: "&e"
local-only: true
format: "&8[&e{server}&8] {prefix}&r{player}&8: &f{message}"
discord-webhook: ""
discord-channel-id: ""
telegram-chat-id: ""
telegram-thread-id: 0
trade:
name: "Trade"
symbol: "T"
permission: "chat.channel.trade"
color: "&6"
format: "&8[&6TRADE&8] &8[&7{server}&8] {prefix}&r{player}&8: &f{message}"
discord-webhook: ""
discord-channel-id: ""
telegram-chat-id: ""
telegram-thread-id: 0
staff:
name: "Staff"
symbol: "S"
permission: "chat.channel.staff"
color: "&c"
format: "&8[&cSTAFF&8] &8[&7{server}&8] {prefix}&r{player}&8: &f{message}"
discord-webhook: ""
discord-channel-id: ""
telegram-chat-id: ""
telegram-thread-id: 0
use-admin-bridge: true
# ============================================================
# HELPOP
# ============================================================
helpop:
# Format der HelpOp-Nachricht
format: "&8[&eHELPOP&8] &f{player}&8@&7{server}&8: &e{message}"
# Wer bekommt HelpOp zu sehen
receive-permission: "chat.helpop.receive"
# Cooldown in Sekunden
cooldown: 30
# Bestätigungsnachricht an den Spieler
confirm-message: "&aHilferuf wurde an das Team gesendet!"
# Discord / Telegram auch für HelpOp
discord-webhook: ""
telegram-chat-id: ""
# ============================================================
# BROADCAST
# ============================================================
broadcast:
format: "&c&l[&6&lBroadcast&c&l] &r&e{message}"
permission: "chat.broadcast"
# ============================================================
# PRIVATE NACHRICHTEN
# ============================================================
private-messages:
enabled: true
format-sender: "&8[&7Du &8→ &b{player}&8] &f{message}"
format-receiver: "&8[&b{player} &8→ &7Dir&8] &f{message}"
# Social Spy: Admins können alle PMs sehen
format-social-spy: "&8[&dSPY &7{sender} &8→ &7{receiver}&8] &f{message}"
social-spy-permission: "chat.socialspy"
# ============================================================
# JOIN / LEAVE NACHRICHTEN
# Platzhalter:
# {player} - Spielername
# {prefix} - LuckPerms Prefix
# {suffix} - LuckPerms Suffix
# {server} - Zuletzt bekannter Server (bei Leave) oder "Netzwerk"
# ============================================================
join-leave:
enabled: true
# Normale Join/Leave-Nachrichten (für alle sichtbar)
join-format: "&8[&a+&8] {prefix}&a{player}&r &7hat das Netzwerk betreten."
leave-format: "&8[&c-&8] {prefix}&c{player}&r &7hat das Netzwerk verlassen."
# Vanish: Unsichtbare Spieler erzeugen keine normalen Join/Leave-Meldungen.
# Ist vanish-show-to-admins true, sehen Admins mit bypass-permission eine
# abweichende, dezente Benachrichtigung.
vanish-show-to-admins: true
vanish-join-format: "&8[&7+&8] &8{player} &7hat das Netzwerk betreten. &8(Vanish)"
vanish-leave-format: "&8[&7-&8] &8{player} &7hat das Netzwerk verlassen. &8(Vanish)"
# Brücken-Weitergabe (leer = deaktiviert)
discord-webhook: ""
telegram-chat-id: ""
telegram-thread-id: 0
# ============================================================
# GLOBALES RATE-LIMIT-FRAMEWORK
# Zentraler Schutz für Chat/PM/Command-Flood.
# ============================================================
rate-limit:
chat:
enabled: true
window-ms: 2500
max-actions: 3
block-ms: 6000
message: "&cBitte nicht so schnell schreiben!"
private-messages:
enabled: true
window-ms: 5000
max-actions: 4
block-ms: 10000
message: "&cDu sendest zu viele private Nachrichten. Bitte warte kurz."
# ============================================================
# MUTE
# ============================================================
mute:
# Standard-Mute-Dauer in Minuten (0 = permanent)
default-duration-minutes: 60
# Nachricht an gemuteten Spieler
muted-message: "&cDu bist aktuell stummgeschaltet. Noch: &f{time}"
# ============================================================
# EMOJI
# Spieler schreiben :smile: -> wird zu \uD83D\uDE0A konvertiert
# Bedrock-Spieler erhalten Fallback-Text wenn kein Unicode
# ============================================================
emoji:
enabled: true
# Ob Bedrock-Spieler (via Geyser) auch Emojis erhalten
bedrock-support: true
mappings:
":smile:": "\uD83D\uDE0A"
":laugh:": "\uD83D\uDE04"
":sad:": "\uD83D\uDE22"
":cry:": "\uD83D\uDE2D"
":angry:": "\uD83D\uDE20"
":heart:": "\u2764\uFE0F"
":fire:": "\uD83D\uDD25"
":star:": "\u2B50"
":check:": "\u2705"
":x:": "\u274C"
":warning:": "\u26A0\uFE0F"
":thumbsup:": "\uD83D\uDC4D"
":thumbsdown:": "\uD83D\uDC4E"
":wave:": "\uD83D\uDC4B"
":clap:": "\uD83D\uDC4F"
":sword:": "\u2694\uFE0F"
":shield:": "\uD83D\uDEE1\uFE0F"
":diamond:": "\uD83D\uDC8E"
":crown:": "\uD83D\uDC51"
":skull:": "\uD83D\uDC80"
":sun:": "\u2600\uFE0F"
":moon:": "\uD83C\uDF19"
":tree:": "\uD83C\uDF33"
":house:": "\uD83C\uDFE0"
":money:": "\uD83D\uDCB0"
":rocket:": "\uD83D\uDE80"
":rainbow:": "\uD83C\uDF08"
":ghost:": "\uD83D\uDC7B"
":gift:": "\uD83C\uDF81"
":cake:": "\uD83C\uDF82"
":chicken:": "\uD83D\uDC14"
":pig:": "\uD83D\uDC37"
":creeper:": "\uD83D\uDCA3"
":gg:": "\uD83C\uDFAE"
# ============================================================
# DISCORD INTEGRATION
# ============================================================
discord:
enabled: false
# Bot-Token für bidirektionale Kommunikation
bot-token: "YOUR_BOT_TOKEN_HERE"
# Server (Guild) ID
guild-id: "YOUR_GUILD_ID"
# Polling-Intervall in Sekunden (Discord → Minecraft)
poll-interval: 3
# Format für Discord → Minecraft Nachrichten
from-discord-format: "&9[&bDiscord&9] &b{user}&8: &f{message}"
# Extra Admin-Kanal (für Staff-Kanal und HelpOp)
admin-channel-id: ""
# Standard-Embed-Farbe (Hex ohne #)
embed-color: "5865F2"
# ============================================================
# TELEGRAM INTEGRATION
# ============================================================
telegram:
enabled: false
# Bot-Token von @BotFather
bot-token: "YOUR_TELEGRAM_BOT_TOKEN"
# Polling-Intervall in Sekunden
poll-interval: 3
# Format für Telegram → Minecraft Nachrichten
from-telegram-format: "&3[&bTelegram&3] &b{user}&8: &f{message}"
# Extra Admin-Chat-ID (für Staff-Kanal und HelpOp)
admin-chat-id: ""
# Themen-Gruppe: Topic-ID für den Chat-Kanal (0 = kein Topic / normale Gruppe)
# Die message_thread_id findest du indem du eine Nachricht im Topic weiterleitest
# und dir die forwarded_from_message_id anschaust, oder via Bot-API getUpdates.
chat-topic-id: 0
# Topic-ID für den Admin-Kanal (0 = kein Topic)
admin-topic-id: 0
# ============================================================
# ACCOUNT-VERKNÜPFUNG (Discord & Telegram)
# Spieler können ihre Minecraft-Accounts mit Discord/Telegram
# verknüpfen damit ihr Name im Chat angezeigt wird.
# ============================================================
account-linking:
enabled: true
# Token läuft nach X Minuten ab
token-expire-minutes: 10
# Nachricht die der Spieler nach /linkdiscord bekommt
discord-link-message: "&aSchreibe den folgenden Code als Nachricht an unseren Discord-Bot:\n&f&l{token}\n&7Der Code läuft in &f10 Minuten &7ab."
# Nachricht die der Spieler nach /linktelegram bekommt
telegram-link-message: "&aSchreibe den folgenden Code als Nachricht an unseren Telegram-Bot:\n&f&l{token}\n&7Der Code läuft in &f10 Minuten &7ab."
# Bestätigung nach erfolgreicher Verknüpfung (im Spiel)
success-discord: "&aDiscord-Account erfolgreich verknüpft! &8(&7{discord}&8)"
success-telegram: "&aTelegram-Account erfolgreich verknüpft! &8(&7{telegram}&8)"
# Bestätigung die der Bot in Discord/Telegram schickt
bot-success-discord: "✅ Dein Minecraft-Account **{player}** wurde erfolgreich verknüpft!"
bot-success-telegram: "✅ Dein Minecraft-Account <b>{player}</b> wurde erfolgreich verknüpft!"
# Format wenn verknüpfter Nutzer in Discord/Telegram schreibt
# {player} = Minecraft-Name, {user} = Discord/Telegram-Name, {message} = Nachricht
linked-discord-format: "&9[&bDiscord&9] &f{player} &8(&7{user}&8)&8: &f{message}"
linked-telegram-format: "&3[&bTelegram&3] &f{player} &8(&7{user}&8)&8: &f{message}"
# Themen-ID für den Admin-Chat (0 = kein Thema)
admin-thread-id: 0
# ============================================================
# ADMIN BYPASS
# Spieler mit dieser Permission können nicht geblockt werden
# und sind von Mutes ausgenommen
# ============================================================
admin:
bypass-permission: "chat.admin.bypass"
# Admins erhalten Benachrichtigung bei Mutes/Blocks
notify-permission: "chat.admin.notify"
# ============================================================
# CHAT-FILTER & ANTI-SPAM
# ============================================================
chat-filter:
anti-spam:
enabled: true
cooldown-ms: 1500
max-messages: 3
message: "&cBitte nicht so schnell schreiben!"
duplicate-check:
enabled: true
message: "&cBitte keine identischen Nachrichten senden."
blacklist:
enabled: true
words:
- "beispielwort1"
- "beispielwort2"
caps-filter:
enabled: true
min-length: 6
max-percent: 70
anti-ad:
enabled: true
message: "&cWerbung ist in diesem Chat nicht erlaubt!"
# Domains/Substrings die NICHT geblockt werden (z.B. eigene Serveradresse)
# Vergleich ist case-insensitiv und prüft ob der Substring im Match enthalten ist
whitelist:
- "viper-network.de"
- "m-viper.de"
- "https://www.spigotmc.org"
# TLDs die als Werbung gewertet werden.
# Leer = alle Domain-Treffer blockieren (nicht empfohlen, hohe False-Positive-Rate)
blocked-tlds:
- "net"
- "com"
- "de"
- "org"
- "gg"
- "io"
- "eu"
- "tv"
- "xyz"
- "info"
- "me"
- "cc"
- "co"
- "app"
- "online"
- "site"
- "fun"
# ============================================================
# MENTIONS (@Spielername)
# ============================================================
mentions:
enabled: true
highlight-color: "&e&l"
sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
allow-toggle: true
notify-prefix: "&e&l[Mention] &r"
# ============================================================
# CHAT-HISTORY
# ============================================================
chat-history:
max-lines: 50
default-lines: 10

View File

@@ -0,0 +1,16 @@
# ============================================================
# StatusAPI - ChatModule Wort-Blacklist
# Wörter werden case-insensitiv und als Teilwort geprüft.
# Erkannte Wörter werden durch **** ersetzt.
#
# Diese Datei wird bei /chatreload automatisch neu eingelesen.
# Wörter die hier stehen ÜBERSCHREIBEN NICHT die Einträge in
# chat.yml → beide Listen werden zusammengeführt.
# ============================================================
words:
- beispielwort1
- beispielwort2
# Hier eigene Wörter eintragen, eines pro Zeile:
# - schimpfwort
# - spam

View File

@@ -0,0 +1,18 @@
§8[§2Viper-Netzwerk§8] §7Der Server läuft 24/7 also keine Hektik beim Spielen :)
§8[§2Viper-Netzwerk§8] §7Dies ist ein privater Server hier zählt der Zusammenhalt.
§8[§dTipp§8] §7Wenn du denkst, du bist sicher… schau nochmal nach. Creeper machen keine Geräusche beim Tippen.
§8[§2Viper-Netzwerk§8] §7Wähle einen Server, leg los der Rest ergibt sich. Oder explodiert.
§8[§2Viper-Netzwerk§8] §7Mehr Server. Mehr Blöcke. Mehr Unfälle. Willkommen!
§8[§dTipp§8] §7Halte eine Spitzhacke mit Glück bereit. Man weiß nie, wann das nächste Erz kommt.
§8[§dTipp§8] §7Mit §e/home§7 kannst du dich jederzeit nach Hause teleportieren.
§8[§2Viper-Netzwerk§8] §7Das wichtigste Plugin? Du selbst. Spiel fair, sei kreativ!
§8[§2Viper-Netzwerk§8] §7Redstone ist keine Magie aber fast.
§8[§dTipp§8] §7Schilde sind cool. Besonders wenn Skelette zielen.
§8[§2Viper-Netzwerk§8] §7Wenn du in Lava fällst, bist du nicht der Erste. Nur der Nächste.
§8[§dTipp§8] §7Villager sind nicht dumm nur sehr… eigen.
§8[§2Viper-Netzwerk§8] §7Bau groß, bau sicher oder bau eine Treppe zur Nachbarschaftsklage.
§8[§2Viper-Netzwerk§8] §7Gras wächst. Spieler auch. Gib jedem eine Chance!
§8[§2Viper-Netzwerk§8] §7Ein Creeper ist keine Begrüßung. Es sei denn, du willst es spannend machen.
§8[§dTipp§8] §7Ein voller Magen ist halbe Miete. Farmen lohnt sich!
§8[§2Viper-Netzwerk§8] §7Wir haben keine Probleme nur Redstone-Schaltungen mit Charakter.
§8[§dTipp§8] §7Markiere dein Grundstück mit §e/p claim§7, bevor es jemand anderes tut!

View File

@@ -0,0 +1,135 @@
# ===========================
# NETWORK INFO MODUL
# ===========================
networkinfo.enabled=true
networkinfo.command.enabled=true
# Aus Datenschutzgruenden standardmaessig aus. Wenn true, erscheinen alle Spielernamen im JSON.
networkinfo.include_player_names=false
# Discord Webhook fuer Status-, Warn- und Attack-Meldungen
networkinfo.webhook.enabled=false
networkinfo.webhook.url=
networkinfo.webhook.username=
networkinfo.webhook.thumbnail_url=
networkinfo.webhook.notify_start_stop=true
# compact = kurze Texte | detailed = strukturierte Embeds mit Feldern
networkinfo.webhook.embed_mode=detailed
networkinfo.webhook.check_seconds=30
# Alert-Schwellwerte
networkinfo.alert.memory_percent=90
networkinfo.alert.player_percent=95
networkinfo.alert.cooldown_seconds=300
# Proxy-TPS Alert (20.0 = perfekt, Werte < 20 zeigen Main-Thread-Lag am Proxy)
networkinfo.alert.tps_enabled=true
networkinfo.alert.tps_threshold=18.0
# Attack Meldungen (Detected/Stopped)
networkinfo.attack.enabled=true
# Nutzt automatisch networkinfo.webhook.url
networkinfo.attack.source=
# API-Key fuer POST /network/attack
networkinfo.attack.api_key=
# ===========================
# ANTIBOT / ATTACK GUARD
# ===========================
antibot.enabled=true
# Profile: strict | high-traffic
# strict: agressiver Schutz, schnelleres Blocken, VPN-Check standardmaessig aktiv
# high-traffic: toleranter fuer grosse Netzwerke mit Lastspitzen
antibot.profile=high-traffic
# Presets (Referenz):
# strict -> max_cps=120, start_cps=220, stop_cps=120, ip/min=18, block_seconds=900, vpn_check.enabled=true
# high-traffic -> max_cps=180, start_cps=300, stop_cps=170, ip/min=24, block_seconds=600, vpn_check.enabled=false
# Hinweis: Werte unten ueberschreiben das Profil bei Bedarf.
# Globaler Traffic
antibot.max_cps=180
antibot.attack.start_cps=300
antibot.attack.stop_cps=170
antibot.attack.stop_grace_seconds=25
# Pro-IP Limiter
antibot.ip.max_connections_per_minute=24
antibot.ip.block_seconds=600
antibot.kick_message=Zu viele Verbindungen von deiner IP. Bitte warte kurz.
# Optionaler VPN/Proxy/Hosting Check (ip-api)
antibot.vpn_check.enabled=false
antibot.vpn_check.block_proxy=true
antibot.vpn_check.block_hosting=true
antibot.vpn_check.cache_minutes=30
antibot.vpn_check.timeout_ms=2500
# Sicherheitslog fuer Angreifer/VPN/Proxy-Events (mit Name/UUID falls verfuegbar)
antibot.security_log.enabled=true
antibot.security_log.file=antibot-security.log
# Lernmodus: Muster mitschreiben, Score bilden und erst ab Schwellwert blockieren.
antibot.learning.enabled=true
antibot.learning.score_threshold=100
antibot.learning.decay_per_second=2
antibot.learning.state_window_seconds=120
# Punktelogik pro Muster
antibot.learning.rapid.window_ms=1500
antibot.learning.rapid.points=12
antibot.learning.ip_rate_exceeded.points=30
antibot.learning.vpn_proxy.points=40
antibot.learning.vpn_hosting.points=30
antibot.learning.attack_mode.points=12
antibot.learning.high_cps.points=10
antibot.learning.recent_events.limit=30
# ===========================
# BACKEND JOIN GUARD SYNC (optional)
# ===========================
# Diese Werte koennen von BackendJoinGuard im StatusAPI-Sync-Modus abgeholt werden.
# Standalone bleibt weiterhin moeglich.
backendguard.enforcement_enabled=true
backendguard.log_blocked_attempts=true
backendguard.kick_message=&cBitte verbinde dich nur über den Proxy-Server.
# Wichtig: Hier nur echte Proxy-IP(s) eintragen.
backendguard.allowed_proxy_ips=127.0.0.1,::1,10.0.0.10
# Optional: internes Proxy-Netz als CIDR
backendguard.allowed_proxy_cidrs=10.0.0.0/24
# Optionaler API-Key fuer GET /network/backendguard/config
# Leer = kein API-Key erforderlich (nur im internen Netzwerk empfohlen)
backendguard.sync.api_key=
# ===========================
# MULTI ACCOUNT GUARD
# ===========================
# Verhindert, dass ein Spieler mit zwei Accounts gleichzeitig online ist.
multiaccountguard.enabled=true
# IP-Check: Gleiche IP mit unterschiedlichem Namen -> blockieren
multiaccountguard.check_ip=true
# UUID-Check: Gleiche UUID mit unterschiedlichem Namen -> blockieren (Bedrock-Edge-Cases)
multiaccountguard.check_uuid=true
# true = bestehenden (alten) Account rauswerfen, neuen reinlassen
# false = neuen Account blockieren (Standard)
multiaccountguard.kick_existing=false
# Kick-Nachricht (& fuer Farbcodes, \n fuer Zeilenumbruch)
multiaccountguard.kick_message=&cDu bist bereits mit einem anderen Account online!\n&7Bitte trenne deinen anderen Account zuerst.
# Staff-Benachrichtigung bei Konflikt (Permission: statusapi.staff.notify)
multiaccountguard.staff_notify.enabled=true
multiaccountguard.staff_notify.format=&8[&cMAG&8] &e{blocked} &7wurde blockiert &8(2. Account von &e{existing}&8) &7| IP: &f{ip}
# Temporaerer IP-Bann nach X Versuchen (Integration mit AntiBotModule)
# max_attempts: Anzahl Konflikte bevor die IP gebannt wird
# duration_secs: Bann-Dauer in Sekunden
multiaccountguard.tempban.enabled=true
multiaccountguard.tempban.max_attempts=3
multiaccountguard.tempban.duration_secs=300
# Discord-Meldung bei jedem Konflikt (nutzt networkinfo.webhook.url automatisch)
multiaccountguard.webhook.enabled=true

View File

@@ -0,0 +1,312 @@
name: StatusAPI
main: net.viper.status.StatusAPI
version: 4.1.3
author: M_Viper
description: StatusAPI für BungeeCord inkl. Update-Checker, Modul-System und ChatModule
# Mindestanforderung: Minecraft 1.20 / BungeeCord mit PlayerChatEvent-Unterstützung
softdepend:
- LuckPerms
- Geyser-BungeeCord
commands:
# ── HelpModule ────────────────────────────────────────────
help:
description: Zeigt alle verfügbaren Befehle (Admin-Befehle nur mit Berechtigung)
usage: /<command> help
# Hinweis: Der Befehlsname ist in verify.properties unter statusapi.help konfigurierbar
# Beispiel: statusapi.help=vn → /vn help
# ── ScoreboardModule ──────────────────────────────────────
scoreboard:
description: Scoreboard ein-/ausblenden oder zwischen Player/Admin wechseln
usage: /scoreboard [hide|show|player|admin]
aliases: [sb, togglesb]
# ── StatusAPI Admin ───────────────────────────────────────
statusapi:
description: StatusAPI verwalten (Reload, Info)
usage: /statusapi reload
aliases: [sapi]
permission: statusapi.admin
# /pay und /ecoadmin werden von NexEco (Spigot) verwaltet
# ── VanishModule ──────────────────────────────────────────
vanish:
description: Vanish ein-/ausschalten
usage: /vanish [Spieler]
aliases: [v]
vanishlist:
description: Alle unsichtbaren Spieler anzeigen
usage: /vanishlist
aliases: [vlist]
# ── Verify Modul ──────────────────────────────────────────
verify:
description: Verifiziere dich mit einem Token
usage: /verify <token>
# ── ForumBridge Modul ─────────────────────────────────────
forumlink:
description: Verknüpfe deinen Minecraft-Account mit dem Forum
usage: /forumlink <token>
aliases: [fl]
forum:
description: Zeigt ausstehende Forum-Benachrichtigungen an
usage: /forum
# ── NetworkInfo Modul ─────────────────────────────────────
netinfo:
description: Zeigt erweiterte Proxy- und Systeminfos an
usage: /netinfo
antibot:
description: Zeigt AntiBot-Status und Verwaltung
usage: /antibot <status|clearblocks|unblock|profile|reload>
# ── AutoMessage Modul ─────────────────────────────────────
automessage:
description: AutoMessage Verwaltung
usage: /automessage reload
# ── ChatModule Kanal ────────────────────────────────────
channel:
description: Kanal wechseln oder Kanalliste anzeigen
usage: /channel [kanalname]
aliases: [ch, kanal]
# ── ChatModule HelpOp ───────────────────────────────────
helpop:
description: Sende eine Hilfeanfrage an das Team
usage: /helpop <Nachricht>
# ── ChatModule Privat-Nachrichten ───────────────────────
msg:
description: Sende eine private Nachricht
usage: /msg <Spieler> <Nachricht>
aliases: [tell, w, whisper]
r:
description: Antworte auf die letzte private Nachricht
usage: /r <Nachricht>
aliases: [reply, antwort]
# ── ChatModule Blockieren ───────────────────────────────
ignore:
description: Spieler ignorieren
usage: /ignore <Spieler>
aliases: [block]
unignore:
description: Spieler nicht mehr ignorieren
usage: /unignore <Spieler>
aliases: [unblock]
# ── ChatModule Mute (Admin) ─────────────────────────────
chatmute:
description: Spieler im Chat stumm schalten
usage: /chatmute <Spieler> [Minuten]
aliases: [gmute]
chatunmute:
description: Chat-Stummschaltung aufheben
usage: /chatunmute <Spieler>
aliases: [gunmute]
# ── ChatModule Selbst-Mute ──────────────────────────────
chataus:
description: Eigenen Chat-Empfang ein-/ausschalten
usage: /chataus
aliases: [togglechat, chaton, chatoff]
# ── ChatModule Broadcast ────────────────────────────────
broadcast:
description: Nachricht an alle Spieler senden
usage: /broadcast <Nachricht>
aliases: [bc, alert]
# ── ChatModule Emoji ────────────────────────────────────
emoji:
description: Liste aller verfügbaren Emojis
usage: /emoji
aliases: [emojis]
# ── ChatModule Social Spy ───────────────────────────────
socialspy:
description: Private Nachrichten mitlesen (Admin)
usage: /socialspy
aliases: [spy]
# ── ChatModule Reload ───────────────────────────────────
chatreload:
description: Chat-Konfiguration neu laden
usage: /chatreload
# ── ChatModule Admin-Info ───────────────────────────────
chatinfo:
description: Chat-Informationen ueber einen Spieler anzeigen (Admin)
usage: /chatinfo <Spieler>
# ── ChatModule Chat-History ─────────────────────────────
chathist:
description: Chat-History aus dem Logfile anzeigen (Admin)
usage: /chathist [Spieler] [Anzahl]
# ── ChatModule Mentions ─────────────────────────────────
mentions:
description: Mention-Benachrichtigungen ein-/ausschalten
usage: /mentions
aliases: [mention]
# ── ChatModule Plugin-Bypass ────────────────────────────
chatbypass:
description: ChatModule fuer naechste Eingabe ueberspringen (fuer Plugin-Dialoge wie CMI)
usage: /chatbypass
aliases: [cbp]
# ── ChatModule Account-Verknuepfung ─────────────────────
# FIX #4: Command-Namen stimmen jetzt mit der Code-Registrierung überein.
# Im ChatModule wird "discordlink" mit Alias "dlink" registriert,
# und "telegramlink" mit Alias "tlink".
discordlink:
description: Minecraft-Account mit Discord verknuepfen
usage: /discordlink
aliases: [dlink]
telegramlink:
description: Minecraft-Account mit Telegram verknuepfen
usage: /telegramlink
aliases: [tlink]
unlink:
description: Account-Verknuepfung aufheben
usage: /unlink <discord|telegram|all>
# ── ChatModule Report ───────────────────────────────────
report:
description: Spieler melden
usage: /report <Spieler> <Grund>
reports:
description: Offene Reports anzeigen (Admin)
usage: /reports [all]
reportclose:
description: Report schliessen (Admin)
usage: /reportclose <ID>
# ── ServerSwitcherModule ──────────────────────────────────
go:
description: Schneller Serverwechsel ueber Chat-Menue oder direkt
usage: /go [servername]
aliases: [wechsel, switch]
permissions:
# ── StatusAPI Core ────────────────────────────────────────
statusapi.admin:
description: Zugang zu StatusAPI-Administrationsbefehlen (reload etc.)
default: op
statusapi.update.notify:
description: Erlaubt Update-Benachrichtigungen
default: op
statusapi.netinfo:
description: Zugriff auf /netinfo
default: op
statusapi.antibot:
description: Zugriff auf /antibot
default: op
statusapi.automessage:
description: Zugriff auf /automessage reload
default: op
# ── MultiAccountGuard ─────────────────────────────────────
# KEIN default Permission muss manuell vergeben werden!
# lp user <Name> permission set statusapi.multiaccountguard.bypass true
statusapi.multiaccountguard.bypass:
description: Erlaubt mehrere gleichzeitige Accounts (nur manuell vergeben)
statusapi.staff.notify:
description: Empfaengt Ingame-Benachrichtigungen vom MultiAccountGuard
default: false
# ── ChatModule Kanaele ──────────────────────────────────
chat.channel.local:
description: Zugang zum Local-Kanal
default: true
chat.channel.trade:
description: Zugang zum Trade-Kanal
default: true
chat.channel.staff:
description: Zugang zum Staff-Kanal
default: false
# ── ChatModule HelpOp ───────────────────────────────────
chat.helpop.receive:
description: HelpOp-Nachrichten empfangen
default: false
# ── ChatModule Mute ─────────────────────────────────────
chat.mute:
description: Spieler muten / unmuten
default: false
# ── ChatModule Broadcast ────────────────────────────────
chat.broadcast:
description: Broadcast-Nachrichten senden
default: false
# ── ChatModule Social Spy ───────────────────────────────
chat.socialspy:
description: Private Nachrichten mitlesen
default: false
# ── ChatModule Admin ────────────────────────────────────
chat.admin.bypass:
description: Admin-Bypass - Kann nicht geblockt/gemutet werden
default: op
chat.admin.notify:
description: Benachrichtigungen ueber Mutes und Blocks erhalten
default: false
# ── ChatModule Report ───────────────────────────────────
chat.report:
description: Spieler reporten (/report)
default: true
# ── ChatModule Farben ───────────────────────────────────
chat.color:
description: Farbcodes (&a, &b, ...) im Chat nutzen
default: false
chat.color.format:
description: Formatierungen (&l, &o, &n, ...) im Chat nutzen
default: false
# ── ChatModule Filter ───────────────────────────────────
chat.filter.bypass:
description: Chat-Filter (Anti-Spam, Caps, Blacklist) umgehen
default: false
# ── CommandBlocker ────────────────────────────────────────
commandblocker.bypass:
description: Command-Blocker umgehen
default: op
commandblocker.admin:
description: CommandBlocker verwalten (/cb)
default: op
# ── ServerSwitcherModule ──────────────────────────────────
serverswitcher.use:
description: Zugriff auf /go (Schneller Serverwechsel)
default: false

View File

@@ -0,0 +1,147 @@
# ScoreboardModule Konfiguration
# Platzhalter Spieler: %player% %rank% %money% %server% %compass% %health% %hearts% %date%
# %ping% %online% %maxplayers% %time% %playtime% %news%
# %x% %y% %z% %world% %gamemode% %exp% %food% %foodsym% %speed%
# Platzhalter Admin: %tps% %ram% %proxymem% %uptime% %servers%
# Ticket (Spieler): %ticket_my_open%
# Ticket (Supporter): %ticket_open%
# Ticket (Admin): %ticket_open% %ticket_claimed% %ticket_rating_good% %ticket_rating_bad% %ticket_rating_pct%
# Gradient: %gradient:FARBE1:FARBE2:TEXT% (beliebig viele Farb-Stopps)
# Sonstiges: %line%
# Farben: &-Codes und Hex &#FF6600
scoreboard.enabled=true
# Update-Intervall in Millisekunden - MINIMUM 250! (500 = 0.5s empfohlen)
scoreboard.update_interval=500
scoreboard.title=&lViper Network
scoreboard.admin_title=&l[Admin] Panel
scoreboard.supporter_title=&l[Support] Panel
# Laufschrift leer lassen zum Deaktivieren
scoreboard.ticker.text=
scoreboard.ticker.width=26
scoreboard.ticker.speed=1
scoreboard.rainbow.enabled=true
# wave = fließende Farbwelle | chars = Regenbogen pro Buchstabe | line = eine Farbe
scoreboard.rainbow.mode=wave
# Wellengeschwindigkeit: 1=sehr langsam, 10=normal, 50=schnell, 100=sehr schnell
scoreboard.rainbow.speed=10
# Farben: Hex (#RRGGBB oder &#RRGGBB) oder Minecraft-Codes (&0-&f) kommagetrennt
# Leer lassen = voller HSB-Regenbogen
scoreboard.rainbow.colors=&f,&b
scoreboard.admin_permission=statusapi.scoreboard.admin
scoreboard.supporter_permission=statusapi.scoreboard.supporter
scoreboard.time_format=HH:mm
scoreboard.date_format=dd.MM.yyyy
scoreboard.timezone=Europe/Berlin
scoreboard.money_format=#,##0.00
scoreboard.money_decimal_separator=,
# ===================================================
# SEPARATOR wird als %line% Placeholder genutzt
# Wähle einen Stil oder erstelle deinen eigenen:
#
# scoreboard.separator=&8&m-------------------- (Standard)
# scoreboard.separator=&8&m==================== (Doppelt)
# scoreboard.separator=&8&m~~~~~~~~~~~~~~~~~~~~ (Wellig)
# scoreboard.separator=&8&m.................... (Punkte)
# scoreboard.separator=&8&m──────────────────── (Dünn)
# scoreboard.separator=&8&m════════════════════ (Dick)
# scoreboard.separator=&8◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇ (Diamanten)
# scoreboard.separator=%gradient:&8:&7:────────────────────% (Gradient)
# scoreboard.separator=%gradient:#FF0000:#0000FF:────────────────────% (Farbig)
# scoreboard.separator= (Leer/unsichtbar)
# ===================================================
scoreboard.separator=&8&m-----------------------
# ===================================================
# NEWS-TICKER erscheint als %news% Placeholder
# Leer lassen zum Deaktivieren
# ===================================================
scoreboard.news.text=&eWillkommen auf Viper Network!
scoreboard.news.prefix=&8[&6News&8] &r
scoreboard.news.width=26
# Geschwindigkeit: 1=langsam, 2=normal, 3=schnell
scoreboard.news.speed=1
# Sekunden pro Rotation (0 = kein Wechsel)
scoreboard.rotation_interval=4
# ===================================================
# ZEILEN max 15 sichtbar
# Rotation pro Zeile:
# scoreboard.lines.N = Variante 1 (immer sichtbar / nur Variante)
# scoreboard.lines.N.2 = Variante 2 (wechselt alle rotation_interval Sekunden)
# scoreboard.lines.N.3 = Variante 3 usw.
# Gradient: %gradient:FARBE1:FARBE2:TEXT%
# ===================================================
scoreboard.lines.1=%line%
scoreboard.lines.2=%gradient:&b:&f:&b:&l> Player Info:%
scoreboard.lines.3=&7%rank% &f%player%
scoreboard.lines.4=
scoreboard.lines.5=&7Spielzeit: &f%playtime%
scoreboard.lines.5.2=&7Leben: &c%health%
scoreboard.lines.5.3=&7Hunger: &#8B4513%foodsym%
scoreboard.lines.6=
scoreboard.lines.7=%gradient:&b:&f:&b:&l> Money:%
scoreboard.lines.8=&a$%money%
scoreboard.lines.9=
scoreboard.lines.10=%gradient:&b:&f:&b:&l> Server Info:%
scoreboard.lines.11=&f%server%
scoreboard.lines.11.2=&7Ping: &f%ping%ms &8| &7Online: &f%online%
scoreboard.lines.12=
scoreboard.lines.13=%news%
scoreboard.lines.14=%line%
scoreboard.lines.15=&7%compass%
# ===================================================
# SUPPORTER-ZEILEN
# ===================================================
scoreboard.supporter_lines.1=%line%
scoreboard.supporter_lines.2=%gradient:&b:&f:&b:&l> Player Info:%
scoreboard.supporter_lines.3=&7%rank% &f%player%
scoreboard.supporter_lines.4=&7Ping: &f%ping%ms &8| &7%server%
scoreboard.supporter_lines.5=
scoreboard.supporter_lines.6=%gradient:&b:&f:&b:&l> Ticket:%
scoreboard.supporter_lines.7=&7Offen: &c%ticket_open%
scoreboard.supporter_lines.8=&7In Bearbeitung: &e%ticket_claimed%
scoreboard.supporter_lines.9=
scoreboard.supporter_lines.10=%gradient:&b:&f:&b:&l> Server Info:%
scoreboard.supporter_lines.11=&7Online: &f%online% &8/ &7%maxplayers%
scoreboard.supporter_lines.12=
scoreboard.supporter_lines.13=
scoreboard.supporter_lines.14=%line%
scoreboard.supporter_lines.15=&7%compass%
# ===================================================
# ADMIN-ZEILEN
# ===================================================
scoreboard.admin_lines.1=%line%
scoreboard.admin_lines.2=%gradient:&b:&f:&b:&l> Player Info:%
scoreboard.admin_lines.3=&7%rank% &f%player%
scoreboard.admin_lines.4=&7Gamemode: &f%gamemode%
scoreboard.admin_lines.5=&7Leben: &c%health%
scoreboard.admin_lines.5.2=&7Hunger: &#8B4513%foodsym%
scoreboard.admin_lines.6=
scoreboard.admin_lines.7=%gradient:&b:&f:&b:&l> Server Info:%
scoreboard.admin_lines.8=&f%server% &8| &7RAM: &e%ram%
scoreboard.admin_lines.8.2=&7Proxy: &f%uptime%
scoreboard.admin_lines.9=&7TPS: &a%tps%
scoreboard.admin_lines.10=
scoreboard.admin_lines.11=%gradient:&b:&f:&b:&l> Ticket:%
scoreboard.admin_lines.12=&7Tickets Offen: &c%ticket_open%
scoreboard.admin_lines.12.2=&7Tickets In Bearbeitung: &e%ticket_claimed%
scoreboard.admin_lines.13=&7Spieler: %online% &8/ &7%maxplayers%
scoreboard.admin_lines.14=%line%
scoreboard.admin_lines.15=&7%compass%
scoreboard.admin_lines.15.2=&7Pos: X:&f%x% &7Y:&f%y% &7Z:&f%z%
# ===================================================
# NAMETAG - Prefix ueber dem Spieler-Kopf
# ===================================================
# Zeigt den LuckPerms-Prefix ueber dem Spieler-Avatar an.
# Auf false setzen zum Deaktivieren.
nametag.enabled=true

View File

@@ -0,0 +1,113 @@
# _____ __ __ ___ ____ ____
# / ___// /_____ _/ /___ _______/ | / __ \/ _/
# \__ \/ __/ __ `/ __/ / / / ___/ /| | / /_/ // /
# ___/ / /_/ /_/ / /_/ /_/ (__ ) ___ |/ ____// /
# /____/\__/\__,_/\__/\__,_/____/_/ |_/_/ /___/
broadcast.enabled=true
broadcast.prefix=[Broadcast]
broadcast.prefix-color=&c
broadcast.message-color=&f
broadcast.format=%prefixColored% %messageColored%
# broadcast.format kann angepasst werden; nutze Platzhalter: %name%, %prefix%, %prefixColored%, %message%, %messageColored%, %type%
# ===========================
# StatusAPI Einstellungen
# ===========================
statusapi.port=9191
# ===========================
# PLAYER LOGIN LOGGER
# ===========================
# Schreibt UUID, Name und IP jedes Spielers beim Join in player-logins.log
# Standardmaessig deaktiviert - nur auf deinem Server auf true setzen
login-logger.enabled=false
# ===========================
# INGAME HILFE
# ===========================
# Befehlsname für die Ingame-Hilfe (Standard: help)
# Beispiel: statusapi.help=vn → Befehl wird /vn
statusapi.help=sapi
# Permission, die Admin-Befehle in der Hilfe sichtbar macht
# (OP und Spieler mit dieser Permission sehen die Admin-Sektion)
statusapi.help.permission=statusapi.admin
# ===========================
# WORDPRESS / VERIFY EINSTELLUNGEN
# ===========================
wp_verify_url=https://example.com
# Gemeinsames API-Secret (muss identisch sein mit mc_bridge_api_secret in den WP Forum-Einstellungen)
forum.api_secret=HIER_EIN_SICHERES_PASSWORT_SETZEN
# Verzögerung in Sekunden bevor Login-Benachrichtigungen zugestellt werden
# (damit der Spieler den Server-Wechsel abgeschlossen hat)
forum.login_delay_seconds=3
# ===========================
# COMMAND BLOCKER
# ===========================
commandblocker.enabled=true
commandblocker.bypass.permission=commandblocker.bypass
# ===========================
# SERVER KONFIGURATION
# ===========================
# Hier legst du für jeden Server alles fest:
# 1. Den Anzeigenamen für den Chat (z.B. &bLobby)
# 2. Die Server ID für WordPress (z.B. id=1)
# 3. Das Secret für WordPress (z.B. secret=...)
# Server 1: Lobby
server.Lobby=&bLobby
server.Lobby.id=64
server.Lobby.secret=GeheimesWortFuerLobby789
# Server 1: Citybuild
server.citybuild=&bCitybuild
server.citybuild.id=67
server.citybuild.secret=GeheimesWortFuerCitybuild789
# Server 2: Survival
server.survival=&aSurvival
server.survival.id=68
server.survival.secret=GeheimesWortFuerSurvival789
# Server 3: SkyBlock
server.skyblock=&dSkyBlock
server.skyblock.id=3
server.skyblock.secret=GeheimesWortFuerSkyBlock789
# ===========================
# AUTOMESSAGE
# ===========================
# Aktiviert den automatischen Nachrichten-Rundruf
automessage.enabled=true
# Zeitintervall in Sekunden (Standard: 300 = 5 Minuten)
automessage.interval=300
# Optional: Ein Prefix, das VOR jede Nachricht aus der Datei gesetzt wird.
# Wenn du das Prefix bereits IN der messages.txt hast, lass dieses Feld einfach leer.
automessage.prefix=
# Der Name der Datei, in der die Nachrichten stehen (liegt im Plugin-Ordner)
automessage.file=messages.txt
# ===========================
# ECONOMY (Serverübergreifendes Geld)
# ===========================
# Alle Server (SurvivalPlus + StatusAPI/BungeeCord) müssen dieselbe Datenbank nutzen.
# Die Tabelle bc_accounts wird automatisch erstellt.
economy.mysql.host=localhost
economy.mysql.port=3306
economy.mysql.database=survivalplus
economy.mysql.username=root
economy.mysql.password=
economy.start-balance=500.0

View File

@@ -0,0 +1,8 @@
# Willkommensnachrichten, die zufällig gesendet werden, wenn ein Spieler joint.
# %player% wird durch den Spielernamen ersetzt.
welcome-messages:
- "&aWillkommen, %player%! Viel Spaß auf unserem Server!"
- "&aHey %player%, schön dich hier zu sehen! Los geht's!"
- "&a%player%, dein Abenteuer beginnt jetzt! Viel Spaß!"
- "&aWillkommen an Bord, %player%! Entdecke den Server!"
- "&a%player%, herzlich willkommen! Lass uns loslegen!"