Fútbol 2x2

Objetivo

Desarrollar un sistema que permita que 2 jugadores (programas clientes) de cada equipo jueguen fútbol en un estadio (programa servidor) en donde el público puede ver el desarrollo del partido en su “televisor” (programa cliente). Todo el sistema se puede consultar por Web y configurar vía web-services.

Descripción

futbol2x2.jpg Existen actualmente varios sistemas para programar juegos en donde cada “jugador” es autónomo, tales como Robocode (standalone) y RoboCup (en red). Lo interesante de los sistemas en red es que permite que desde diferentes lenguajes de programación se programe la inteligencia de cada jugador, compartiendo todos un protocolo común en comunicación y en el API de funciones que se pueden usar. Normalmente estos jugadores se conectan a un servidor central (estadio) en donde se desarrolla el juego (batalla, partido, etc.). El servidor debe coordinar las acciones de los jugadores y enviar información a los jugadores para que ellos tomen decisiones de como evolucionar. La información que se envía de los jugadores hacia el servidor y viceversa se especifica normalmente como el protocolo que el sistema de juegos soporta, el cual puede describir como se solicita información y ejecución de acciones. Por otra parte existen clientes especializados que actúan como jugadores no participativos (espectadores) los cuales pueden obtener información para poderla presentar de manera gráfica a los usuarios del sistema.

Especificaciones

Al finalizar el proyecto se desea obtener:

  • Una implementación funcional del sistema.
  • Diseño de un protocolo de comunicación entre los clientes (jugadores y espectadores) y el servidor (estadio)
  • El servidor debe sincronizar las acciones que realizan los jugadores y retornar información a los jugadores (retroalimentación) de los que sucede dentro del estadio
  • Se debe tener un objeto que representa el balón, manejado en el servidor el cual se afecta con los choques que se produzcan entre los jugadores y el balón (física de choques entre cuerpos redondos)
  • Se debe definir la dimensiones y reglas del estadio (tamaño del campo de juegos, tamaño de las porterías, radio del balón, radio de los jugadores, si hay rebotes en las paredes o hay saques de banda, etc.) así como llevar el marcador del partido.
  • El servidor debe también soportar la configuración y consulta de sus parámetros por medio de web-services y consultas via web.
  • Cada Jugador (cliente) debe mantener información necesaria para poderse mover en el campo (e.g. posición, dirección, velocidad, etc.).
  • La comunicación entre jugadores y estadio se debe realizar usando sockets.
  • De alguna manera se debe poder ver de manera gráfica lo sucedido en el partido (on-line o off-line) usado el cliente espectador

Referencias

FIXME

 
materias/laboratorio_de_lenguajes_ii/lableng2/futbol2x2.txt · Última modificación: 2011/01/24 15:30 (editor externo)
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki