Skip to content

darwinva97/house-games

Repository files navigation

🎮 Game Zone - Plataforma de Juegos Multijugador

Plataforma de juegos multijugador para Smart TV y smartphones en red LAN local.

🚀 Características

  • Detección de dispositivo: Detecta automáticamente si el usuario entra desde Smart TV (Master) o smartphone (Jugador)
  • Sistema de créditos: Cada jugador comienza con 1000 créditos
  • Gestión de sesiones: El Master puede crear sesiones, asignar créditos y cerrar la actividad
  • Lobby en tiempo real: Los jugadores se conectan desde sus celulares y aparecen en la TV
  • Múltiples modos de vista: Vista panorámica, enfocada por usuario, etc.

🎲 Juegos Disponibles

🃏 Poker Texas Hold'em

  • Juego de cartas con rondas de apuestas
  • Las cartas del jugador se ven SOLO en su celular (información secreta)
  • La TV muestra la mesa, cartas comunitarias y apuestas
  • 2-8 jugadores

🏎️ Carreras 2D (Estilo Mario Bros)

  • Juego de plataformas y velocidad
  • El celular sirve como control con D-pad y botones de acción
  • La TV muestra la carrera con vista panorámica o enfocada
  • 2-4 jugadores

🏁 Carreras 3D (Estilo Crash Bandicoot)

  • Carreras en 3D con Three.js
  • Control con joystick virtual en el celular
  • Pedales de gas y freno
  • 2-4 jugadores

♟️ Ajedrez

  • Juego clásico de estrategia
  • El celular muestra el tablero desde tu perspectiva
  • La TV muestra el tablero completo con historial de jugadas
  • 2 jugadores

📱 Cómo Jugar

En la Smart TV (Master)

  1. Abre el navegador de tu Smart TV
  2. Navega a http://[IP-LOCAL]:3000
  3. Se detectará automáticamente como TV y mostrará el lobby de Master
  4. Crea una sesión y comparte el código con los jugadores
  5. Selecciona un juego y espera a que todos estén listos
  6. ¡Inicia el juego!

En el Smartphone (Jugador)

  1. Conecta tu teléfono a la misma red WiFi que la TV
  2. Abre el navegador y ve a http://[IP-LOCAL]:3000
  3. Ingresa tu nombre y el código de sesión que aparece en la TV
  4. Marca "Listo" cuando estés preparado
  5. ¡Usa tu celular como control del juego!

🛠️ Instalación y Desarrollo

Requisitos

  • Node.js 18+
  • pnpm

Instalación

# Clonar el repositorio
git clone <repo-url>
cd games

# Instalar dependencias
pnpm install

# Iniciar en modo desarrollo
pnpm dev

Producción

# Construir para producción
pnpm build

# Iniciar servidor de producción
pnpm start

🔧 Stack Tecnológico

  • Next.js 16 - Framework de React
  • Socket.io 4 - Comunicación en tiempo real
  • Tailwind CSS 4 - Estilos
  • shadcn/ui - Componentes de UI
  • Three.js / React Three Fiber - Gráficos 3D
  • Canvas API - Gráficos 2D
  • Zustand - Estado global

📁 Estructura del Proyecto

src/
├── app/                    # Páginas de Next.js
├── components/
│   ├── games/             # Componentes de juegos
│   │   ├── poker/         # Poker (TV + Controller)
│   │   ├── racing2d/      # Carreras 2D (TV + Controller)
│   │   ├── racing3d/      # Carreras 3D (TV + Controller)
│   │   └── chess/         # Ajedrez (TV + Controller)
│   ├── lobby/             # Lobby (Master + Player)
│   ├── providers/         # Providers (Socket)
│   └── ui/                # Componentes shadcn
├── hooks/                  # Custom hooks
├── lib/                    # Utilidades
├── server/                 # Servidor Socket.io
└── types/                  # Tipos TypeScript

🌐 Configuración de Red

El servidor escucha en todas las interfaces (0.0.0.0) para permitir conexiones LAN. Al iniciar, mostrará las direcciones disponibles:

🎮 Game Server Ready!
📍 Local:   http://localhost:3000
📍 Network: http://192.168.1.xxx:3000

🔒 Seguridad

Este proyecto está diseñado para uso en red local LAN. No se recomienda exponer a internet sin medidas de seguridad adicionales.

📄 Licencia

MIT

About

🎮 Game Zone: Plataforma de juegos multijugador local (LAN). Usa tu Smart TV como pantalla principal y smartphones como controles remotos para Poker, Carreras y más.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages