- Max-Level 35, 8 Skills pro Klasse, Level-Gates - Klassen-Grenzen: Krieger nur Nahkampf, Schurke Nah+Fern, Magier nur Magie - Wut-Ressource: aufgebaut durch Heavy Strike - Alle 8 Krieger-Skills mit Details und Skill-Memory Mutationen - Durchbeißen → Schildwall (mit Schild) / Trotz (ohne Schild) - Berserker Ultimate: 10s Berserkermodus + 2-3s Crash - Schurke und Magier als Platzhalter Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
260 lines
8.4 KiB
Markdown
260 lines
8.4 KiB
Markdown
# Charakter-System
|
|
### DungeonCrawler — Design Document v1.0
|
|
|
|
---
|
|
|
|
## 1. Klassen
|
|
|
|
### CharacterClass (character_class.gd)
|
|
Resource-Klasse die eine spielbare Klasse definiert.
|
|
|
|
| Property | Typ | Beschreibung |
|
|
|---|---|---|
|
|
| class_name_de | String | Deutscher Klassenname |
|
|
| main_stat | MainStat | STRENGTH, AGILITY oder INTELLIGENCE |
|
|
| base_strength/agility/intelligence/stamina | int | Basis-Stats auf Level 1 |
|
|
| strength/agility/intelligence/stamina_per_level | float | Stat-Zuwachs pro Level |
|
|
| unarmed_min_damage | int | Unbewaffneter Mindestschaden |
|
|
| unarmed_max_damage | int | Unbewaffneter Maximalschaden |
|
|
| unarmed_attack_speed | float | Unbewaffnete Angriffsgeschwindigkeit |
|
|
| resource_type | ResourceType | NONE, MANA, RAGE, ENERGY |
|
|
| base_resource | int | Basis-Ressource auf Level 1 |
|
|
|
|
### Verfügbare Klassen (classes/)
|
|
|
|
| Klasse | Main-Stat | Ressource | STR | AGI | INT | STA | Unbewaffnet |
|
|
|---|---|---|---|---|---|---|---|
|
|
| Krieger | Stärke | Keine | 15 | 8 | 5 | 12 | 2-4 Schaden, 1.8s |
|
|
| Schurke | Beweglichkeit | Energie (100) | 8 | 15 | 7 | 10 | 1-3 Schaden, 1.5s |
|
|
| Magier | Intelligenz | Mana (100 + INT*5) | 5 | 8 | 15 | 8 | 1-2 Schaden, 2.0s |
|
|
|
|
### Klassenauswahl (class_selection_menu.gd)
|
|
Wird nach dem Hauptmenü angezeigt. Spieler wählt eine Klasse, danach wird Startausrüstung angelegt.
|
|
|
|
---
|
|
|
|
## 2. Stats
|
|
|
|
### Grundstats (steigen automatisch beim Level-up)
|
|
|
|
Grundstats steigen bei jedem Level-up automatisch basierend auf klassenspezifischen Zuwachsraten.
|
|
|
|
| Stat | Wirkung |
|
|
|---|---|
|
|
| **Stärke** | Physischer Schaden (Krieger/Schurke Main-Stat Bonus) |
|
|
| **Beweglichkeit** | Physischer Schaden (Schurke Main-Stat Bonus), Angriffsgeschwindigkeit |
|
|
| **Intelligenz** | Magischer Schaden, Mana-Pool (INT * 5) |
|
|
| **Ausdauer** | HP-Pool (Ausdauer * 10) |
|
|
|
|
**Konstanten:**
|
|
- `HP_PER_STAMINA = 10` — HP pro Stamina-Punkt
|
|
- `MANA_PER_INT = 5` — Mana pro Intelligenz-Punkt
|
|
- `DAMAGE_PER_MAIN_STAT = 0.5` — Zusatzschaden pro Main-Stat-Punkt
|
|
|
|
### Zusatzstats (nur über freie Punkte)
|
|
|
|
Zusatzstats steigen **nicht** automatisch. Sie können nur durch **frei verteilbare Punkte**
|
|
beim Level-up erhöht werden. Jede Klasse hat unterschiedliche Startwerte.
|
|
|
|
| Stat | Wirkung |
|
|
|---|---|
|
|
| **Glück** | Crit-Chance, Doppeltreffer-Chance, Fusions-RNG (Skill-System), Droprate, Sockel-Resonanz |
|
|
| **Willenskraft** | Magische Resistenz, Mana-Regeneration, Debuff-Dauer verkürzen |
|
|
| **Wahrnehmung** | Fallen erkennen, versteckte Gegner sehen, Ausweich-Chance |
|
|
| **Weisheit** | XP-Bonus, Skill-XP schneller, Resonanz-Bonus (Skill-System) |
|
|
|
|
### Zusatzstats Startwerte nach Klasse
|
|
|
|
| Stat | Krieger | Schurke | Magier |
|
|
|---|---|---|---|
|
|
| Glück | 3 | 5 | 2 |
|
|
| Willenskraft | 2 | 2 | 5 |
|
|
| Wahrnehmung | 3 | 5 | 3 |
|
|
| Weisheit | 2 | 3 | 5 |
|
|
|
|
### Freie Punkte
|
|
|
|
- **2 freie Punkte pro Level-up**
|
|
- Können frei auf Zusatzstats verteilt werden
|
|
- Einmal verteilt, nicht umverteilbar *(oder: Respec beim NPC gegen Gold?)*
|
|
|
|
---
|
|
|
|
## 3. Klassen-Ressourcen
|
|
|
|
Jede Klasse kann eine eigene Ressource haben:
|
|
|
|
| Ressource | Farbe | Skalierung | Klasse |
|
|
|---|---|---|---|
|
|
| Keine | - | - | Krieger |
|
|
| Mana | Blau | base_resource + INT * 5 | Magier |
|
|
| Energie | Gelb | Fix (base_resource) | Schurke |
|
|
| Wut | Rot | Fix (base_resource) | (geplant) |
|
|
|
|
Die Ressourcen-Leiste wird nur angezeigt wenn die Klasse eine Ressource hat.
|
|
|
|
---
|
|
|
|
## 4. Level-System
|
|
|
|
- **XP-Kurve:** Level N benötigt `100 * 1.5^(N-2)` XP
|
|
- **Stats pro Level:** Grundstats basierend auf Klassen-Zuwachsraten (automatisch)
|
|
- **Freie Punkte:** +2 pro Level für Zusatzstats
|
|
- **HP bei Level-Up:** Werden vollständig aufgefüllt (HP + Klassen-Ressource)
|
|
- **XP-Vergabe:** Gegner geben XP basierend auf `xp_reward` Export-Variable
|
|
- **Character Panel:** Aktualisiert sich automatisch bei Level-Up
|
|
|
|
---
|
|
|
|
## 5. Kampf-System
|
|
|
|
### Schadensberechnung
|
|
1. **Basis-Schaden:** `randi_range(min_damage, max_damage)`
|
|
2. **Stat-Bonus:** `main_stat * DAMAGE_PER_MAIN_STAT` (0.5 pro Punkt)
|
|
3. **Rüstung:** `damage * 100 / (100 + armor)`
|
|
4. **Level-Differenz:** `±10% pro Level, max ±50%`
|
|
5. **Mindestschaden:** Immer mindestens 1
|
|
|
|
### Autoattack
|
|
- Startet per RMB-Klick auf Gegner oder manuell per Taste 1
|
|
- Greift automatisch an sobald GCD abgelaufen und Ziel in Reichweite
|
|
- Stoppt wenn Ziel stirbt oder abvisiert wird
|
|
- Startet neu wenn man wieder in Range kommt (solange aktiv)
|
|
|
|
### DPS-Berechnung
|
|
`DPS = (Durchschnittsschaden + Stat-Bonus) / GCD`
|
|
|
|
### Klassen-Grenzen
|
|
|
|
| Klasse | Nahkampf | Fernkampf | Magie |
|
|
|---|---|---|---|
|
|
| Krieger | ✅ | ❌ | ❌ |
|
|
| Schurke | ✅ | ✅ (physisch) | ❌ |
|
|
| Magier | ❌ | ✅ (magisch) | ✅ |
|
|
|
|
- Skill-Fusion nur innerhalb der eigenen Klasse
|
|
- Multiclass: geplant für späteres Addon, aktuell nicht im Scope
|
|
|
|
### Max-Level & Skill-Progression
|
|
|
|
- **Max-Level:** 35
|
|
- **Skills gesamt:** 8 pro Klasse
|
|
- **Freischaltung:** durch Level-Gates (keine Skill-Punkte — Skills entwickeln sich eigenständig)
|
|
- **Skill-Unlock Verteilung:**
|
|
|
|
```
|
|
Level 1: Skill 1 + Skill 2 (Basis-Kit)
|
|
Level 5: Skill 3
|
|
Level 10: Skill 4
|
|
Level 15: Skill 5
|
|
Level 20: Skill 6
|
|
Level 28: Skill 7
|
|
Level 35: Skill 8 (Ultimate)
|
|
```
|
|
|
|
---
|
|
|
|
## 6. Krieger — Skills
|
|
|
|
**Ressource: Wut** (rot)
|
|
- Aufgebaut durch: Treffer austeilen (+10), Treffer einstecken (+15)
|
|
- Verfällt außerhalb des Kampfes langsam
|
|
- Einziger Wut-Generator: Heavy Strike
|
|
|
|
```
|
|
Level 1: Autoattack — Basis-Schaden, kein Cooldown, keine Wut
|
|
Level 1: Heavy Strike — Schaden + Wut generieren, kurzer CD (2-3s)
|
|
Level 5: Tektonischer Schlag — AoE um Spieler, wenig Schaden, Slow, kostet Wut
|
|
Level 10: Durchbeißen — Defensiv-Skill, mutiert durch Spielstil
|
|
Level 15: Blutrausch — Einzelziel, Sofortschaden + Blutung DOT, kostet Wut
|
|
Level 20: Wirbelwind — AoE Drehangriff, hoher Schaden, kostet viel Wut
|
|
Level 28: Zornfesseln — Zieht Gegner heran + Schlag, kostet Wut
|
|
Level 35: Berserker — Ultimate: 10s Berserkermodus + 2-3s Crash danach
|
|
```
|
|
|
|
### Skill-Details
|
|
|
|
#### Autoattack
|
|
- Basis-Schaden, kein Cooldown, keine Wut-Kosten
|
|
- Wird durch Berserker beschleunigt
|
|
|
|
#### Heavy Strike
|
|
- Einziger Wut-Generator
|
|
- Kurzer Cooldown (2-3s), löst GCD aus
|
|
- Skill-Memory Mutationen:
|
|
- Oft in Folge gespielt → **Raserei**: mehr Wut pro Hit
|
|
- Oft als Opener → **Erster Blut**: erster Hit im Kampf doppelte Wut
|
|
- Oft bei vollem Wut-Bar → **Überladen**: Overflow gibt Schadens-Bonus
|
|
|
|
#### Tektonischer Schlag
|
|
- AoE Bodenschlag um den Spieler
|
|
- Weniger Schaden als Wirbelwind, dafür Slow-Effekt auf alle Getroffenen
|
|
- Kontroll-Skill, nicht Damage-Skill
|
|
- Skill-Memory Mutationen:
|
|
- Oft gegen viele Gegner → Slow-Radius wächst
|
|
- Oft bei low HP → gibt kurzen Schutz zusätzlich zum Slow
|
|
|
|
#### Durchbeißen
|
|
- Defensiv-Skill, mutiert je nach Ausrüstung und Spielstil
|
|
- **Mit Schild gespielt → Schildwall**: blockiert Schaden komplett, kein HP-Kosten
|
|
- **Ohne Schild gespielt → Trotz**: Schadensreduktion skaliert mit fehlendem HP
|
|
|
|
#### Blutrausch
|
|
- Einzelziel, Sofortschaden + Blutung (DOT über mehrere Sekunden)
|
|
- Kostet Wut
|
|
- Skill-Memory Mutationen:
|
|
- Oft bei hoher Wut → mehr Sofortschaden
|
|
- Oft bei low HP → Blutung heilt dich anteilig zurück
|
|
- Oft als Finisher → Blutung explodiert bei Tod des Gegners
|
|
|
|
#### Wirbelwind
|
|
- AoE Drehangriff, trifft alle um den Spieler
|
|
- Hoher Schaden, kostet viel Wut
|
|
- Counterpart zu Tektonischem Schlag: pure DPS statt Kontrolle
|
|
|
|
#### Zornfesseln
|
|
- Zieht einen Gegner heran, dann automatischer Schlag
|
|
- Kostet Wut
|
|
- Gut kombinierbar mit anderen AoE-Skills
|
|
|
|
#### Berserker (Ultimate)
|
|
- **Kosten:** Gesamte Wut (Minimum 50)
|
|
- **Während aktiv (10s):**
|
|
- Autoattack deutlich schneller
|
|
- Alle Cooldowns reduziert
|
|
- Weniger Schaden nehmen
|
|
- Wut verfällt nicht
|
|
- **Crash danach (2-3s):**
|
|
- Mehr Schaden nehmen
|
|
- Langsamere Bewegung
|
|
- Skills gesperrt
|
|
- Skill-Memory Mutationen:
|
|
- Oft ohne Crash überlebt → Crash-Dauer sinkt
|
|
- Oft im Crash getroffen → Berserker-Dauer +2s, Crash bleibt
|
|
- Oft bei low HP aktiviert → mehr Schadensreduktion während aktiv
|
|
|
|
---
|
|
|
|
## 7. Schurke — Skills *(in Planung)*
|
|
|
|
## 8. Magier — Skills *(in Planung)*
|
|
|
|
---
|
|
|
|
## 9. Kampf-System
|
|
|
|
### Schadensberechnung
|
|
|
|
---
|
|
|
|
## 10. Character Panel (character_panel.gd, C-Taste)
|
|
|
|
Zeigt zwei Spalten:
|
|
- **Stats-Spalte:** Stärke, Beweglichkeit, Intelligenz, Ausdauer, Rüstung, HP + Zusatzstats (Glück, Willenskraft, Wahrnehmung, Weisheit)
|
|
- **Equipment-Spalte:** Icon-Grid mit Tooltips bei Hover, Waffenschaden + DPS
|
|
|
|
Unbewaffnet: Zeigt klassenabhängige Schadenswerte.
|
|
|
|
---
|
|
|
|
*DungeonCrawler — Intern, Stand März 2026*
|