Proyecto Excel: Monopoly

Como he mencionado en un par de ocasiones en la Memoria del curso, la profesora nos pidió a mediados de febrero, como proyecto del segundo trimestre, que creÔsemos un "programa" con excel. Sin embargo, mi compañera Carlota y yo entendimos algo bastante distinto de lo que la señorita esperaba de nosotros, por lo que comenzamos a crear un verdadero programa mediante Visuel Basic en Excel: el monopoly.

Después de descubrir el verdadero objetivo del trabajo (crear una tabla con funciones que realice cÔlculos automÔticos para distintos problemas), la profesora nos permitió continuar igualmente con nuestro proyecto, aunque fuese bastante distinto. Por lo tanto, nos pusimos a ellos y comenzamos creando el tablero, añadiendo botones, fichas, cuadros de texto informativo... finalmente y tras programar el funcionamiento de todos estos elementos obtuvimos el resultado que se muestra a continuación, junto a la explicación de cómo jugar y cómo ha sido creado el juego. Aquí se encuentra todo el código del programa y en la parte inferior de la pÔgina estÔ disponible la versión final del juego, por lo que no dudéis en descargarlo!


Monopoly_interfaz


Cómo jugar

Para jugar a esta versión delmundialmente conocido juego del Monopoly, vamos a seguir unas reglas obtenidasa partir de la simplificación del reglamento tradicional de este juego de mesa.Para ello, algunas de las características mÔs avanzadas, como la compra-ventade casas para propiedades, han sido suprimidas, debido en parte al reto queimplica programar estos elementos.


Elementos del juego

En la interfaz principal deljuego encontramos en el lado izquierdo de la pantalla el tablero junto a lasfichas de los participantes. Situados a la derecha del tablero se encuentranlos bloques de texto mediante los cuales los jugadores y espectadores puedenobservar el desarrollo de la partida. Estos bloques son los siguientes:

  • Jugadores: muestra el nombre, color ydinero de cada uno de los cuatro jugadores de la partida.
  • Dados: estos tres cuadros de texto dellado derecho enseƱan el resultado obtenido la Ćŗltima vez que un jugador tirólos dados, asĆ­ como la suma de los valores de ambos dados.
  • Posición actual: muestra el nombre de lacasilla en la que ha caĆ­do el Ćŗltimo jugador en tirar los dados. EstĆ” situadobajo la lista de jugadores con su estatus.
  • Suerte y caja de comunidad: en el casode que uno de los participantes caiga en una casilla de suerte o de caja decomunidad el juego escoge de forma automĆ”tica y aleatoria una ā€œcartaā€ de lapila correspondiente y muestra su resultado en estos dos bloques de texto.
  • ā€œInjailā€: este mensaje, que puede estar situado sobre la información de cualquierjugador, solo serĆ” visible en el caso de dicho jugador estĆ© encarcelado,independientemente de la razón por la que lo estĆ©.


AdemÔs, para permitir que losjugadores puedan ejercer su control sobre los turnos, administrar suspropiedades e incluso empezar o dar por terminada la partida, estos disponen devarios botones que facilitan todas estas interacciones con el ordenador. Paratodo ello existen únicamente cuatro tipos de botones:

  • Nueva partida: este botón restablece lapartida, devolviendo a todos los jugadores a su posición inicial y devolviendosu cantidad de dinero a su valor original.
  • Salir: este botón cierra el documento deExcel. Un detalle importante con respecto a este botón es que da la oportunidadde guardar la situación del juego, por si los jugadores desean pausarlo oposponerlo por falta de tiempo. (La partida puede alargarse bastante en el casode jugadores experimentados)
  • Tirar los dados: como bien se puede unoimaginar, este botón hace aparecer unos nuevos valores aleatorios en losbloques de texto asociados a los dados, ademĆ”s de implicar el cambio de turnoal jugador siguiente. DespuĆ©s de esto, las fichas se mueven de forma automĆ”ticapor el teclado.
  • Botones de propiedad: estos pequeƱosbotones estĆ”n situados junto a todas y cada una de las propiedades. Gracias aello, los jugadores pueden acceder a la información de cada propiedad, asĆ­ comovendĆ©rsela a otro jugador, en el caso de que le pertenezca.


Reglas

Debido a quese trata de un juego integrado en un ordenador y a que muchas de sus funcionesson automÔticas, resulta algo difícil encontrar formas de hacer trampas en eljuego. Sin embargo, continúan existiendo algunas simples reglas sin las cualesel juego no se desarrollaría de una forma justa y equilibrada, en la cual todoslos participantes tuviesen las mismas oportunidades de alzarse con la victoria.

Las siguienteacciones quedan por lo tanto terminantemente prohibidas.

Ā Ā Ā Ā Ā Ā Ā I.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Jugar durante el turno de otra persona.

Ā Ā Ā Ā Ā  II.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Tirar los dados para evitar que otra personapueda tomar decisiones durante ese turno.

Ā Ā Ā  III.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Abandono de la partida. Esto provocarĆ­a que laspropiedades del jugador que deja de jugar queden inaccesibles para los quepermanecen en la partida.

Ā Ā Ā  IV.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā ā€œSuicidioā€: muchas personas algo quisquillosasprobablemente considerarĆ­an la opción de vender a un bajo precio todas suspropiedades, con el objetivo de perder y abandonar la partida, evitando laprohibición III, pero esto estĆ” tambiĆ©n prohibido.


CƔrcel

Cuando el jugador es enviado a la cƔrcel, la ficha vadirecto de la casilla en que estƔ ubicada a la de la cƔrcel.

Un jugador vaa la cƔrcel:

1. Si va a parar ala casilla que reza "Vaya a la cƔrcel".

En ningĆŗn caso recibirĆ” los 200$ porpasar por la casilla de salida.

Si en el transcurso normal del juego el jugador va aparar a la casilla de la cÔrcel sin ser enviado a ella de forma expresa, seconsidera una simple visita y no es cargado con ninguna sanción. Por lo tanto continúael juego en su siguiente turno.

Cuando un jugador ha sido enviado a la cÔrcel, debeesperar hasta el próximo turno para liberarse, sea cual sea la manera en que lohaga (si lo hace).

Unjugador sale de la cƔrcel:

1.Ā Ā Ā Ā Ā Ā  Si obtiene un mismo nĆŗmero en los dos dados duranteuno de los tres turnos de juego siguientes (en este caso, desplazarĆ” la fichael nĆŗmero de casillas indicado por los dados).Ā 

2.Ā Ā Ā Ā Ā Ā Si se terminan los 3 turnos y no ha salidotodavĆ­a.

El jugador seguirĆ” cobrandoalquileres y recibirĆ” los beneficios de sus propiedades, aunque sin poder moverficha o realizar otros cambios en ellas. Por lo tanto, no podrĆ” comprar nivender propiedades a otros jugadores.


Fin de la partida

La partida sólose terminarÔ cuando los jugadores lo decidan, puesto que puedes jugar condinero negativo, no hay límite de tiempo, etc. Por lo tanto, queda en mano delos jugadores decidir si se utilizan las reglas originales del Monopoly conrespecto al fin de la partida o una versión personalizada de estas.

Para dar una partida por acabada,simplemente se da a la opción de salir, eso sí, sin guardar archivo. En el casode querer seguir jugando mÔs adelante, existe la opción de darle a salirguardando la partida para volver al punto donde esta se encontraba, sindeshabilitar ninguna característica del programa ni perder el progreso deljuego.



Cómo crearlo

En este apartado vamos a explicarlos pasos seguidos para la creación de este juego del monopoly, a través deExcel y mediante programación en Visual Basic. Finalmente incluiremos todo elcódigo del programa, sin embargo, la explicación del mismo serÔ desde un puntode vista bastante general, puesto que para entenderlo por completo se requiereun alto nivel de conocimiento de este lenguaje de programación.


Activar la opción de VBA en Excel

Visual Basic para Excel combinaun entorno de programación integrado cuyo nombre recibe Editor de Visual Basicy el lenguaje de programación que utiliza es Visual Basic. El objetivo de VBpara Excel es crear programas y diseñarlos fÔcilmente desarrollando nuevasfuncionalidades en Excel.

Visual Basic funcionarÔ a travésde macros que nos permitirÔn crear tareas automatizadas paso a paso. Estelenguaje de programación nos servirÔ para facilitarnos el trabajo.

Para empezar a trabajar con estelenguaje de programación, deberemos activar Visual Basic en Excel. Para ello,habilitaremos la ficha de Programador siguiendo los pasos indicados:

  • Hacer clic en el botón de Office y seleccionar Opciones de Excel.
  • Elegiremos la opción mĆ”s frecuentes de la lista de opciones.
  • En el panel de la derecha, seleccionamos laopción mostrar ficha de programadoren la cinta de opciones y aceptamos la cambios.
  • Se mostrarĆ” la ficha de programador en la citade opciones.


DiseƱo de la interfaz

Para comenzar, empezamos creandoen hojas en sucio el diseño de la interfaz del videojuego, para luego plasmareste diseño en la hoja de cÔlculos. Para ello, situamos el tablero en el ladoizquierdo de la pantalla y añadimos unos cuadros de texto con la informaciónsobre el estado económico de cada jugador. Posteriormente, también creamos losbloques de texto donde aparecerÔn los números de los dados, así como losbotones de los dados, nueva partida y salir. AdemÔs, añadimos las celdas dondese mostrarÔn los mensajes de las casillas de suerte y de caja de comunidad.

Una vez creados todos estoselementos bÔsicos empieza la tarea de programarlos, para que muestren lainformación que deben o, en el caso de los botones, que realicen diversasacciones. Esto resultaría extremadamente largo de explicar, por lo que me voy a limitar a mostrar el código que hemos creado nosotros mismos para hacer funcionar el programa.


SubpÔginas (1):Código
Chumbigo,
9 mar. 2017 12:19
v.1