# 🎮 SurvivalMechanics
![Minecraft](https://img.shields.io/badge/Minecraft-1.19+-green.svg) ![Spigot](https://img.shields.io/badge/Spigot-1.19+-orange.svg) ![Version](https://img.shields.io/badge/Version-1.1--FIXED-blue.svg) **Survival-Mechaniken Addon für [Survival Plus](https://git.viper.ipv64.net/M_Viper/Survival-Plus)** Erweitert Survival Plus um realistische Überlebenssysteme: Hunger, Durst, Müdigkeit, Temperatur, Ausdauer, Verletzlichkeit und Hygiene [Installation](#-installation) • [Konfiguration](#-konfiguration) • [Systeme](#-die-7-survival-systeme) • [FAQ](#-faq)
--- ## 📋 Was ist SurvivalMechanics? SurvivalMechanics ist ein **Addon-Plugin** für [Survival Plus](https://git.viper.ipv64.net/M_Viper/Survival-Plus), das **7 realistische Survival-Systeme** hinzufügt. Spieler müssen jetzt nicht nur ihre Gesundheit im Auge behalten, sondern auch: - 🍞 **Hunger** - Nimmt beim Sprinten und Kämpfen ab - 💧 **Durst** - Kritisch in Wüsten-Biomen - 😴 **Müdigkeit** - Nachts 2x schnellerer Abbau - 🌡️ **Temperatur** - Erfrieren oder Überhitzen je nach Biom - 💪 **Ausdauer** - Benötigt für Sprinten und Kämpfen - 🩹 **Verletzlichkeit** - Mehr Schaden bei Verletzungen - 🧼 **Hygiene** - Wasser reinigt, Sümpfe verschmutzen > **Hinweis:** Dieses Plugin ist ein **Addon** für Survival Plus und erweitert dessen Funktionalität! --- ## 📦 Installation ### Voraussetzungen - ✅ Minecraft Server 1.19+ (Spigot/Paper) - ✅ Java 17+ - ✅ **[Survival Plus](https://git.viper.ipv64.net/M_Viper/Survival-Plus)** (Haupt-Plugin) ### Installationsschritte 1. **Stelle sicher dass Survival Plus installiert ist** ``` /plugins # Sollte "Survival Plus" in grün anzeigen ``` 2. **Download SurvivalMechanics** - Lade die neueste `SurvivalMechanics.jar` herunter 3. **Plugin installieren** ```bash # Kopiere die JAR in deinen plugins Ordner cp SurvivalMechanics.jar /server/plugins/ ``` 4. **Server neu starten** ```bash # NICHT /reload verwenden! stop # Server neu starten ``` 5. **Überprüfen** ``` /plugins # Sollte jetzt "SurvivalMechanics" in grün zeigen ``` 6. **Konfiguration anpassen** (siehe unten) --- ## ⚙️ Konfiguration ### 📁 Config-Dateien Nach dem ersten Start werden folgende Dateien erstellt: ``` plugins/SurvivalMechanics/ ├── config.yml # Haupt-Konfiguration (HIER anpassen!) ├── lang.yml # Alle Nachrichten & Texte └── playerdata.yml # Spieler-Daten (automatisch generiert) ``` ### 🎮 Schwierigkeit einstellen Du kannst die Schwierigkeit komplett nach deinen Wünschen anpassen:
👶 Einfacher / Casual Server Öffne `config.yml` und ändere: ```yaml hunger: decrease-rate: 0.25 # Halb so schnell (Standard: 0.5) food-recovery-rate: 50 # 2 Nahrungen für voll (Standard: 34 = 3 Nahrungen) death-delay: 120 # 2 Minuten Warnung (Standard: 60) thirst: decrease-rate: 0.4 # Halb so schnell (Standard: 0.8) water-regen-rate: 60 # Mehr Regeneration (Standard: 50) fatigue: night-multiplier: 1.2 # Nur 20% schneller nachts (Standard: 2.0 = doppelt!) stamina: regen-rate: 5 # Schnellere Regeneration (Standard: 3) temperature: death-delay: 120 # Mehr Zeit (Standard: 60) # Server neu starten! ``` **Effekt:** Spieler überleben länger, brauchen weniger Ressourcen
😈 Schwieriger / Hardcore Server Öffne `config.yml` und ändere: ```yaml hunger: decrease-rate: 1.0 # Doppelt so schnell (Standard: 0.5) food-recovery-rate: 25 # 4 Nahrungen für voll (Standard: 34) death-delay: 30 # Nur 30 Sekunden (Standard: 60) thirst: decrease-rate: 1.2 # 50% schneller (Standard: 0.8) hot-biome-multiplier: 2.0 # Noch schneller in Wüsten (Standard: 1.5) fatigue: night-multiplier: 3.0 # Nachts 3x schneller (Standard: 2.0) decrease-rate: 1.5 # Schneller müde (Standard: 1.0) temperature: cold-damage: 1.0 # Doppelter Schaden (Standard: 0.5) hot-damage: 1.0 # Doppelter Schaden (Standard: 0.5) death-delay: 30 # Weniger Zeit (Standard: 60) vulnerability: recovery-rate: 1 # Langsame Heilung (Standard: 3) # Server neu starten! ``` **Effekt:** Extreme Herausforderung, Spieler müssen ständig aufpassen
⚔️ PVP Server Öffne `config.yml` und ändere: ```yaml hunger: combat-multiplier: 3 # Kämpfen kostet viel Hunger (Standard: 2) stamina: combat-multiplier: 3 # Kämpfen kostet viel Ausdauer (Standard: 2) min-to-sprint: 30 # Mehr Stamina zum Sprinten (Standard: 20) regen-rate: 2 # Langsamere Regen (Standard: 3) vulnerability: increase-rate: 5 # Schneller verletzt (Standard: 3) recovery-rate: 1 # Langsame Heilung (Standard: 3) critical-hit-multiplier: 2 # Mehr Schaden bei Verwundeten (Standard: 1.5) # Server neu starten! ``` **Effekt:** Kämpfe sind anspruchsvoller, Regeneration wichtig
### 🎨 Scoreboard anpassen Das Scoreboard zeigt alle Stats live an. Du kannst Farben und Layout ändern: ```yaml display: bar-length: 5 # Länge der Balken (█████) bar-filled: "█" # Gefülltes Symbol bar-empty: "▒" # Leeres Symbol update-interval: 100 # Update alle 5 Sekunden (100 Ticks) # Farben ändern (Minecraft Farbcodes) hunger-color: "§6" # §6 = Gold (Standard) thirst-color: "§b" # §b = Aqua (Standard) fatigue-color: "§7" # §7 = Grau temperature-color: "§c" # §c = Rot stamina-color: "§a" # §a = Grün vulnerability-color: "§4" # §4 = Dunkelrot hygiene-color: "§9" # §9 = Blau ``` **Farbcodes:** - `§0` = Schwarz | `§1` = Dunkelblau | `§2` = Dunkelgrün - `§3` = Dunkelaqua | `§4` = Dunkelrot | `§5` = Dunkellila - `§6` = Gold | `§7` = Grau | `§8` = Dunkelgrau - `§9` = Blau | `§a` = Grün | `§b` = Aqua - `§c` = Rot | `§d` = Lila | `§e` = Gelb | `§f` = Weiß ### 📝 Nachrichten anpassen Alle Nachrichten sind in `lang.yml` konfigurierbar: ```yaml # Beispiel: Hunger-Nachrichten hunger: critical: "&4Dein Körper schwächt durch Hunger!" warning: "&4Du bist dem Verhungern nahe!" fed: "&aDu fühlst dich satt und gestärkt!" death: "&4Du bist verhungert!" # Beispiel: Scoreboard-Bezeichnungen scoreboard: title: "&6Survival" hunger: "HP" # Hunger thirst: "TH" # Durst (Thirst) fatigue: "FT" # Müdigkeit (Fatigue) temperature: "TP" # Temperatur stamina: "ST" # Ausdauer (Stamina) vulnerability: "VL" # Verletzlichkeit hygiene: "HY" # Hygiene ``` --- ## 🎯 Die 7 Survival-Systeme ### 1️⃣ Hunger System **Was passiert:** - Hunger nimmt alle 60 Sekunden ab (konfigurierbar) - **Sprinten** verbraucht 50% mehr Hunger - **Kämpfen** verbraucht 2x mehr Hunger - **Nachts** 20% mehr Hunger-Verbrauch - **Bei Hunger ≤20:** Schaden (0.5 HP/Tick) - **Bei Hunger = 0:** Tod nach 60 Sekunden **Wie regenerieren:** - 🍞 Essen von konfigurierten Nahrungsmitteln - 🛏️ Schlafen reduziert Hunger um 40 **Config-Werte:** ```yaml hunger: decrease-rate: 0.5 # Wie schnell Hunger abnimmt food-recovery-rate: 34 # Hunger pro Nahrung (34 = 3 Items für voll) critical-threshold: 20 # Ab hier kritisch death-enabled: true # Tod aktivieren/deaktivieren ``` ### 2️⃣ Durst System **Was passiert:** - Durst nimmt alle 60 Sekunden ab - **Heiße Biome** (Wüste, Savanne): 50% schnellerer Abbau - **Regen:** Regeneriert +2 Durst - **Bei Durst ≤20:** Schaden (0.5 HP/Tick) - **Bei Durst = 0:** Tod nach 60 Sekunden **Wie regenerieren:** - 🧪 Wasser-Tränke trinken (+50 pro Trank) - 🌧️ Im Regen stehen - 🛏️ Schlafen reduziert Durst um 40 **Config-Werte:** ```yaml thirst: decrease-rate: 0.8 # Wie schnell Durst abnimmt water-regen-rate: 50 # Durst pro Trank (50 = 2 Tränke für voll) hot-biome-multiplier: 1.5 # Multiplikator in Wüsten ``` ### 3️⃣ Müdigkeit System **Was passiert:** - Müdigkeit nimmt alle 60 Sekunden ab - **Nachts:** 2x schnellerer Abbau! - **Sprinten/Schwimmen:** Schnellerer Abbau - **Klettern über Y=100:** Noch schnellerer Abbau - **Bei Müdigkeit ≤20:** Langsamkeit + Blindheit Effekte - **Bei Müdigkeit = 0:** Tod nach 60 Sekunden **Wie regenerieren:** - 🛏️ **Schlafen stellt Müdigkeit komplett wieder her!** **Config-Werte:** ```yaml fatigue: decrease-rate: 1.0 # Basis-Abbau night-multiplier: 2.0 # Nachts doppelt so schnell! activity-multiplier: 1.0 # Bei Aktivitäten ``` **⚠️ Wichtig:** Spieler MÜSSEN regelmäßig schlafen! ### 4️⃣ Temperatur System **Was passiert:** - Temperatur-Skala: **0** (erfroren) → **50** (angenehm) → **100** (überhitzt) - **Kalte Biome** (Schnee, Eis): Temperatur sinkt - **Heiße Biome** (Wüste, Savanne): Temperatur steigt - **Regen:** Kühlt ab - **Nachts in kalten Biomen:** Noch kälter - **Bei Temp ≤20 oder ≥80:** Schaden - **Bei Temp = 0 oder 100:** Tod nach 60 Sekunden **Normale Biome:** - Temperatur normalisiert sich langsam auf 50 **Config-Werte:** ```yaml temperature: max: 100 # WICHTIG: Muss 100 sein! initial: 50 # Startwert (50 = angenehm) decrease-rate: 0.6 # Änderungsrate cold-biomes: # Liste kalter Biome - SNOWY_TAIGA - ICE_SPIKES hot-biomes: # Liste heißer Biome - DESERT - BADLANDS ``` ### 5️⃣ Ausdauer System **Was passiert:** - Ausdauer wird bei Aktionen verbraucht - **Sprinten:** Kostet Ausdauer (unmöglich bei <20) - **Springen:** Kostet Ausdauer - **Kämpfen:** Kostet viel Ausdauer (nur Angreifer!) - **Klettern über Y=100:** Kostet mehr - **Regeneriert passiv** (+3 alle 60 Sekunden) - **Bei niedrigem Hunger/Durst/Müdigkeit:** Nur 50% Regeneration **Config-Werte:** ```yaml stamina: regen-rate: 3 # Passive Regeneration min-to-sprint: 20 # Mindest-Ausdauer zum Sprinten combat-multiplier: 2 # Kampf-Verbrauch ``` ### 6️⃣ Verletzlichkeit System **Was passiert:** - Verletzlichkeit steigt bei jedem Treffer (+3) - **Bei Verletzlichkeit ≥80:** 50% mehr Schaden genommen! - **Bei niedrigem Hunger/Durst:** Verletzlichkeit steigt schneller - **Regeneriert langsam** (-3 alle 60 Sekunden) **Wie heilen:** - 🍖 Essen heilt Verletzlichkeit (-34 pro Nahrung) **Config-Werte:** ```yaml vulnerability: increase-rate: 3 # Pro Treffer recovery-rate: 3 # Passive Heilung food-recovery-rate: 34 # Heilung pro Nahrung critical-hit-multiplier: 1.5 # Schaden-Multiplikator bei ≥80 ``` ### 7️⃣ Hygiene System **Was passiert:** - Hygiene nimmt alle 60 Sekunden ab - **Schmutzige Biome** (Sümpfe): 2x schnellerer Abbau - **Graben** (Dirt/Grass): Macht schmutzig - **Klettern über Y=100:** Macht schmutzig - **Bei hoher Verletzlichkeit:** Schnellerer Abbau - **Bei Hygiene ≤20:** Schwäche-Effekt - **Bei Hygiene = 0:** Tod nach 60 Sekunden (Infektion!) **Wie reinigen:** - 💧 **Ins Wasser gehen** (+6 pro Bewegung im Wasser) **Config-Werte:** ```yaml hygiene: decrease-rate: 0.5 # Basis-Abbau water-recovery-rate: 6 # Regeneration im Wasser dirty-biomes: # Liste schmutziger Biome - SWAMP - MANGROVE_SWAMP ``` --- ## 📊 Scoreboard Erklärung Spieler sehen live ein Scoreboard mit allen Stats: ``` ╔══════════════════╗ ║ §6Survival ║ ╠══════════════════╣ ║ ║ ║ §6HP: §6█████§r §aSatt ║ ← Hunger (100%) ║ §bTH: §b████▒§r §bMild ║ ← Durst (80%) ║ ║ ║ §7FT: §7███▒▒§r §7Müde ║ ← Müdigkeit (60%) ║ §cTP: §c███▒▒§r §cKalt ║ ← Temperatur (30°C) ║ ║ ║ §aST: §a████▒§r §aGut ║ ← Ausdauer (80%) ║ §4VL: §4█▒▒▒▒§r §aGesund ║ ← Verletzlichkeit (20%) ║ §9HY: §9███▒▒§r §9OK ║ ← Hygiene (60%) ╚══════════════════╝ ``` **Status-Bedeutungen:** - **Grün** (Satt, Gut, Gesund): Alles OK - **Gelb** (Mild): Noch OK, aber Vorsicht - **Rot** (Kritisch, Müde): DRINGEND handeln! --- ## ❓ FAQ für Admins
Wie ändere ich die Schwierigkeit? Bearbeite `config.yml` und ändere die `decrease-rate` Werte: - **Leichter:** Werte halbieren (z.B. 0.5 → 0.25) - **Schwieriger:** Werte verdoppeln (z.B. 0.5 → 1.0) Dann Server neu starten!
Können bestimmte Spieler ausgenommen werden? Aktuell nein. Alle Spieler sind betroffen. Permissions sind für zukünftige Versionen geplant. **Workaround:** Erstelle eine separate Welt ohne SurvivalMechanics für VIPs.
Spieler beschweren sich über zu schnellen Tod - was tun? Erhöhe die `death-delay` Werte in der Config: ```yaml hunger: death-delay: 120 # Von 60 auf 120 Sekunden (2 Minuten) thirst: death-delay: 120 # ... für alle Systeme ```
Kann ich einzelne Systeme deaktivieren? Ja! Setze `death-enabled: false` für jedes System: ```yaml hunger: death-enabled: false # Kein Tod durch Hunger # Oder mache das System sehr einfach: hunger: decrease-rate: 0.1 # Sehr langsam critical-threshold: 5 # Erst bei 5 kritisch ```
Werden Stats nach Server-Neustart gespeichert? Ja! Alle Stats werden in `playerdata.yml` gespeichert und beim Beitritt wiederhergestellt.
Was passiert wenn ein Spieler stirbt? Standardmäßig (`reset-on-death: true`) werden alle Stats auf die `initial` Werte zurückgesetzt: - Hunger: 80 - Durst: 80 - Müdigkeit: 100 - Temperatur: 50 - etc. Kann in der Config geändert werden!
Wie oft aktualisieren sich die Stats? Alle 60 Sekunden (fest kodiert). Die `decrement-interval` Werte in der Config werden aktuell ignoriert. Dies wird in einer zukünftigen Version anpassbar sein.
Performance-Probleme? SurvivalMechanics ist sehr performant: - Stats werden nur alle 60 Sekunden aktualisiert - Events werden effizient verarbeitet - Kein unnötiges Logging Typische Performance: <1% CPU-Auslastung selbst mit 50+ Spielern.
Kann ich die Config ohne Server-Neustart neu laden? Aktuell nein. Nach Config-Änderungen: ```bash stop # Server neu starten ``` **NICHT** `/reload` verwenden - kann zu Problemen führen! Ein `/survival reload` Command ist für Version 1.2 geplant.
--- ## ⚠️ Wichtige Hinweise ### ⚠️ Config-Werte die NICHT funktionieren Folgende Config-Werte werden **ignoriert** (werden in v1.2 gefixt): - `decrement-interval` - Alle Systeme nutzen fest 60 Sekunden - `temperature.increase-rate` - Nur `decrease-rate` wird verwendet ### ⚠️ KRITISCH: temperature.max ```yaml temperature: max: 100 # MUSS 100 sein! Nicht ändern! ``` Wenn du `max: 50` setzt, funktioniert das Temperatur-System **komplett falsch**! ### ⚠️ Biom-Namen Verwende korrekte Biom-Namen: - ✅ `MANGROVE_SWAMP` (korrekt) - ❌ `MUDDY_SWAMP` (existiert nicht!) ### 💾 Backup **Erstelle IMMER ein Backup vor Config-Änderungen!** ```bash cp -r plugins/SurvivalMechanics plugins/SurvivalMechanics.backup ``` --- ## 🔄 Updates ### Von Version 1.0 zu 1.1-FIXED **WICHTIG - Config-Änderungen erforderlich!** 1. **Backup erstellen:** ```bash cp plugins/SurvivalMechanics/config.yml config.yml.backup ``` 2. **temperature.max ändern:** ```yaml # VORHER (FALSCH!) temperature: max: 50 # NACHHER (KORREKT!) temperature: max: 100 ``` 3. **Biom-Namen korrigieren:** ```yaml # VORHER hygiene: dirty-biomes: - MUDDY_SWAMP # Existiert nicht! # NACHHER hygiene: dirty-biomes: - MANGROVE_SWAMP ``` 4. **Server neu starten** --- ## 📞 Support ### Bug gefunden oder Frage? - 🐛 **Bugs:** [Issue auf Git erstellen](https://git.viper.ipv64.net/M_Viper/Survival-Plus/issues) - 💬 **Fragen:** Kontaktiere den Server-Admin - 📖 **Dokumentation:** Diese README ### Logs sammeln Bei Problemen, sammle diese Infos: ```bash # 1. Plugin-Version prüfen /plugins # 2. Console-Log kopieren # Letzten 100 Zeilen aus latest.log # 3. Config anhängen cat plugins/SurvivalMechanics/config.yml ``` --- ## 📄 Lizenz MIT License - Frei verwendbar für private und kommerzielle Server ---
**Teil des [Survival Plus](https://git.viper.ipv64.net/M_Viper/Survival-Plus) Ökosystems** Made with ❤️ by Viper