Commit Graph

28 Commits

Author SHA1 Message Date
f4c6822857 sistema de juego ajustado a evento CIAT 2025-08-27 17:22:23 -06:00
c1c2a70217 mejoras de UX 2025-08-16 18:02:16 -06:00
3ebbc02cd1 add logging para debug del shuffle endpoint
All checks were successful
build-and-deploy / build (push) Successful in 24s
build-and-deploy / deploy (push) Successful in 11s
Agrega logging al inicio del endpoint y mejor manejo de errores
para diagnosticar por qué está devolviendo HTML en lugar de JSON.
2025-08-16 01:42:18 -06:00
d378760b05 fix typescript error en GameRoom
All checks were successful
build-and-deploy / build (push) Successful in 32s
build-and-deploy / deploy (push) Successful in 0s
Reemplaza getAvailableData() que no existe en la clase Room de Colyseus
con getFilterOptions() y implementación manual.
2025-08-16 01:24:39 -06:00
730c7bda9e reset UUID y shame persistente 2025-08-16 00:56:16 -06:00
f56244aa62 sistema de verguenza persistente 2025-08-16 00:23:32 -06:00
63eb9b2c7e reiniciar por room, finished ya no estorba, control total desde el dashboard 2025-08-16 00:13:31 -06:00
ace9f8ee50 feat: mejoras al dashboard y selector de UUID
- Dashboard: agregar opciones de 50 pestañas deterministas (lotes 1-4)
- Dashboard: botón para cerrar salas individuales y expulsar jugadores
- Dashboard: selector de variante G por sala individual en tabla
- Nuevo selector moderno de UUID en página principal
- Mostrar nombres de jugadores en selector de UUID
- Búsqueda por UUID o nombre de jugador
- Redireccionar /missing-uuid a selector principal
- Endpoints para obtener UUIDs con nombres y cerrar/cambiar variante de salas
2025-08-15 22:56:07 -06:00
f214174bab shuffle players implementado correctamente 2025-08-15 20:03:26 -06:00
9b84008f19 reconexio 2025-08-15 19:58:09 -06:00
5e42eb7d54 colores asignados al azar y simulador de jugadores en el dashboard 2025-08-15 19:09:49 -06:00
310fb3455a reconexion basada en el UUID 2025-08-15 18:51:46 -06:00
811f569391 usuarios pre configurados 2025-08-15 18:35:09 -06:00
232c159baf Actualizar sistema de admin y mejoras en lobby 2025-08-15 12:04:12 -06:00
e14bdddc62 Implementar controles globales de admin en dashboard
- Agregados botones de control global: pausar, reanudar, reiniciar, cambiar variante, enviar al lobby
- Implementados endpoints API para operaciones masivas en todas las game rooms
- Agregado método executeAdminCommand en GameRoom para manejo unificado de comandos admin
- Mejorado manejo de desconexión automática al lobby cuando admin cierra rooms
- Interfaz responsiva con confirmaciones de usuario y estados de carga
- Sistema robusto de limpieza de rooms con fallback de forzado
2025-08-12 18:13:53 -06:00
b754ec043a Implementar sistema UUID para nombres únicos globales
- Agregado UUID persistente en base de datos local (LokiJS)
- Nombres únicos por UUID en lugar de sessionId
- Nombres persisten entre reconexiones mientras el servidor esté activo
- Migración automática de perfiles existentes
- Registrados handlers para evitar warnings de mensajes no encontrados
2025-08-12 17:35:57 -06:00
32f69805f0 Dashboard real-time updates con SSE y tabla de rooms
- Implementación de Server-Sent Events (SSE) para actualizaciones en tiempo real
- Nuevo componente RoomsTable para vista de águila con animaciones de tokens
- Componente RoomCard extraído para reutilización
- Modal para ver detalles de rooms
- SystemMessageDisplay usando AnimatedNumber creativamente
- Indicador de conexión SSE con fallback a polling
- Colores dinámicos de texto basados en brillo del fondo
- Backend: broadcast de actualizaciones del dashboard
- Backend: mensajes del sistema (excepto cambios de ronda) visibles en dashboard
- Configuración de Vite para acceso desde red local
2025-08-11 23:07:09 -06:00
deb63d4e38 juego pausado al irse un jugador 2025-08-11 18:47:59 -06:00
9a44afc81a reconexion establecida 2025-08-11 18:36:24 -06:00
e5e5ad452a nombre persitente por navegador 2025-08-11 14:59:37 -06:00
0b9c121f73 mejoras de UI, mensajes del sistema y hints 2025-08-11 00:03:15 -06:00
3c3b19b2ce mejoras de UI PlayerStats 2025-08-10 18:14:53 -06:00
e6733cf5e4 sistema de chat implementado 2025-08-10 17:28:46 -06:00
9673c6ce9e fix: prevent multiple P2 actions on same offer and improve UI consistency
- Add server validation to prevent P2 from taking multiple actions on the same offer
- Hide P2 action buttons after an action is taken (using \!state.p2Action condition)
- Add offer details display to G3, G4, and G5 (was missing)
- Fix G2 to show offer details instead of just 'Oferta activa'
- Reset game status to PLAYING when changing variant from FINISHED state
- Ensure P2 can only make one decision per offer in all variants
2025-08-08 00:10:10 -06:00
305f19c7b0 fix: reset game status to playing when changing variant after finished state 2025-08-07 23:54:52 -06:00
f89331a3db feat: implement variable token offers and auto-round advancement
- Add variable offer system where P1 can offer any amount of tokens
- Players start with 10 tokens each (P1: pavos, P2: elotes)
- Implement offer/request mechanism with token validation
- Auto-advance rounds after P2 actions or P1 no-offer
- G2: Force offer by default, disable no-offer button when forced
- G3: Wait for shame decision after snatch before advancing
- G4: Implement inverse sanction (P1 gets requested without giving offered)
- Reset rounds to 1 when changing game variants
- Fix OfferControls responsiveness issues
- Hide offer controls after active offer
- Update all G1-G5 components with proper offer flow
2025-08-07 23:53:18 -06:00
1392e5a652 fix: resolve room state synchronization and player display issues
- Fix room.state.players undefined error on component mount
- Wait for initial state sync before accessing room data
- Move message handlers from service to Game component
- Fix player count display in waiting screen (was showing 0/2)
- Prevent lobby component from clearing game room on unmount
- Separate leaveLobby() and leaveGame() methods for proper cleanup
- Ensure player names persist when moving from lobby to game
- Add proper error handling for state initialization
2025-08-06 02:58:29 -06:00
a28bc286a1 feat: implement competitive clicker MVP with Colyseus.js
- Add real-time multiplayer game server with Colyseus
- Implement unique player naming system with auto-increment
- Create lobby system with automatic matchmaking
- Build 10-minute competitive clicking game rooms (max 2 players)
- Add admin dashboard for game management (pause/resume/restart/kick)
- Implement Vue 3 client with professional UI
- Add WebSocket communication with state synchronization
- Include TypeScript throughout with proper typing
- Create REST API for admin operations
- Add reconnection support and error handling
2025-08-06 02:32:18 -06:00