Proyecto-3-Juego-Escalera-Preguntas-Retos GitHub Details, Stars and Alternatives | OpenRepoFinder
wruiz-ship-it / repository
Proyecto-3-Juego-Escalera-Preguntas-Retos
Este proyecto es una implementación avanzada de un juego de tablero interactivo desarrollado en Java, enfocado en la aplicación rigurosa de Estructuras de Datos desde cero, sin utilizar las librerías nativas de colección (java.util).
A transparent discovery signal based on current public GitHub metadata.
Recent activity35% weight
72
Community adoption25% weight
0
Maintenance state20% weight
100
License clarity10% weight
0
Project information10% weight
35
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
README preview
Proyecto-3-Juego-Escalera-Preguntas-Retos
🎲 Escaleras, Serpientes y Retos
Juego de mesa multijugador desarrollado en Java 17 con Swing, implementado como proyecto universitario de Estructuras de Datos. Combina la mecánica clásica de Escaleras y Serpientes con preguntas de cultura general y programación.
Restricción académica cumplida: No se utiliza ninguna colección de java.util (ArrayList, LinkedList, Stack, Queue, HashMap, Hashtable, TreeMap, etc.). Todas las estructuras de datos fueron implementadas desde cero.
La idea de este proyecto es facilitar una vía para que pudan practicar con ejercicios sencillos; no hace falta tener conocimientos avanzados para participar, esta metodología busca incentivar el crecimieento de conocimiento mediante la búsqueda de lo requerido para completar cada reto.
Este es el resultado que da seguimiento al curso Interfaz Gráfica en Java proporcionado por el grupo Semana de Ingenio y Diseño de la universidad Distrital de Colombia donde se usan una serie de técnicas para realizar GUI modernas y profesionales.
# 1. Descomprimir el proyecto y entrar a la carpeta
cd escaleras-serpientes
# 2. Compilar y empaquetar
mvn package -q
# 3. Ejecutar
java -jar target/escaleras-serpientes.jar
Opción B — Script de compilación manual
# En Linux / macOS
chmod +x compile.sh
./compile.sh
# En Windows (PowerShell)
.\compile.sh
Opción C — VS Code
Abrir la carpeta escaleras-serpientes en VS Code
Instalar la extensión Extension Pack for Java
Abrir src/main/java/com/juego/ui/MainApp.java
Hacer clic en el botón ▶ Run que aparece sobre el método main
El archivo .vscode/launch.json ya está configurado para ejecutar MainApp directamente.
🕹️ Manual de uso
Pantalla 1 — Menú Principal
Al iniciar la aplicación aparece el menú principal con tres opciones:
Botón
Acción
▶ Nuevo Juego
Inicia el flujo de registro de jugadores
🏆 Ranking
Muestra el ranking de la última partida
✖ Salir
Cierra la aplicación
Pantalla 2 — Registro de Jugadores
Seleccionar el número de jugadores (2, 3 o 4) con el control numérico
Escribir el nombre de cada jugador en los campos de texto — cada jugador tiene su color asignado automáticamente
Hacer clic en ▶ Iniciar Juego
Los campos tienen texto predeterminado ("Jugador 1", "Jugador 2"...). Si no se editan, se usan esos nombres.
Pantalla 3 — Tablero de Juego
La ventana principal tiene tres secciones:
Centro — Tablero (50 casillas en serpentina)
Color de casilla
Significado
🟦 Azul/morado oscuro
Casilla normal
🟩 Verde
Casilla con escalera (sube)
🟥 Rojo oscuro
Casilla con serpiente (baja)
🟪 Morado
Casilla de reto (pregunta)
⭐ Dorado (casilla 50)
Meta — casilla ganadora
Las flechas verdes indican escaleras (hacia arriba) y las flechas rojas discontinuas indican serpientes (hacia abajo).
Derecha — Panel de información
Lista de jugadores con posición actual, aciertos y errores
El jugador con el turno activo aparece destacado con borde grueso
Historial de los últimos movimientos (pila — más reciente arriba)
Abajo — Panel de turno
Nombre del jugador activo
Dado con animación
Botón 🎲 Lanzar Dado
Flujo de un turno
1. Presionar "Lanzar Dado"
↓
2. El dado anima y muestra el resultado (1-6)
↓
3. La ficha se desplaza con animación hasta la nueva casilla
↓
4a. Casilla NORMAL → turno pasa al siguiente jugador
4b. Casilla ESCALERA → ficha sube automáticamente + mensaje
4c. Casilla SERPIENTE → ficha baja automáticamente + mensaje
4d. Casilla de RETO → aparece ventana con pregunta
4e. Casilla 50 (META) → ¡Ganador! → pantalla de ranking
Pantalla 4 — Reto (Pregunta)
Cuando un jugador cae en una casilla morada aparece una ventana de pregunta:
Se muestra el enunciado y 4 opciones (A, B, C, D)
El jugador tiene tiempo ilimitado para responder
Hacer clic en la opción deseada
Resultado
Consecuencia
✅ Respuesta correcta
+10 puntos + turno extra (vuelve a lanzar)
❌ Respuesta incorrecta
-5 puntos + pierde el siguiente turno
La dificultad de la pregunta depende de la casilla: casillas 1-15 → Fácil, 16-35 → Media, 36-50 → Difícil.
Pantalla 5 — Ranking Final
Cuando un jugador llega a la casilla 50 el juego termina y se muestra el ranking:
Posición final de todos los jugadores
Puntaje: (aciertos × 10) - (errores × 5)
Botón Nueva Partida para volver al menú
📏 Reglas del juego
El orden de turnos es el orden en que se registraron los jugadores
Para ganar hay que caer exactamente en la casilla 50 — si el dado da más, el jugador no avanza ese turno
Las escaleras suben y las serpientes bajan sin importar si hay pregunta en el destino
Al responder correctamente un reto se obtiene un turno extra inmediato
Al responder incorrectamente se pierde el siguiente turno (no el actual)
Si un jugador pierde el turno y le toca, simplemente se le salta y pasa al siguiente
🏗️ Estructuras de datos implementadas
Todas ubicadas en src/main/java/com/juego/model/estructuras/
índice_correcto: número del 0 al 3 indicando cuál opción es correcta
Ejemplo
FÁCIL|¿Cuánto es 5 + 3?|6|8|7|9|1
MEDIA|¿Cuál es la complejidad de buscar en array?|O(log n)|O(n²)|O(n)|O(1)|2
DIFÍCIL|¿Qué patrón de diseño usa una sola instancia?|Factory|Observer|Singleton|Decorator|2
Las líneas que comienzan con # son comentarios y se ignoran.
Listado de API's Públicas en Chile Listado de API's Públicas para distintos tipos de servicios digitales nacionales Enlace Servicios Públicos / Gobierno API Biblioteca del Congreso Leyes, Proyectos de Ley y Normas. API Mercado Público: Todo lo que necesitas es estar conectado con los servicios de información disponibles en api.mercadopublico.cl para crear notificaciones y estar siempre actualizado de los negocios con el Estado. API División Político Administrativa: Permite obtener Regiones, Provincias y Comunas. API Portal ChileAtiende: API del Portal de Servicios del Estado - ChileAtiende. Plataforma Ley de Lobby La API de la plataforma Ley de Lobby implementada para el Gobierno de Chile, es la interfaz para programadores que permite integrar los contenidos de este portal en tu sitio web. API Energía Abierta - Comisión Nacional de Energía: API permite el acceso directo a los datos publicados en el sitio de datos abiertos de Comision Nacional de Energía. API Comisión Nacional de Energía: Provee el público acceso a la información que se genera dentro de la CNE considerando sus distintos sistemas de información. Usado en Bencina en línea API Datos Peñalolen - Municipalidad de Peñalolen: API que permite el acceso directo a los datos publicados en el sitio de datos abiertos de Peñalolén. API Datos Providencia - Municipalidad de Providencia: API que permite el acceso directo a los datos publicados en el sitio de datos abiertos de la Municipalidad de Providencia. Compras Transparentes: Desarrollada en Falcon y Python, contiene todos los detalles de la API de Compras Transparentes que permite explorar las transacciones entre el Estado de Chile y las empresas, las cuales se efectúan a través de la plataforma de compras públicas. ChileCompra: La API permite el acceso directo a los datos publicados en el portal de datos abiertos de ChileCompra desde tu aplicación. Usa una interfaz RESTful y retorna los datos en formato JSON. Las vistas invocadas a través de la API proveen un acceso estándar online a datos contenidos en páginas HTML, XLS, CSV y otros archivos similares disponibles en Internet. Portal de Datos Públicos: La versión actual de la API es 1.0. La mayoría de los métodos retorna sus resultados en formato JSON, excepto el metodo invoke donde puede elegirse entre varios formatos de salida. Cada key obtenida para la API del Portal de Datos Públicos del Gobierno de Chile está limitada a 10.000 reqs/mes y 1 req/seg. Seguimiento de pedidos de Correos de Chile: Módulo npm para hacer el seguimiento de uno o más pedidos de Correos de Chile. Correos Chile Tracking API: AfterShip Restful JSON APIs and webhooks allow developers to add Correos Chile tracking function easily. Support APIs Client Libraries for PHP, Java, Node.js, Python, .NET, Ruby. Correos Chile API: EasyPost is a multi-carrier shipping solution. The EasyPost API is one integration point for 60+ carriers, including Correos Chile. Feriados en Chile 2017: API con info de feriados en Chile año 2017. Feriados Legales en Chile: API sin restricciones y costos, que contiene todos los feriados legales de Chile. Turnos de Farmacia: URL para obtener en formato JSON el listado de farmacias del país y sus turnos nocturnos legales, directamente desde FARMANET del Ministerio de Salud. Transporte BIP: Get balance of bip card (Chile) by scrapping http://www.tarjetabip.cl/ Economía Indicadores económicos diarios: Este es un servicio open source (web service) que entrega los principales indicadores económicos para Chile en formato JSON. Tanto los indicadores diarios como históricos para que desarrolladores puedan utilizarlos en sus aplicaciones o sitios web. Indicadores del Día: Los indicadores que entregamos en el servicio, aparecen en el sitio del Banco Central de Chile (http://www.bcentral.cl/), estos datos son actualizados cada una hora y servidos en diferentes formatos como xml, json, csv y javascript. API SBIF: La API de SBIF permite obtener información de manera directa desde la base de datos del sitio web utilizando los servicios web provistos en esta plataforma. Buda.com: La API REST de Buda.com, exchange de criptomonedas por moneda local en Chile, Colombia, Perú y Argentina. Permite el manejo de ordenes de compra/venta, abonos/retiros e información del mercado en tiempo real. BCI: API públicas del Banco de Crédito e Inversiones. Permite obtener información sobre cuentas, indicadores económicos, información del banco, entre otros. Medios de Pago Khipu: API REST para crear cobros y recibir pagos con Khipu. Flow: Flow es una plataforma de pagos online que te permite pagar y recibir pagos de cualquier persona usando tarjetas de credito o débito. Sistemas de Alerta Sismos Chile: Últimos sismos en Chile. Chile Alerta - Api: Boletines de Tsunami en Chile, Últimos sismos en Chile y Últimos sismos en países específicos y el Mundo. Mapas / Geocodificación API Planos.cl: API Planos.cl de hibu está conformada por clases desarrolladas en lenguaje Javascript. API de Mapas y Geocodificación de Mapcity: La API de MapCity es una extensión de Openlayers y ExtCore. Los tipos básicos de la API y los controles son derivados de los tipos y controles de OpenLayers, por lo tanto la mayoría de las funciones de OpenLayers aplican a las funciones de la API. Entretención y ocio Horóscopo Yolanda Sultana: Obtiene el horóscopo del día desde Login.cl. No hay forma de obtener horóscopos anteriores, porque es de mala suerte. Clima API Tiempo Meteored.cl: La Api de Meteored.cl es una aplicación con la que usted puede obtener la predicción meteorológica de las localidades que desee a diario. Cómo Aportar: Seguir el siguiente formato: - [Nombre / Título sitio web](URL documentación API): Descripción corta de qué se trata este servicio, en general se encuentra
La idea de este proyecto es facilitar una vía para que puedan practicar con ejercicios sencillos; no hace falta tener conocimientos avanzados para participar, esta metodología busca incentivar el crecimiento de conocimiento mediante la búsqueda de lo requerido para completar cada reto.
Este Repo es acerca un Proyecto con Java Escritorio que desarrollamos en clases con Mis Estudiantes de 2 Semestre Tutorias Colombo(Java, Workbench, MVC, DAO, DTO)