From ea3813213a4fd0177ed08983f865c0d257af7654 Mon Sep 17 00:00:00 2001 From: marti Date: Sun, 28 Dec 2025 20:00:33 +0100 Subject: [PATCH] Pre-refactor: Door alignment fix - safety checkpoint --- DEVLOG.md | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 DEVLOG.md diff --git a/DEVLOG.md b/DEVLOG.md new file mode 100644 index 0000000..9159845 --- /dev/null +++ b/DEVLOG.md @@ -0,0 +1,48 @@ +# Devlog del Proyecto: Masmorres (Physical-Web Crawler) + +Este documento sirve para llevar un control diario del desarrollo, decisiones técnicas y nuevas funcionalidades implementadas en el proyecto. + +## [2025-12-23] - Interacción con Puertas y Navegación + +### Funcionalidades Implementadas +- **Sistema de Puertas Interactivas:** + - Se eliminó la transición automática entre salas al pisar una puerta. + - Ahora las puertas actúan como bloqueos físicos hasta que son "abiertas" explícitamente. + - Lógica de selección: Click en una puerta cerrada para seleccionarla (feedback visual amarillo). + - **Modal de Interacción:** + - Al mover una unidad adyacente a una puerta seleccionada, se dispara un modal UI: "¿Quieres abrir la puerta?". + - **Confirmar:** La puerta visual se oculta, la sala destino se renderiza (si no lo estaba) y se permite el paso. + - **Cancelar:** Se deselecciona la puerta y se mantiene cerrada. + +### Cambios Técnicos +- Modificado `main.js` para incluir `checkDoorInteraction` al finalizar el movimiento. +- Nuevo estado en `SESSION`: `selectedDoorId`. +- Actualización de `isWalkable` para considerar el estado `isOpen` de las puertas. + +## [2025-12-20] - Sistema Visual Dinámico (Dynamic Wall Opacity) + +### Funcionalidades Implementadas +- **Opacidad de Muros Contextual:** + - Los muros ahora ajustan su opacidad dinámicamente basándose en la rotación de la cámara (N, S, E, W) para evitar obstruir la visión del jugador. + - **Regla General:** Los muros "frontales" a la cámara se vuelven semitransparentes (50%), mientras que los "traseros" permanecen opacos. + +### Cambios Técnicos +- Implementada función `getWallOpacity(wallSide, viewDirection)`. +- Integración en `setCameraView` para refrescar opacidades al girar la vista. +- Los muros ahora tienen la propiedad `userData.wallSide` asignada durante la generación. + +## [2025-12-19] - Feedback de Selección y UI + +### Funcionalidades Implementadas +- **Resaltado de Selección (Highlighting):** + - Unidades y objetos interactivos ahora muestran un aura/color amarillo al ser seleccionados. + - Opacidad reducida al 50% para indicar estado de selección activo. +- **Mejoras de Animación:** + - Refinamiento del "salto" de los standees al moverse entre casillas. + +## [Inicio del Proyecto] - Manifiesto y Core Loop + +### Visión General +- Definido el **Manifiesto Técnico (v2.0)**: Visión de un "Puente Híbrido" entre juego de mesa físico y motor narrativo digital (LLM). +- **Generación Procedural:** Algoritmo de mazmorras basado en tiles de 4x4 con expansión orgánica. +- **Motor Gráfico:** Three.js con cámara isométrica ortográfica y controles restringidos (N, S, E, W).