Skip to content

El Piedrero v1.0-beta.7

Pre-release
Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 04 Sep 20:43
· 1 commit to main since this release

🃏 El Piedrero — v1.0.7 (04/09/2026 - Patch 2) — 🪨

Esta versión v1.0.7 resuelve de manera integral el problema de sincronización y modificación de piedras en partidas multijugador, asegurando que tanto el anfitrión como los jugadores invitados puedan sumar y restar piedras y declarar cantos en tiempo real para sus respectivos equipos en mesas de 2, 3, 4, 6 y 8 jugadores.


🚀 Novedades y Correcciones Destacadas

🪨 Puntuación Multijugador Bidireccional

  • Control total para clientes invitados: Se solventa el bloqueo que impedía a los jugadores que se unían a una sala sumar o modificar las piedras de su equipo.
  • Resolución dinámica de equipos: El sistema asigna y reconoce automáticamente el equipo de cada jugador (getEffectiveLocalTeam()), garantizando que cada participante controle únicamente las piedras de su equipo sin interferencias ni bloqueos cruzados en salas de 2 (1v1), 3 (tríos), 4 (2x2), 6 (3x2) y 8 jugadores (4x2).
  • Compatibilidad de roles anfitrión/invitado: Funcionamiento verificado independientemente de quién cree la sala y quién se una.

📶 Resiliencia de Red Local y Hotspot Wi-Fi

  • Tolerancia a desfase horario: Eliminado el descarte de tramas por diferencia en el reloj interno entre teléfonos al jugar mediante zona Wi-Fi portátil o redes locales.
  • Optimización de secuencias sobre TCP: Supresión del descarte redundante de paquetes por número de secuencia que entraba en conflicto con los pings de heartbeat, garantizando que cada pulsación de piedra se aplique de inmediato.
  • Aislamiento de estado en cliente: Reinicio estricto de banderas (isHost = false e isLocalGame = false) al escanear el QR para canalizar todos los eventos directamente al socket del anfitrión.

🎛️ Personalización de Distribución de Botones

  • Reorganización a medida: Nueva pantalla accesible desde los ajustes del marcador ("Cambiar Distribución") que permite colocar los botones de cantos y jugadas en el orden preferido por el usuario, con persistencia offline.

🃏 Gestión Dinámica de Reparto

  • Indicador visual de repartidor: Detección y anuncio en pantalla del jugador encargado de dar las cartas y del siguiente repartidor al completar cada ciclo de manos.

🔊 Audio y Transmisión a Pantallas

  • Música ambiental estable: Solución a la interrupción de la música de fondo tras reproducir audios de cantos, Buenas o Victoria durante la proyección en Smart TV / Cast.

🧪 Pruebas Automatizadas y Estabilidad

  • 18 Pruebas Unitarias de Integración Multijugador (MultiplayerStoneModificationTest.kt): Cobertura exhaustiva verificando:
    • 2 jugadores (1v1) con roles alternados de anfitrión/invitado.
    • Mesas de 3, 4, 6 y 8 jugadores con rotación de equipos en reserva.
    • Difusión y replicación de GameState en tiempo real a todos los clientes.
    • Secuencias consecutivas de sumas y restas de piedras (+1, +2, Majo, -1, Ronda, -2).
    • Reconexión manteniendo el asiento asignado y reversión segura de jugadas (UNDO_LAST_MOVE).

📦 Archivos del Release

Archivo Tipo Tamaño
ElPiedrero_v1.0.7.apk Instalador APK (Release optimizado con R8) ~31.9 MB
Código Fuente (.zip / .tar.gz) Repositorio completo

🛡️ Seguridad e Instalación

  • Compatible con Android 7.0 (Nougat) o superior (API 24+).
  • 100% Offline, sin recolección de datos, sin anuncios y con cifrado local AES-256-GCM.
  • Si Android muestra una advertencia al instalar el APK, selecciona "Instalar de todas formas" (al tratarse de una compilación independiente fuera de Google Play).