Files
SurvivalMechanics/readme.md
2026-01-28 20:58:54 +00:00

635 lines
17 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🎮 SurvivalMechanics
<div align="center">
![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)
</div>
---
## 📋 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:
<details>
<summary><b>👶 Einfacher / Casual Server</b></summary>
Ö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
</details>
<details>
<summary><b>😈 Schwieriger / Hardcore Server</b></summary>
Ö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
</details>
<details>
<summary><b>⚔️ PVP Server</b></summary>
Ö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
</details>
### 🎨 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
<details>
<summary><b>Wie ändere ich die Schwierigkeit?</b></summary>
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!
</details>
<details>
<summary><b>Können bestimmte Spieler ausgenommen werden?</b></summary>
Aktuell nein. Alle Spieler sind betroffen. Permissions sind für zukünftige Versionen geplant.
**Workaround:** Erstelle eine separate Welt ohne SurvivalMechanics für VIPs.
</details>
<details>
<summary><b>Spieler beschweren sich über zu schnellen Tod - was tun?</b></summary>
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
```
</details>
<details>
<summary><b>Kann ich einzelne Systeme deaktivieren?</b></summary>
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
```
</details>
<details>
<summary><b>Werden Stats nach Server-Neustart gespeichert?</b></summary>
Ja! Alle Stats werden in `playerdata.yml` gespeichert und beim Beitritt wiederhergestellt.
</details>
<details>
<summary><b>Was passiert wenn ein Spieler stirbt?</b></summary>
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!
</details>
<details>
<summary><b>Wie oft aktualisieren sich die Stats?</b></summary>
Alle 60 Sekunden (fest kodiert). Die `decrement-interval` Werte in der Config werden aktuell ignoriert.
Dies wird in einer zukünftigen Version anpassbar sein.
</details>
<details>
<summary><b>Performance-Probleme?</b></summary>
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.
</details>
<details>
<summary><b>Kann ich die Config ohne Server-Neustart neu laden?</b></summary>
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.
</details>
---
## ⚠️ 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
---
<div align="center">
**Teil des [Survival Plus](https://git.viper.ipv64.net/M_Viper/Survival-Plus) Ökosystems**
Made with ❤️ by Viper
</div>