Commit graph

81 commits

Author SHA1 Message Date
b90b816063 AudioGen: Auto-Trim Stille für besseres Looping
Neue Option 'trim_silence' (Ja/Nein) im AudioGen Node.
Schneidet automatisch Stille am Anfang und Ende ab
(Threshold -40dB, 10ms Padding). Default: Ja.
Besseres Loop-Verhalten da keine Pause mehr am Anfang.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 19:52:45 +01:00
8768edc16c AudioManager: Einzelne Dateien löschen per X-Button
API-Endpoint /audiocraft/delete im Backend. Löscht die Datei
und die zugehörige upsampled Version. Gelöschte Zeilen werden
ausgegraut. Stoppt Wiedergabe falls die Datei gerade spielt.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 19:46:50 +01:00
5481a1e92f AudioManager: Loop-Toggle und globaler Audio-Stop
Loop AN/AUS Button in der Header-Leiste. Wenn Loop aktiv,
wird der angeklickte Sound endlos wiederholt (zum Testen
ob z.B. Wirbelwind sauber loopt). Nur ein Sound spielt
gleichzeitig - neuer Klick stoppt den vorherigen.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 19:43:14 +01:00
5766fdb757 Fix: AudioManager zeigt jetzt alle Dateien an
Node vergrößert sich dynamisch je nach Dateianzahl.
Download-Button pro Datei hinzugefügt. Play-Button
wird rot beim Abspielen.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 19:42:08 +01:00
5b326e2de6 Name-Feld mit fortlaufender Nummer für alle Audio-Nodes
Alle Generierungs-Nodes (MusicGen, MusicGenLong, AudioGen)
haben jetzt ein 'name' Feld. Dateien werden als
name_001.wav, name_002.wav, etc. gespeichert statt mit
Timestamp. z.B. heavy_strike_001.wav

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 18:08:29 +01:00
b5af85a890 AudioManager Node: Dateien auflisten, abspielen, löschen
Neuer Node zeigt alle generierten Audio-Dateien mit Größe
und Play-Button. Drei Modi:
- Dateien auflisten (mit Abspielen im Browser)
- Alle löschen
- Nur Originale löschen (48kHz behalten)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 17:58:26 +01:00
9e0e541d7e Fix: AudioPreview Widget wächst nicht mehr bei jeder Generierung
Widget wird wiederverwendet statt neu erstellt. Audio-Source
und Download-Link werden aktualisiert statt dupliziert.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 17:46:43 +01:00
2cf3c613fd AudioPreview: Frontend JS für Audio-Player im Node
Rendert einen HTML5 Audio-Player direkt im AudioPreview-Node
nach der Generierung. Inkl. Download-Link.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 17:29:00 +01:00
cf6afa5c3a Optimierter SFX Workflow mit 3 Presets aus AudioGen Doku
Drei vorkonfigurierte Pipelines (jeweils mit Upsample + Preview):
- Attacken/Hits: 1.5s, temp 0.8, cfg 4.5 (scharf, präzise)
- Fähigkeiten/Spells: 2.5s, temp 1.0, cfg 3.5 (Variation)
- Ambient/Umgebung: 8s, temp 1.0, cfg 3.0 (organisch)

Nur Attack-Pipeline aktiv, Rest gemutet. Mit M umschalten.
Note-Node mit komplettem Parameter-Guide aus Meta Doku.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 16:54:04 +01:00
0ff8d49427 Note-Node: MusicGenLong Parameter-Guide ergänzt
segment_duration, context_seconds und extend_stride
mit empfohlenen Werten aus der offiziellen AudioCraft Doku
und HuggingFace Blog (7s Overlap Empfehlung).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 16:29:52 +01:00
9c9752e884 Fix: seed control_after_generate Widget in allen Workflows
ComfyUI fügt nach jedem seed-INT-Widget automatisch ein
control_after_generate Combo-Widget ein. Ohne diesen Slot
in widgets_values waren temperature, cfg_coef und top_k
um eine Position verschoben (cfg_coef zeigte 250 statt 3.0).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 16:06:44 +01:00
e44f4368af AudioCraft: Parameter-Ranges korrigiert, Note-Guides, Menü-Musik
- nodes.py: Best-Practice Ranges (temperature 0.1-2.0, cfg_coef 0.5-10.0, top_k 10-500, extend_stride 5-28)
- workflow_music.json: Parameter Guide als Note-Node, Default-Werte angepasst
- workflow_sfx.json: SFX Parameter Guide als Note-Node hinzugefügt
- main_menu.gd: Menü-Musik (intro7.mp3) mit Loop und Stop bei Spielstart
- Diverse Godot-Projektdateien aktualisiert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 16:01:17 +01:00
8ea29fd6af Fix workflow_music.json: Node-Positionen und Werte korrigiert
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 15:46:05 +01:00
d10703b50d Fix: Stereo-Crossfade, AudioGen use_sampling, Workflow Positionen
- MusicGenLong: Crossfade expand fuer Stereo-Audio (2 Kanäle)
- MusicGenLong: Segmentzaehler mit math.ceil statt int+1
- AudioGen: use_sampling=True hinzugefuegt
- workflow_music.json: Node-Positionen der unteren Pipeline korrigiert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 15:40:18 +01:00
f46de40be4 AudioCraft: use_sampling + top_p nach offizieller Meta Doku
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 15:38:03 +01:00
ee9636684d ComfyUI: MusicGenLong Node fuer nahtlose lange Musik
- MusicGenLong: generiert beliebig lange Musik via generate_continuation
- Segmente mit Crossfade zusammengefuegt, kein Qualitaetsverlust
- workflow_music.json: MusicGenLong oben (60-120s), MusicGen unten (10-30s)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 15:30:03 +01:00
a3c870127a ComfyUI: separate Workflows fuer Musik und SFX
- workflow_music.json: MusicGen optimiert (stereo, 48kHz, cfg 5.0)
- workflow_sfx.json: AudioGen optimiert (kurze SFX, cfg 4.0)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 14:25:29 +01:00
4feff43758 ComfyUI AudioCraft: verbesserte Nodes + Workflow Template
- nodes.py: temperature, cfg_coef, top_k, extend_stride Parameter
- AudioUpsample Node: 16kHz/32kHz -> 48kHz fuer bessere Qualitaet
- AudioPreview Node: Vorschau direkt in ComfyUI UI
- workflow_game_audio.json: Template mit Musik + SFX Pipeline
- Standardmodell: musicgen-stereo-medium (besserer Sound)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 14:22:45 +01:00
b28b4ddc85 ComfyUI AudioCraft: Nodes, API scripts, Dockerfile updates
- AudioGen/MusicGen custom nodes mit OUTPUT_NODE=True fuer API
- generate_audio.py: Alle Krieger-SFX + Menumusik generiert
- generate_via_api.py: ComfyUI REST API Integration
- Dockerfile: CUDA 12.4, PyTorch 2.3+, pkg-config Fix fuer PyAV
- docker-compose: HuggingFace Cache Volume fuer persistente Modelle
- workflow_game_audio.json: ComfyUI Workflow fuer Game Audio

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 13:49:18 +01:00
458be01cde ComfyUI AudioCraft: OUTPUT_NODE Fix, API Support, HuggingFace Cache
- OUTPUT_NODE = True fuer MusicGen und AudioGen (ComfyUI API funktioniert jetzt)
- generate_via_api.py: Audio direkt ueber ComfyUI REST API generieren
- docker-compose.yml: hf_cache Volume fuer persistente Modelle nach Neustart
- Menü Musik und alle Krieger Attacken-Sounds generiert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 18:26:57 +01:00
f3c895ac43 Add ComfyUI AudioCraft custom nodes und Game Audio Workflow
- comfyui_audiocraft: eigene MusicGen + AudioGen Nodes
- workflow_game_audio.json: vorgefertigter Workflow fuer Dungeon Musik und Sound Effects

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 17:55:54 +01:00
cc3b2ed942 Add ComfyUI + AudioCraft Docker setup fuer Game Audio
- Dockerfile (NVIDIA RTX 3070, CUDA 12.4, PyTorch 2.3+)
- Dockerfile.amd (AMD Radeon 9070, ROCm 6.2)
- docker-compose.yml (NVIDIA) / docker-compose.amd.yml (AMD)
- ComfyUI-Manager fuer einfache Node-Installation
- AudioCraft (MusicGen, AudioGen) fuer Game Audio Generierung

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 17:08:36 +01:00
59fb813ce6 Gesperrte Skills: Transparenz auf 45% erhoeht fuer bessere Lesbarkeit
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:20:19 +01:00
ac271ce891 Skillbuch Pagination: 9 Skills pro Seite mit Vor/Zurueck-Navigation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:18:22 +01:00
f007e559b9 Gesperrte Skills im Skillbuch ausgegraut mit Level-Anforderung
- player.gd: alle Krieger-Skills immer in available_skills, locked-Flag
  und level_required Feld; execute_skill bricht bei locked=true ab
- skill_panel.gd: gesperrte Skills ausgegraut, Icon transparent,
  Level-Anforderung angezeigt, kein Drag & Drop moeglich

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:16:09 +01:00
c170d98f3c Skill-Eintraege im Skillbuch mit halbtransparentem Hintergrund
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:12:02 +01:00
6d3ef11321 Fix: Drag-Icon in hud.gd auf 48x48 begrenzt (Slot zu Slot)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:10:18 +01:00
341cc491fc Fix: Drag-Icon Groesse nach add_child setzen damit Godot sie nicht ueberschreibt
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:08:39 +01:00
97848930e1 Fix: Drag-Icon auf 48x48 begrenzt statt volle Texturgroesse
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:06:55 +01:00
4b1d1eeba6 Fähigkeitenbuch mit Dark Fantasy Skillbook Hintergrundbild
- skillbook.png als Hintergrund-TextureRect im Skill Panel
- Panel vergrößert (440x620), zentriert
- Panel-Background transparent, Inhalt mit Padding zum Rahmen

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:06:09 +01:00
2096a18cd1 Hauptmenü Vollbild-Hintergrundbild mit Dark Fantasy Artwork
- Background+GameName.png, Background.png, Banner.png hinzugefügt
- main_menu.tscn: TextureRect als Vollbild-Hintergrund (skaliert automatisch),
  Buttons auf semi-transparentem Panel unten links
- main_menu.gd: lädt bevorzugt Background+GameName, Fallback auf Background/Banner

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:54:48 +01:00
aa4b998e8a Hauptmenü Dark Fantasy Redesign + CLASS_DATA const fix
- main_menu.tscn: Vollbild dunkler Hintergrund, Banner-Slot oben,
  Buttons zentriert, Einstellungen als styled Overlay-Panel
- main_menu.gd: Banner automatisch geladen wenn Banner.png vorhanden,
  sonst Fallback-Titeltext; @onready-Pfade auf neue Struktur angepasst
- class_selection_menu.gd: CLASS_DATA von const auf var geändert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:46:04 +01:00
cbf50b56bf Redesign Klassenauswahl mit Portraits und Klassen-Lore
- class_selection_menu.tscn: Vollbild-Layout mit dunklem Hintergrund
- class_selection_menu.gd: Karten dynamisch per Code erzeugt mit Portrait,
  Lore-Text, Gameplay-Beschreibung, Flavor-Zitat, Stats und Auswahl-Button
- Drei Klassen-Portraits hinzugefügt: Warrior.png, Schurke.png, Magier.png
- Hover- und Auswahl-Highlighting per StyleBoxFlat

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:34:27 +01:00
48bfe1a83f feat: Restliche Icons eingebaut (Autoattack, Wirbelwind, Zornfesseln)
- Alle 8 Krieger-Skills haben jetzt PNG Icons im Dark Fantasy Stil

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:22:22 +01:00
8bb8bfe5a1 docs: Krieger Skills, Wut-System und HUD-Änderungen dokumentiert
- Krieger Skill-Tabelle mit allen 8 Skills + Kosten/Effekten
- Wut-System erklärt (Aufbau, Verfall, Berserker-Ausnahme)
- Gegner-Debuffs (apply_slow, apply_pull)
- HUD-Tabelle aktualisiert (XP-Bar unter Actionbar, Slot-Nummern)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:17:38 +01:00
6b46b27c2a fix: XP-Bar Abstand vom Rand + Level-Label in XP-Bar integriert
- XP-Bar: 6px Abstand vom unteren Bildschirmrand
- Level-Label entfernt aus oben-links, jetzt Teil der XP-Bar: "Lv X  current/max XP"

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:11:36 +01:00
8ddc20683b feat: XP-Leiste unter Aktionsleiste, gleiche Breite, Label zentriert
- XP-Bar: Anker-basiert (0.5/1.0), gleiche Breite wie Actionbar (468px)
- XP-Label zentriert: "Level X — current / max XP"
- Actionbar 12px nach oben verschoben für XP-Bar Platz
- Level-Label und Gold-Label oben links, kompakter

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:09:42 +01:00
616f3d303b fix: Wut/Ressourcen-Bar überlappt nicht mehr mit XP-Bar
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:06:06 +01:00
bfd0e391c3 fix: Aktionsleiste mittig unten verankert, Control füllt ganzen Bildschirm
- Control: anchors_preset=15 (FULL_RECT) statt fester Größe 40x40
- ActionBar: Anker auf (0.5, 1.0) — Mitte unten, unabhängig von Auflösung

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:03:13 +01:00
4fbb622b86 fix: Fenstergröße auf 1600x900 beim Start gesetzt (Viewport 1920x1080)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:01:34 +01:00
923969593d fix: Actionbar Icons füllen ganzen Slot + Slot-Nummern oben links
- Icon auf PRESET_FULL_RECT gesetzt statt 40x40 bei Position (5,5)
- Slot-Nummern (1-9) als Label über dem Icon mit Schatten für Lesbarkeit

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:57:35 +01:00
ccf2835cef feat: Echte PNG Icons für Krieger-Skills eingebaut
- Heavy Strike, Tektonischer Schlag, Berserker, Blutrausch, Durchbeißen
- Icons aus assets/Icons/ (ChatGPT generiert, Dark Fantasy Stil)
- Wirbelwind, Zornfesseln, Autoattack noch SVG (Icons fehlen noch)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:53:51 +01:00
95adb11ee1 feat: Icons für alle Krieger-Skills erstellt
- tektonischer_schlag_icon.svg (Faust + Bodenrisse)
- durchbeissen_icon.svg (Schild mit Zähnen)
- blutrausch_icon.svg (Klinge mit Bluttropfen)
- wirbelwind_icon.svg (Kreisende Klingen)
- zornfesseln_icon.svg (Kette mit Haken)
- berserker_icon.svg (Schädel mit Flammen)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:43:37 +01:00
7468a2d5e4 fix: Berserker — Skills kosten keine Wut während aktiv
- _spend_rage() gibt direkt true zurück wenn is_berserker
- Wut-Checks in execute_skill() nur wenn nicht is_berserker

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:41:30 +01:00
7ccc0ef8e7 feat: Berserker Ultimate implementiert (Krieger Level 35)
- Verbraucht gesamte Wut (Minimum 50)
- 10s aktiv: 2x Autoattack-Speed, 25% weniger Schaden, Wut verfällt nicht
- 2.5s Crash danach: 50% mehr Schaden nehmen, 50% langsamer, Skills gesperrt
- Cooldown 90s

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:39:51 +01:00
63d0f3e64d feat: Zornfesseln implementiert (Krieger Level 28)
- Zieht Gegner in Reichweite 12m heran (Pull-Effekt 0.6s)
- Nach dem Pull: automatischer Schlag 20-30 + 80% Stärke
- enemy.gd: apply_pull() + Pull überschreibt KI-Bewegung
- Kostet 35 Wut, Cooldown 14s

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:37:19 +01:00
c81ba9760b feat: Wirbelwind implementiert (Krieger Level 20)
- AoE Drehangriff, Radius 3.5m, kostet 40 Wut
- Schaden: 15-25 + 70% Stärke an alle Gegner im Radius
- Kein Slow — pure DPS, Counterpart zu Tektonischem Schlag
- Cooldown 6s

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:34:59 +01:00
76e17cefa9 feat: Blutrausch implementiert (Krieger Level 15)
- Einzelziel, Reichweite 2.5m, kostet 25 Wut
- Sofortschaden: 8-14 + 50% Stärke
- Blutung: 4 Schaden/s über 8 Sekunden (DOT-Tick in _physics_process)
- Blutung wird sofort abgebrochen wenn Ziel stirbt/ungültig wird

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:33:12 +01:00
799ff23f75 feat: ItemType enum in Equipment + sauberer Schild-Check
- Equipment: ItemType enum (ARMOR, WEAPON, SHIELD, OFFHAND)
- player.gd: _has_shield() prüft item_type == SHIELD statt nur Slot-Inhalt
- Durchbeißen nutzt _has_shield() für Schildwall/Trotz Entscheidung

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:31:40 +01:00
c8ef56d311 feat: Durchbeißen implementiert (Krieger Level 10)
- Mit Schild im Offhand → Schildwall: 85% Schadensreduktion für 4s
- Ohne Schild → Trotz: Schadensreduktion skaliert mit fehlendem HP (max 60%)
- Cooldown 12s, kein Wut-Kosten (rein defensiv)
- Schadensreduktion greift in take_damage() ein

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:29:59 +01:00