Un juego educativo de matemáticas desarrollado en Python que ofrece diferentes modos de juego para practicar operaciones aritméticas básicas de forma divertida e interactiva.
LIM es un juego de matemáticas con interfaz de consola colorida que permite a los usuarios mejorar sus habilidades matemáticas a través de tres modos de juego diferentes. El sistema incluye registro de usuarios, niveles de dificultad, sistema de puntos y rankings.
- 🎯 Sistema de usuarios: Registro, login y seguimiento de progreso individual
- 🏆 Sistema de puntos y rankings: Acumula puntos y sube de rango
- 🎲 Tres modos de juego diferentes:
- 🏇 Carrera de Caballos
- ⚔️ Batalla de Operaciones (1v1)
- 🧠 Misión Matemática
- 🧮 Cuatro tipos de operaciones:
- ➕ Suma
- ➖ Resta
- ✖️ Multiplicación
- ➗ División
- 📊 Tres niveles de dificultad:
- 🟢 Fácil
- 🟡 Medio
- 🔴 Difícil
- 🎨 Interfaz colorida usando Rich Console
- ⏱️ Desafíos con tiempo límite
- Tiempo límite: 30 segundos
- Objetivo: Responde correctamente las operaciones para que el caballo avance
- Meta: Completa el 100% antes de que acabe el tiempo
- Recompensa: 10 puntos si completas la carrera
- Modo: Dos jugadores
- Desafío: 10 ejercicios matemáticos
- Objetivo: Resolver en el menor tiempo posible con la mayor precisión
- Criterios de victoria: Más respuestas correctas + menor tiempo
- Recompensa: Hasta 10 puntos para el ganador
- Penalización: -5 puntos para el perdedor
- Tiempo límite: 25 segundos
- Objetivo: Responde la mayor cantidad de preguntas correctamente
- Recompensa: Hasta 20 puntos
python >= 3.7
keyboard
tqdm
rich
msvcrt (incluido en Windows)
El juego incluye un archivo ejecutable listo para usar:
- Descarga o clona el repositorio completo
- Localiza el archivo
LIM.exeen la carpeta del proyecto - Haz doble clic en
LIM.exepara iniciar el juego
- NO muevas el archivo
LIM.exefuera de su carpeta - El ejecutable debe permanecer en el directorio del proyecto para acceder a las carpetas
Datos_juego/ytexto/ - Si mueves el .exe, el juego no podrá leer los archivos de configuración y datos
- Clona o descarga el repositorio:
git clone <url-del-repositorio>
cd LlM- Instala las dependencias:
pip install keyboard tqdm rich- Ejecuta el juego:
python LIM.py- Inicia el juego haciendo doble clic en
LIM.exeo ejecutandopython LIM.py - Regístrate o inicia sesión con tu usuario
- Selecciona un modo de juego desde el menú principal
- Elige una operación matemática (suma, resta, multiplicación o división)
- Selecciona el nivel de dificultad (fácil, medio o difícil)
- ¡Juega y acumula puntos!
LlM/
├── LIM.py # Archivo principal del juego
├── LIM.exe # Ejecutable del juego
├── LIM.spec # Especificación para PyInstaller
├── README.md # Este archivo
├── Datos_juego/ # Datos persistentes del juego
│ ├── Usuarios.txt # Base de datos de usuarios
│ ├── Claves.txt # Contraseñas de usuarios
│ ├── Puntos_usuario.txt # Puntos de cada usuario
│ └── Puntos_partida.txt # Puntos por partida
└── texto/ # Archivos de texto para la interfaz
├── ayuda.txt # Instrucciones de juego
├── menu.txt # Menú principal
├── logueo.txt # Pantalla de login
├── registro.txt # Pantalla de registro
├── dificultad.txt # Selector de dificultad
├── operaciones_matematicas.txt
└── Completa/ # Títulos y adornos
├── SumaTitulo.txt
├── RestaTitulo.txt
├── MultiplicacionTitulo.txt
├── DivisionTitulo.txt
└── adornos.txt
- Carrera de Caballos: 10 puntos (si completas)
- Batalla de Operaciones: Hasta 10 puntos (ganador) / -5 puntos (perdedor)
- Misión Matemática: Hasta 20 puntos
El proyecto incluye un archivo .spec para compilar con PyInstaller:
pyinstaller LIM.specEsto generará un ejecutable en la carpeta dist/.
- Interfaz colorida usando la biblioteca Rich
- Barras de progreso con tqdm
- Temporizadores con threading
- Validación de entrada de usuario
- Sistema de persistencia de datos en archivos de texto
- Generación de números aleatorios para ejercicios
Las contribuciones son bienvenidas. Si deseas mejorar el juego:
- Haz un fork del proyecto
- Crea una rama para tu feature (
git checkout -b feature/NuevaCaracteristica) - Commit tus cambios (
git commit -m 'Agrega nueva característica') - Push a la rama (
git push origin feature/NuevaCaracteristica) - Abre un Pull Request
- El juego está diseñado para Windows (utiliza
msvcrty comandos de sistema específicos) - Los datos de usuario se almacenan en archivos de texto plano en la carpeta
Datos_juego/ - Se recomienda tener permisos de escritura en el directorio del juego
Este juego fue diseñado como una herramienta educativa para ayudar a estudiantes a practicar operaciones matemáticas básicas de una manera divertida e interactiva, promoviendo el aprendizaje a través del juego.