Edición de «Captura la bandera»
De OpenDataLab
Advertencia: No has iniciado sesión. Tu dirección IP será visible públicamente si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, junto con otros beneficios.
La edición puede deshacerse. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así deshacer la edición.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
Página de las características de la plataforma CTF-UHU | Página de las características de la plataforma CTF-UHU | ||
+ | |||
== Descripción del proyecto == | == Descripción del proyecto == | ||
El proyecto a desarrollar se puede encajar, principalmente, dentro del proyecto docente del área de de Ciencias de la Computación e Inteligencia Artificial. | El proyecto a desarrollar se puede encajar, principalmente, dentro del proyecto docente del área de de Ciencias de la Computación e Inteligencia Artificial. | ||
Éste va a consistir en el desarrollo de una plataforma multiagente donde poner en práctica todas las ideas y algoritmos desarrollados durante los estudios de Grado en Ingeniería Informática. | Éste va a consistir en el desarrollo de una plataforma multiagente donde poner en práctica todas las ideas y algoritmos desarrollados durante los estudios de Grado en Ingeniería Informática. | ||
− | |||
En concreto, para la asignatura de Inteligencia Artificial, los alumnos lo usarán para experimentar con los principales algoritmos de búsqueda estudiados. | En concreto, para la asignatura de Inteligencia Artificial, los alumnos lo usarán para experimentar con los principales algoritmos de búsqueda estudiados. | ||
− | |||
Para la asignatura Sistemas Inteligentes, los alumnos podrán desarrollar por completo un agente software, o varios, para poner en práctica los conocimientos aprendidos en la asignatura. | Para la asignatura Sistemas Inteligentes, los alumnos podrán desarrollar por completo un agente software, o varios, para poner en práctica los conocimientos aprendidos en la asignatura. | ||
− | |||
Sobre la plataforma, se desarrollará en Java. Simulará el juego "Capture the Flag". El servidor será un agente sofware JADE. Recibirá jugadores y simulará las partidas. También se desarrollará un agente gráfico, para ver la partida. La comunicación entre agentes se basará | Sobre la plataforma, se desarrollará en Java. Simulará el juego "Capture the Flag". El servidor será un agente sofware JADE. Recibirá jugadores y simulará las partidas. También se desarrollará un agente gráfico, para ver la partida. La comunicación entre agentes se basará | ||
en la biblioteca JADE. La parte gráfica se desarrollará mediante la biblioteca PROCESSING. | en la biblioteca JADE. La parte gráfica se desarrollará mediante la biblioteca PROCESSING. | ||
Línea 14: | Línea 12: | ||
Objetivos: | Objetivos: | ||
- Estudio y desarrollo de la plataforma base y arquitectura del sistema. | - Estudio y desarrollo de la plataforma base y arquitectura del sistema. | ||
− | |||
- Integración con entorno gráfico. | - Integración con entorno gráfico. | ||
− | |||
- Desarrollo de esquemas de programación. | - Desarrollo de esquemas de programación. | ||
− | |||
- Elaboración de algunas prácticas "tipo". | - Elaboración de algunas prácticas "tipo". | ||
− | |||
- Redactar documentación del funcionamiento del sistema. | - Redactar documentación del funcionamiento del sistema. | ||
− | |||
- Implantación de la plataforma en la web. | - Implantación de la plataforma en la web. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Implementadas == | == Implementadas == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
- Cambiar de JFrame a processing 2, luego a processing 3. Esto implica que PApplet no hereda de Applet, debido a eso, no se puede incrustar en JFrame. | - Cambiar de JFrame a processing 2, luego a processing 3. Esto implica que PApplet no hereda de Applet, debido a eso, no se puede incrustar en JFrame. | ||
Línea 73: | Línea 29: | ||
- Dibujar el mapa en 3D con processing. | - Dibujar el mapa en 3D con processing. | ||
− | |||
− | |||
− | |||
− | |||
- Realizar procesador de lenguajes (Parser) para comunicar mapa: | - Realizar procesador de lenguajes (Parser) para comunicar mapa: | ||
− | + | La gramatica finalmente realizada será: | |
− | La | + | Cada línea: token “,” equipo “,” posX “,” posY “\n” |
− | + | token: “entrada” | “jugador” | “muerte” | “base” | “bandera” | |
− | + | equipo: numero | |
− | + | posX: numero | |
− | + | posY: numero | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | token : | + | |
− | equipo : | + | |
− | posX : | + | |
− | posY : | + | |
− | + | ||
- Corregir texturas 2D y 3D. | - Corregir texturas 2D y 3D. | ||
Línea 120: | Línea 53: | ||
- Archivo Config externo. (API Properties) | - Archivo Config externo. (API Properties) | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
- Desconectar monitor | - Desconectar monitor | ||
Línea 206: | Línea 117: | ||
- Ordenar librerías externas. | - Ordenar librerías externas. | ||
− | |||
− | |||
− | |||
- Beta finalizada. | - Beta finalizada. | ||
− | + | == Pendientes == | |
+ | • Poner nombre al equipo. | ||
− | + | • Limpiar, ordenar, optimizar, comentar, depurar código. | |
− | + | • Añadir orientación a jugadores (solo se mueven adelante) | |
− | + | • Cámara por jugadores | |
− | + | • Sombras y luces en processing (Terminar, arreglar fallos) | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | • Redimensionar tablero y casillas a pant. Completa | |
− | + | ||
− | + | • Mapa parcial | |
− | + | • Mejorar jugadores (Hacer jugador rival) | |
− | + | • Hacer esquema rellenable de jugadores (jugador esqueleto) | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
• Añadir elementos al juego. (Vida, daño, paredes moviles, recursos) | • Añadir elementos al juego. (Vida, daño, paredes moviles, recursos) | ||
− | + | • Esquema de clases de cada proyecto y funcionamiento. | |
• Hacer figuras con menos detalles -> eficiencia | • Hacer figuras con menos detalles -> eficiencia | ||
Línea 265: | Línea 148: | ||
== Ideas == | == Ideas == | ||
− | + | Poner nombre al equipo | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | Poner botones del Play... etc... | ||
− | + | Estadísticas. | |
+ | quien es el ganador | ||
+ | numero de ticks jugados | ||
+ | numero de bajas por equipos. | ||
− | + | lista de jugadores y sus bajas. |