Você está na página 1de 5

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA

CENTRO UNIVERSITARIO DE OCCIDENTE


DIVISIÓN DE CIENCIAS DE LA INGENIERÍA
INTRODUCCION A LA PROGRAMACION Y COMPUTACION 1

PRACTICA CORTA 1
Objetivos generales
● Familiarizar al estudiante con el lenguaje Java
● Aplicar conceptos recibidos en clase magistral y laboratorio
● Elaborar la lógica para la solución del problema planteado.

Objectivos específicos
● Construcción de algoritmos para los requerimientos de la actividad.
● Ampliar el conocimiento de estructuras de control en JAVA.
● Ampliar el conocimiento de procedimientos en JAVA.
● Implementación de ciclos, sentencias de control y vectores.
● Construcción de aplicaciones simples en consola.
Descripción de la actividad
Se le solicita el desarrollo de un juego RPG (role playing game) que correrá en consola. Un RPG es un
juego que permite la creación de un personaje, pelear contra enemigos, ganar puntos de experiencia y
oro al vencer en las batalla, usar los puntos de experiencia para subir de nivel al personaje y comprar
elementos que sirven al personaje durante las batallas.

Puntos a tomar en cuenta


● Al ejecutar el programa, se tiene la posibilidad de enviar como parametro el nombre del
personaje. De no ser así, antes de cualquier acción el programa le pregunta al usuario por el
nombre de su personaje.
● El juego posee varios menús de acuerdo a las actividades que se realicen. Todos los menús
deben tener la opción ‘Regresar’ para regresar a la actividad previa (si aplica) y en el caso del
menú principal se debe tener la opcion ‘Salir’.
● El personaje posee puntos de vida (HP) y puntos de mana (MP).
● Si los puntos de vida llegan a cero durante una batalla, muere el personaje.
● Los puntos de mana se utilizan durante la batalla para curar al personaje.
● El juego debe mostrar mensajes informativos al jugador para facilitar la jugabilidad.

Menú principal
Permite seleccionar la acción a realizar mediante la lectura de consola, el juego continuará ejecutándose
hasta que el jugador seleccione ‘Salir’. Mediante la lectura del teclado se podrá navegar a través de los
distintos menús del juego.

Las opciones del menú principal son las siguientes:


1. A la Carga!!!!: Esta opción inicia una batalla contra un enemigo aleatorio.
2. Tienda: Esta opción ingresa a la tienda donde el usuario puede comprar diferentes artículos para
usar durante una batalla.
3. zzZzzZzzZ: Esta opción permite al personaje dormir y recuperar en su totalidad los HP y los MP.
4. Status: Muestra las estadísticas del personaje.
5. Mas Poder!!!: Esta opción permite subir de nivel al personaje, siempre y cuando tenga la
experiencia necesaria.
6. Salir: Sale del juego.

Batallas
Las batallas se realizan por turnos y el juego elige aleatoriamente quien inicia las acciones, el jugador o
el enemigo. Cuando es el turno del personaje, se puede elegir una de las siguientes acciones:

Atacar
Basado en el nivel del personaje, el ataque hace daño al enemigo basado en la siguiente fórmula
((NIVEL + 1 ) * 10) + NUMERO_ALEATORIO_ENTRE_10_Y_20

Curar
Basado en el nivel del personaje, la curación restaura HP siguiendo la siguiente fórmula

((NIVEL + 1 )* 5) + NUMERO_ALEATORIO_ENTRE_15_Y_25

El ejecutar la acción ‘Curar’ consume un punto del mana, por lo que si no hay mana entonces no se
realiza la curación y termina el turno del personaje.

Item
Esta acción permite escoger al jugador uno de los items que posee, ya sea para curar o para restaurar
MP.

Tengo Miedo
El personaje huye de la batalla pero pierde una cantidad de oro basada en la siguiente fórmula

(NIVEL * 2) + NUMERO_ALEATORIO_ENTRE_5_Y_10

Si el personaje no cuenta con suficiente oro para huir, la batalla continua.

Al completarse alguna de las acciones anteriores, se termina el turno del personaje y el enemigo ataca
(si aun está con vida).

La batalla se da por terminada cuando se le agotan los HP al enemigo o al personaje. Si el enemigo es


el que pierde, entonces se recompensa al personaje con puntos de experiencia y oro siguiendo las
siguientes formulas

Experiencia: NUMERO_ALEATORIO_ENTRE_20_Y_30
Oro: NUMERO_ALEATORIO_ENTRE_15_Y_45

Si el enemigo gana, el personaje muere reiniciando la experiencia y el oro ademas de borrar todos los
artículos que el personaje haya comprado.

IMPORTANTE:
Siempre se deben visualizar los HP y MP del personaje durante TODA la batalla para facilitar la
jugabilidad.

Personaje
Al inicio del juego, el status del personaje es el siguiente:
● Nombre: el asignado cuando se ejecuta el programa o el que se pregunta al iniciar el juego
● HP: 100 = 100 * (NIVEL + 1)
● MP: 10 = 10 * (NIVEL + 1)
● Nivel: 0
● Experiencia: 0
● Articulos: ninguno
El status anterior es al que el personaje regresa cuando muere.

Enemigos
Existen 3 tipos de enemigos descritos a continuación:

Dark wolf
Dificultad baja. HP = 100. Factor de Ataque: 10

Dragon
Dificultad media. HP = 200. Factor de Ataque: 15

Mighty Golem
Dificultad alta. HP = 350. Factor de Ataque: 25

Los enemigos deben ser elegidos aleatoriamente cuando se inicia una batalla y el daño que hacen al
personaje se basa en la siguiente fórmula:

Número aleatorio entre (FACTOR_DE_ATAQUE + NIVEL) y (FACTOR_DE_ATAQUE + NIVEL + 10)

IMPORTANTE: ‘NIVEL’ se refiere al nivel del personaje, no del enemigo.

Tienda
En la tienda se pueden comprar los siguientes artículos:
Potion: 50 oro, cura 25 HP
Hi-Potion: 100 oro, cura 75 HP
M-Potion: 75 oro, recupera 10 MP
El personaje puede comprar tantos artículos como pueda.

zzZzzZzzZ (Dormir)
Esta opción permite al personaje descansar y recuperar en su totalidad los HP y MP pagando 30 de oro.

Status
Muestra en pantalla todos los atributos del personaje: HP, MP, oro, experiencia, nivel, monstruos
vencidos y cantidad disponible de cada ítem.
Más Poder!!!
Esta opción ayuda los niveles del personaje usando los puntos de experiencia como base. Por cada 100
puntos de experiencia se aumenta en uno el nivel del personaje. Por ejemplo:

Nivel actual: 2
Experiencia actual: 351

Después de ingresar a la opción ‘Más Poder!!!’ el nivel del personaje es 3. La experiencia no se


elimina, solo se sigue acumulando.

Salir
El juego termina y la ejecución del programa finaliza.

Importante
● Usar lenguaje de programación JAVA
● Practica obligatorio para tener derecho al proyecto final.
● Aplicación exclusivamente en consola.
● Es valido utilizar algun IDE o cualquier editor de texto.
● Copias obtendrán nota de cero y se notificará a coordinacion.
● Si se va a utilizar código de internet, entender la funcionalidad para que se tome como válido.

Entrega
La fecha de entrega es el dia sabado 17 de febrero antes de las 7:00 al correo
jose.granados@cunoc.edu.gt​. Los componentes a entregar son:
● Código fuente
● Código compilado (ejecutable)
● Algoritmos de cada funcion o metodo
● Diagrama de flujo general del programa.

Calificación
La calificacion se realizara el día sábado 17 de febrero a partir de las 8:00 horas en el salón TICs. El
estudiante debe llevar impresa la hoja de registro de punteo que se publicará en los siguientes dias.

Você também pode gostar