• Viernes 19 de Abril de 2024, 23:38

Autor Tema:  Como hacer un battleship game?  (Leído 1537 veces)

darkzacros

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Como hacer un battleship game?
« en: Miércoles 15 de Junio de 2011, 05:09 »
0
Hola, bueno soy nuevo en el foro y necesito ayuda para un trabajo de crear un juego,Espero que me ayuden con algunos consejos porque la verdad el profesor no nos ha brindado mucha informacion al respecto.Gracias de antemano
Reglas del Juego

Usted debe crear un programa en Visual C++ para desarrollar el juego “Combate de Fragatas” que  se describe a continuación:

•   Jugadores: Dos fragatas están luchando por el control de los océanos. Una nave es controlada por el computador,  la otra es controlada por el usuario.
 
•   Campo de batalla: Este será simulado en un tablero cuadrado de 10 x 10 casilleros.


•   Fragata: Esta tiene cuatro atributos básicos y cada atributo tiene un puntaje que será determinado al momento de la creación de la nave. A continuación se describe los atributos y el rango de puntaje que pueden tomar:

Atributo   Mínimo   Máximo   Significado
Acciones   1   6   Indica el número de acciones que la nave puede realizar por turno.
Blindaje    1   8   Indica el daño que  la nave puede resistir antes de ser destruida por la nave enemiga
Potencia   1   4   Indica el daño que la nave puede perpetrar al atacar a una nave enemiga
Alcance   1   6   Indica el numero de casillas puede alcanzar el disparo de una nave hacia otra

Cada fragata, tanto la del usuario como la del computador, pueden tener un total de 15 puntos en conjunto en sus atributos.

Ejemplo:  
Fragata usuario: Acciones –> 6, Blindaje –> 1, Potencia –> 4, Alcance –> 4
Fragata computador: Acciones –> 3, Blindaje –> 7, Potencia –> 3, Alcance –> 2


•   Orden: Para saber quien empieza el juego se determinada aleatoriamente.

•   Partida: Inicialmente las fragatas aparecen en los extremos opuestos del tablero (Oeste y Este).

•   Movimiento: Cada fragata puede girar a la izquierda o a la derecha, avanzar de frente o no moverse. Esta no puede moverse diagonalmente o en retroceso. Al girar el indicador de  dirección de las naves cambia.

•   Avance: Cada fragata solo se puede avanzar en la dirección que esta mirando (Norte, Sur, Este, Oeste).

•   Dirección de Ataque: Cada fragata puede disparar solo a la derecha o izquierda de la dirección que esta mirando. (Ejemplo: si esta mirando hacia el Norte, la nave puede disparar solamente al Este u Oeste o si está mirando hacia el Este, la nave solo puede disparar al Sur o Norte).

•   Turno: En cada turno el usuario realiza una secuencia de acciones que la nave tiene permitido en el atributo “Acciones”.

•   Acciones: Para el turno de la nave controlada por el usuario, las acciones son ingresadas una tras otra por el usuario. Para el turno de la nave controlada por el computador, esta calcula sus acciones basadas en el número de acciones que esta tiene. Cada nave entonces  ejecuta la lista de sus acciones empezando desde la primera, una acción a la vez.

•   Ataque: Cuando una nave abre fuego, esta puede golpear a la nave enemiga si el número de casilleros (empezando desde el casillero adelante de la nave) contados hasta donde la nave enemiga esta,  es menor o igual al “Alcance” de sus armas. El daño producido en el “Blindaje” de la nave enemiga es igual  al valor de la “Potencia”. Un ataque solo es posible si el enemigo está dentro del alcance.

•   Fragata Deshabilitada: Si durante cualquier turno, alguna nave que fue creada con un blindaje mayor a 1 y llega a tener un blindaje igual a 1, esta estará deshabilitada y no podrá moverse mas. Solo podrá ceder su turno. Si la nave fue creada con blindaje 1, no existirá este estado para dicha nave.

•   Fragata Hundida: Cuando una nave tenga un “Blindaje” igual o menor a 0, el barco se hunde.

Requerimientos Básicos que deben ser considerados
   Debe tener una matriz para manejar el tablero de juego.
   Dibujar el tablero en la pantalla, incluyendo un símbolo para el barco del usuario y del computador.
   La información ingresada por el usuario debe ser validada.
   Los movimientos del usuario deben ser ingresados mediante el teclado. Usted es libre de elegir las combinaciones de teclas que desea usar para las acciones y movimientos.
   Debe contener obligatoriamente funciones, cada una  debe ser lógicamente creada.
   La fragata controlada por el computador genera un número aleatorio de acciones y disparos, dentro del número de “Acciones” que le son permitidas en su turno.
   Cuando la fragata controlada por el usuario este dentro del rango de alcance de la fragata controlada por el computador, esta ultima ya no realizara acciones de avance aleatorio y solo atacará a la nave del usuario.
Ejemplo1: Nave PC, con alcance 4 y dirección Norte
Ejemplo2: Nave PC, con alcance 2 y dirección Oeste