Nouvel autoload ComboTracker: chaque cassage de bloc dans les 1.8s du
précédent étend le combo (+15% par palier, cap x3.0). Le multiplicateur
s'applique au gain XP de base.
HUD: panneau "COMBO xN (+X%)" animé (pop scale) à partir de x2, avec
barre de temps restant qui se vide. Combo ≥5 au break → bonus XP final
(3 * count) avec popup.
Rétention: incite à chaîner les actions, récompense la dextérité et crée
des pics d'intensité dans la boucle.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- DolphinController expose heal/feed/refill_oxygen + signal
use_consumable_requested (bindé sur F)
- Main.gd table CONSUMABLE_EFFECTS:
· Bulle d'air (102): +40 O₂
· Algue cuisinée (103): +30 faim, +5 HP
· Amulette de soin (106): +50 HP
- Popup flottant coloré au-dessus du joueur + son bulle à l'utilisation
- HUD: hint dynamique "[F] Consommer : <item>" quand slot sélectionné = consommable
Boucle court-terme: le craft a enfin un usage direct, récompense lisible.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Nouvel autoload AchievementManager avec 12 succès (Premier éclat, Mineur
confirmé, Chasseur de perles, Fouilleur d'épaves, Abysses, Légende des
océans, etc.). Chaque déblocage donne un bonus XP et joue un son.
HUD: toasts dorés avec icône + titre + desc + fade-in/out, empilés en
haut centre. Son bulle au déblocage.
Long-terme: cible des milestones cumulatifs qui donnent un sentiment de
progression durable.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Nouvel autoload QuestManager avec 11 templates (casser X sable, récolter
coraux, collecter perles, plonger à -25m, crafter 2 objets, etc.).
3 quêtes actives simultanément; complétion → récompense XP + roll d'une
nouvelle quête.
HUD: panneau "OBJECTIFS" top-right avec progression couleur (gris→vert),
bannière centrale "✓ QUÊTE" + son bulle au complete.
Motivation moyen-terme (5-15 min): le joueur a toujours qqch à faire.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Nouvel autoload PlayerProgress qui gagne de l'XP sur:
- cassage de blocs (gain variable selon le type: perle, épave, coral > sand)
- collecte de perles (+25)
- crafting (+10)
- paliers de profondeur atteints (+20 à 10/25/50/75/100m)
HUD: barre XP + label niveau en bas centre, bannière "NIVEAU X" au level-up
(son bulle + fade). Popup 3D "+N XP" spawn au point d'action.
Boucle court-terme dopamine: chaque action = feedback visuel immédiat.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Area3D Pearl flottant/tournant qui émet une couleur nacrée, spawned
périodiquement près du joueur (PearlSpawner, 3 max, intervalle 9s,
zone haute du seafloor). Collecte automatique au contact, ajout à
l'inventaire (item 105 Perle). Nouvelle recette : 2 perles + 1 corail
rouge → Amulette de soin (item 106, consommable). Spawner désactivé
sur serveur dédié headless.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Interpole en temps réel bg/ambient/fog entre palette de surface (teal
lumineux y=55) et palette abyssale (bleu-noir y=-40). Fog density
augmente en plongée (0.02 → 0.055) pour renforcer la sensation
oppressante des grandes profondeurs. Courbe smoothstep pour transition
organique.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Panneau info top-right avec boussole (8 directions FR), profondeur
en mètres depuis la surface, et nom de biome courant (Récif Corallien,
Forêt de Kelp, Plateau Rocheux, Abysses). Helper biome_name_at dans
WorldGenerator pour requête client-side sans relire les chunks.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The old script hit 192.168.1.86:3000 which never existed on this LAN.
Real Gitea lives on 192.168.0.82:3000. Also prefer GITEA_TOKEN over
embedding a password; GITEA_PASS remains as a fallback.
Godot reads get_cmdline_user_args() which only contains args after '--'.
Without the separator, NetworkManager never saw --server and the
ENetMultiplayerPeer never bound UDP 7777.
Verified on 192.168.0.89: udp/7777 now listening.
- underwater_fog.gdshader: rewritten shader_type fog with depth-based color/density + current wave
- water_surface.gdshader: new spatial shader for water ceiling at y=60 with Fresnel + vertex waves
- caustics.gdshader: rewritten with caustic_pattern() function, additive blend, depth fade
- godrays.gdshader: rewritten spatial (was canvas_item) with vertical + depth fade, loop-based rays
- UnderwaterEnvironment.gd: spawns FogVolume with custom fog shader, volumetric_fog_density=0.05
- GodraysOverlay.gd: MeshInstance3D quad child of camera, updates fade_bottom from camera depth
- CausticsLayer.gd: 3 horizontal caustic planes at -5/-15/-25, follow camera XZ
- WaterSurface.tscn: PlaneMesh 2000x2000 at y=60 with water_surface shader
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add dedicated server / host / client modes via NetworkManager autoload,
PlayerSyncComponent (20 Hz unreliable RPC), WorldSyncComponent (authoritative
block break/place), ChatManager (F2), LobbyMenu scene, updated MainMenu
with Solo/Heberger/Rejoindre/Quitter buttons. Port changed to 7777
(9999 occupied by sntlkeyssrvr on this machine). Mobs disabled in multi
(spawn solo only). Solo mode untouched.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>