SlideShare una empresa de Scribd logo
Universidad Central del Ecuador Modificación del juego “Snake”
-1-
UNIVERSIDAD CENTRAL DEL ECUADOR
FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA
PROGRAMACION II
TEMA:
“MODIFICACIÓN DE UN JUEGO EN JAVA”
TUTOR:
VLADIMIR LUCERO
Realizado por:
Cacuango José
Conlago Danny
Criollo Tatiana
Gallegos David
Otuna Cristofer
Quito – Ecuador
2 015
Universidad Central del Ecuador Modificación del juego “Snake”
-2-
CONTENIDO
AGRADECIMIENTO ............................................................................................................3
RESUMEN .............................................................................................................................4
ABSTRACT ...........................................................................................................................5
INTRODUCCIÓN..................................................................................................................6
1. PRESENTACIÓN DEL PROBLEMA...............................................................................7
1.1. Planteamiento del problema.....................................................................................7
1.2. Formulación del problema .........................................................................................7
1.3. Objetivos del proyecto ................................................................................................8
1.3.1. Objetivo general ...................................................................................................8
1.3.2. Objetivos específicos............................................................................................8
2. PROPUESTA .....................................................................................................................9
2.1. Descripción del programa para grabar el proceso de modificación del juego Snake .9
2.2. Descripción del juego a modificar (Snake)...............................................................10
2.3. Niveles de Snake.......................................................................................................11
2.4. Estado actual .............................................................................................................13
2.5. Lo que se desea cambiar ...........................................................................................13
3. CAMBIOS REALIZADOS .............................................................................................19
4. CONCLUSIONES ...........................................................................................................29
5. RECOMENDACIONES..................................................................................................29
REFERENCIAS BIBLIOGRÁFICAS .................................................................................30
ANEXOS ..............................................................................................................................31
Universidad Central del Ecuador Modificación del juego “Snake”
-3-
AGRADECIMIENTO
Deseamos aprovechar estas líneas para agradecer el apoyo de todas las personas que, en
mayor o menor grado, han puesto su aporte para que este trabajo llegue a su esperado
término.
Al docente encargado de la asignatura de Programación II, por su tiempo en la revisión de
este trabajo, los aportes que ayudaron a mejorarlo y a su disposición. Además al encargado
de publicar el juego Snake, Andrés Yedith, mismo en el cual nos basamos para realizar el
presente trabajo.
A los compañeros y amigos, producto de la convivencia universitaria, que ayudaron a la
esperada terminación de este proyecto.
Universidad Central del Ecuador Modificación del juego “Snake”
-4-
RESUMEN
MODIFICACION DE UN JUEGO EN JAVA
El presente trabajo muestra a un grupo de estudiantes de pregrado, en la asignatura de
Programación II, realizando algunas modificaciones y mejoramientos de un juego llamado
Snake, dentro de la Programación Orientada a Objetos, de manera que se pueda entender
cómo se aplicó los conocimientos del lenguaje de programación de Java, en particular en el
entorno de desarrollo de NetBeans.
Universidad Central del Ecuador Modificación del juego “Snake”
-5-
ABSTRACT
CHANGE A GAME IN JAVA
The present work shows a group of undergraduates in the course of Programming II,
making some modifications and improvements of a game called Snake, within the OOP, so
you can understand how they applied the knowledge of Java programming language,
particularly in the NetBeans development environment.
Universidad Central del Ecuador Modificación del juego “Snake”
-6-
INTRODUCCIÓN
Antes de adentrarnos en la programación orientada a objetos debemos tener una idea acerca
de lo que trata por lo cual se dará una breve introducción. Actualmente una de las áreas más
importantes en la industria y en el ámbito académico es la orientación a objetos, la
orientación a objetos promete mejoras de amplio alcance en la forma de diseño, desarrollo
y mantenimiento del software ofreciendo una solución a largo plazo a los problemas y
preocupaciones que han existido desde el comienzo en el desarrollo de software; la falta de
portabilidad del código y reusabilidad, códigos que son difíciles de modificar, ciclos de
desarrollos largos y técnicas de codificación no intuitivas.
Un lenguaje orientado a objetos responde a estos problemas, por lo cual tiene tres
características básicas: debe estar basado en objetos, basado en clases y capaz de tener
herencia de clases. El elemento fundamental de la (POO) es, como su nombre lo indica el
objeto, se puede definir un objeto como un conjunto complejo de datos y programas que
poseen estructura y forman parte de una organización.
Ya establecida una idea de lo que se trata la POO en el presente proyecto a la hora de
modificar el algoritmo del juego, se empleará un código de manera que al final, tomando
como guía el código original de dicho programa, se pueda hacer una mejora en cualquier
lenguaje que permita la POO. En este caso en particular se utilizará al final el lenguaje de
programación en Java para explicar el proceso de programación.
Universidad Central del Ecuador Modificación del juego “Snake”
-7-
CAPÍTULO 1
PRESENTACIÓN DEL PROBLEMA
1.1. Planteamiento del problema
La programación desempeña un papel de elevada importancia en la informática, también en
la educación intelectual de todo programador y, como toda disciplina, presenta un sinfín de
problemas que por sí mismos, suponen un desafío en el avance de la misma. Por lo cual
requiere de cualidades indispensables como la lógica, el rigor, la abstracción, la
formalización y el orden, las cuales ayudan a discernir los conceptos e ideas.
Durante los últimos años se han propuesto varios modelos y técnicas para lograr que los
programadores mejoren su proceso cognitivo en esta área, para que la enseñanza se vuelva
más agradable y adquiera cada día más seguidores.
1.2. Formulación del problema
Desde siempre, la observación y el modelamiento han sido fuentes primarias del avance
informático. Un programador debe entender lo que realiza, por tanto una resolución
metódica y comprensible de afirmaciones es necesaria para la correcta creación y ejecución
de algún programa.
Universidad Central del Ecuador Modificación del juego “Snake”
-8-
1.3. Objetivos del proyecto
1.3.1. Objetivo general
Explicar paso a paso, sin omitir detalles, el proceso para la modificación de un juego
utilizando las técnicas de la Programación Orientada a Objetos (POO). Estos mismos pasos
podrían utilizarse para la modificación de cualquier programa.
1.3.2. Objetivos específicos
 Utilizar los conocimientos obtenidos en clase para la modificación del juego Snake.
 Implementar códigos para mejorar la presentación y versatilidad del juego al
momento de ejecutarlo.
 Obtener nuevos conceptos acerca de programación de POO, a través de la
investigación personal y grupal para mejorar el juego.
 Hacer un video que nos permita mostrar toda la modificación que logramos en el
juego.
Universidad Central del Ecuador Modificación del juego “Snake”
-9-
CAPÍTULO 2
PROPUESTA
Este tema será de gran utilidad para el principiante en POO, pues se irá explicando todo el
proceso paso a paso. Quizás para alguien experto no sea necesario dar tantos detalles, pero
para el que se inicia en la POO será muy útil. Esa misma metodología le servirá para poder
modificar no solo juegos, sino cualquier tipo de programa orientado a objetos, sin importar
el lenguaje que se utilice para ello.
2.1. Descripción del programa para grabar el proceso de modificación del juego
Snake
En el presente trabajo se utilizará el programa CAMTASIA STUDIO porque es un software
que nos permite construir videos de forma rápida, su edición es sencilla pero atractiva a la
vista, tomar fotos de la pantalla hasta grabación de la pantalla y manejo de contenido.
Además la reproducción de archivos en cualquier tamaño, posee una buena precisión para
la captura de movimiento de pantalla.
Puede ser muy útil para apoyar los procesos de aprendizaje electrónico porque permite
grabar en video cualquier acción u operación que muestre la pantalla, lo cual permite hacer
un seguimiento continuo de actividades. Las aplicaciones que se realicen con este programa
pueden ser integrados a otros recursos de la web 2.0 como los blogs.
2.2. Descripción del juego a modificar (Snake)
Antes de que comencemos a programar, lo primero es hacer una descripción lo más
detallada posible de lo que se quiere lograr. Un error muy frecuente entre los
programadores, incluso no principiantes, es el de lanzarse de inmediato a escribir
instrucciones en el lenguaje que se elija para comenzar a crear el programa deseado (en este
caso el juego), sin primero haberlo planificado. Lo correcto es partir de lo que se desea
lograr, sin importar aún en este punto el cómo lograrlo. Eso nos permitirá, realizar el
Universidad Central del Ecuador Modificación del juego “Snake”
-10-
modelado del problema, mediante la creación de una clase, saber exactamente qué
propiedades y métodos incluir en ella; de lo contrario, corremos el riesgo de perdernos en
improvisaciones que nos desvíen de nuestro propósito inicial o que incluso nos impidan
llevarlo al término esperado.
Así pues, describamos en lenguaje natural, lo más detalladamente posible, pero sin pensar
aún en cómo lograrlo, lo que pretendemos hacer.
Vamos a analizar lo que tenemos del juego y, a lo que vamos a llegar para tener su
mejoramiento y hacerle más entretenido. Por esto en cada nivel se va a presentar su estado
actual y lo que se va a modificar.
Universidad Central del Ecuador Modificación del juego “Snake”
-11-
2.3. Niveles de Snake
Universidad Central del Ecuador Modificación del juego “Snake”
-12-
Universidad Central del Ecuador Modificación del juego “Snake”
-13-
2.4. Estado actual
Este nivel se toma como referencia para indicar que; la figura de color amarillo es Snake,
también que cada punto AZUL es un punto positivo que al recogerlo Snake aumenta su
tamaño, y cada punto ROJO es un punto negativo que al recogerlo, al tener contacto con el
borde (Columna) o al tocarse con sí mismo termina el juego. Snake al recoger un punto
azul va creciendo tres veces su tamaño.
2.5. Lo que se desea cambiar
 Cada vez que recoja un punto AZUL vaya creciendo 1x1
Universidad Central del Ecuador Modificación del juego “Snake”
-14-
 Su velocidad vaya cambiando.
-
-
 Pondremos un poco más de columnas que puedan dificultar un poco.
Universidad Central del Ecuador Modificación del juego “Snake”
-15-
-
 Pondremos más cuadrados ROJOS en partes que sean fáciles de pasar
Universidad Central del Ecuador Modificación del juego “Snake”
-16-
 Aumentaremos cuadrados AZULES.
 Cada vez que recoja puntos negativos o tenga contacto con sí mismo saldrá un
mensaje diciendo “Fin del juego”.
Universidad Central del Ecuador Modificación del juego “Snake”
-17-
 Si llega a este nivel salga un mensaje que diga “FELICIDADES VAS BIEN”.
 Según la dificultad, los colores en cada nivel irán cambiando.
Universidad Central del Ecuador Modificación del juego “Snake”
-18-
 Incorporar sonido de fondo al juego.
CAPITULO 3
Universidad Central del Ecuador Modificación del juego “Snake”
-19-
CAMBIOS REALIZADOS
 Creamos un JFrame, en el cual creamos un Label e insertamos una imagen de fondo
para el menú, dentro de este menú añadimos seis opciones que responderán a una
orden al hacer clic.
 Este cambio en el código nos permitió controlar el crecimiento de Snake.
 Al hacer clic en la primera opción se nos desplegó otro menú que contiene el nivel
de dificultad del juego.
Cada opción posee una línea de
código, las cuales poseen un
método que llama a los otros
menús al hacer clic
Esta línea de código es la que
controla el crecimiento de
Snake
Al cambiarlo controlaremos
que Snake crezca de 1 en 1 y
no de 3 en 3.
Universidad Central del Ecuador Modificación del juego “Snake”
-20-
 Al terminar el juego en cada nivel de dificultad, aparece una ventana con el
mensaje” Buen trabajo has terminado el juego en modo (nivel de dificultad)”.
Al aumentar esta línea de
código, creamos una nueva
opción en la barra de menú, en
la cual podemos escogerla
velocidad de Snake
Universidad Central del Ecuador Modificación del juego “Snake”
-21-
 Al chocar con algún obstáculo aparece una ventana con el mensaje “Te quedan
(número de vidas)”
Este código nos permite
insertar una ventana con un
mensaje “Buen trabajo has
terminado el juego en modo”
Este código nos permite
insertar una ventana con un
mensaje “Te quedan x vidas”
Universidad Central del Ecuador Modificación del juego “Snake”
-22-
 Cuando se terminen las tres vidas que otorga el juego al inicio, aparecerá una
imagen con el mensaje “Fin del Juego”, esta fue creada en un Label dentro de un
JFrame, que al hacer clic nos regresará al menú principal.
Este código es el que permite
que el juego termine y vuelva
a reiniciarse
Con esta línea de código
mostramos un mensaje que
informa que seterminó el
juego
Universidad Central del Ecuador Modificación del juego “Snake”
-23-
 Dentro del menú principal creamos una opción, la cual es un modo de juego
diferente llamado “Modo Supervivencia”, siendo su principal objetivo el de
recolectar tantos puntos como sea posible.
 Al perder en el modo supervivencia aparecerá una ventana con el mensaje “Tu
puntuación fue de “,después de esto volverá al menú principal.
Con esto hemos creado un
nuevo modo de juego, el cual es
un método que recibe
instrucciones de no terminar
hasta que toque puntos
establecidos
Este método también llamará a “puntuación”
la cual aparecerá incluida en el mensaje.
La función de este código, es: Cada vez que
toque las paredes JOptionPane nos retorne un
mensaje.
Universidad Central del Ecuador Modificación del juego “Snake”
-24-
 En el menú principal se encuentra la opción “Selección de música”. Dentro de esta
opción aparece otro menú con varias opciones, las cuales permitirán escoger un
sonido de fondo para el juego.
La función de este código, es llamar a otro
menú, estos a su vez llamarán a la clase
música, que devolverá el sonido.
Universidad Central del Ecuador Modificación del juego “Snake”
-25-
Este método es el que da inicio al juego,
aquí se introducirá el código para el
sonido.
Primero seha importado las librerías
mostradas,después se introdujo el siguiente
código,además se ha creado una variable
tipo Stringcon el nombre “sonido”para
luego darlela dirección del audio con el
formato wav y colocaremos el resto de
código que llamaraal audio en nuestro juego
por ultimo en la claseprincipal
Universidad Central del Ecuador Modificación del juego “Snake”
-26-
 En el menú principal se encuentra una opción llamada “Instrucciones”. Esta opción
permitirá dar al jugador una instrucción acerca de cómo jugar y cuáles son las
reglas.
 En el menú aparece una opción llamada “ Acerca de”, dentro de esta opción se
encuentra el nombre del grupo que modificó el juego y de los integrantes.
La función de este código, es: mostrar
varias ventanas en las cuales se
encuentran las instrucciones.
La función de este código, es que aparezca
una imagen que contiene texto, este método
permite mostrar letra por letra el texto
Universidad Central del Ecuador Modificación del juego “Snake”
-27-
 Con este cambio en el código hemos podido modificar el sentido de desplazamiento
de Snake.
 Hemos modificado uno de los niveles para aumentar columnas, puntos negativos y
puntos positivos aumentando la dificultad
Al crear esta línea de código
controlamos el sentido de
desplazamiento de Snake en el
nivel 8, (Puede ser cualquier
nivel).
Se ha modificado uno de los
niveles, simplemente
aumentando símbolos para
incrementar la dificultad del
juego
Universidad Central del Ecuador Modificación del juego “Snake”
-28-
Universidad Central del Ecuador Modificación del juego “Snake”
-29-
4. CONCLUSIONES
 Debido a la gran cantidad de código que se utilizaría y además que esto podría
confundir al programador o al principiante en la POO, se ha decidido que lo mejor
será no cambiar los colores en cada nivel.
 Ya que el código del juego que decidimos modificar no presenta las características
necesarias, no se ha podido adjuntar imágenes de fondo, debido a que la gráfica del
juego está creada en una matriz, que únicamente indica las posiciones de cuadrados.
 Vemos que se ha podido cumplir la mayoría de los cambios propuestos y que para
modificarlo no hizo falta tener una desmedida capacidad para la programación, sino
más bien una atenta concentración.
5. RECOMENDACIONES
 Se puede recomendar que el programador siga acumulando nuevas ideas y más
información acerca de la POO, porque es muy útil, no solo para crear o modificar
juegos, sino también para crear e innovar nuevos y prácticos softwares que
contribuyan a la colectividad.
 La programación es una materia que puede ser altamente sugestiva, para el que le
encuentre interés, una recomendación útil sería buscar el lado más atrayente de esta
materia para que no parezca atestada de problemas y dificultades.
 Lo más importante a la hora de programar es el interés, sin esto sentiremos
claramente la monotonía y el cansancio visual de tener que leer varias líneas de
código que para el principiante solo significarían palabras poco claras y muy
confusas.
Universidad Central del Ecuador Modificación del juego “Snake”
-30-
REFERENCIAS BIBLIOGRÁFICAS
ANDRES2288,(2011):Curso de Programación Java Developer Free Courses Online,
recuperado de http://javayotros.blogspot.com/2013/01/codigo-juego-de-culebrita-o-snake-
echo.html, el 12 de enero de 2015.
Yedith, A. (2013): juego de snake ó culebrita echo en java más el código de la aplicación,
recuperado de https://www.youtube.com/watch?v=6IQ-T4TJzyw, el 12 de enero de 2015.
Softonic (1997): Camtasia Studio, recuperado de http://camtasia-studio.softonic.com/, el 11
de febrero de 2015.
Azpitarte R., Jordá P., Devesa J., Miedes E., Ruiz M., Torres F.,(2009) : Introducción a la
Programación Orientada a Objetos con Java, Departamentos de sistemas informáticos y
computación, Universidad Politécnica de Valencia. Marzo 2009.
Universidad Central del Ecuador Modificación del juego “Snake”
-31-
ANEXOS
Imagen Nro.1, Canal de you tube donde se consiguió la guía del juego. Fuente:
https://www.youtube.com/watch?v=6IQ-T4TJzyw
Universidad Central del Ecuador Modificación del juego “Snake”
-32-
Imagen Nro.2, Pagina donde se consiguió el código juego. Fuente:
http://javayotros.blogspot.com/2013/01/codigo-juego-de-culebrita-o-snake-echo.html
Universidad Central del Ecuador Modificación del juego “Snake”
-33-
Imagen Nro.3, Pagina donde se consiguió el código juego. Fuente:
http://javayotros.blogspot.com/2013/01/codigo-juego-de-culebrita-o-snake-echo.html
Universidad Central del Ecuador Modificación del juego “Snake”
-34-
Imagen Nro.4, Pagina donde se consiguió el software para grabar todo el proceso de
cambio. Fuente: http://camtasia-studio.softonic.com/

Más contenido relacionado

PPTX
Ejercicio 3
PDF
Estatica ejerciciosresueltos 25 de febrero
PPTX
APLICACION DEL CALCULO EN LA INFORMATICA
PDF
Calculo de aproximaciones usando la diferencial
DOCX
Que es el wronskiano
PDF
265131074 derivadas-parciales (1)
PDF
electrotecnia basica tarea academica
PDF
Métodos numéricos- Problemario
Ejercicio 3
Estatica ejerciciosresueltos 25 de febrero
APLICACION DEL CALCULO EN LA INFORMATICA
Calculo de aproximaciones usando la diferencial
Que es el wronskiano
265131074 derivadas-parciales (1)
electrotecnia basica tarea academica
Métodos numéricos- Problemario

La actualidad más candente (20)

DOCX
Aplicaciones de las ecuaciones diferenciales
PPTX
Aplicación de física en la carrera de ingeniería
PDF
Algunos resueltos de capítulo 13 sears
PPTX
Capacitancia en serie y paralelo
PDF
Derivadas de funciones paramétricas
PDF
Solucionario demidovich tomo III
PDF
Ejercicios resueltos edo homogéneas
PDF
Reglas basicas de integracion
PDF
Movimiento Armónico Simple (M.A.S)
PDF
Problemas resueltos-tensiones-cuerdas (1)
PDF
Formulas de derivadas e integrales
PDF
Examenes resueltos algebra lineal
PDF
Equivalencias del Sistema metrico e ingles.
DOCX
Conservacion de la energia. laboratorio
PPT
Reduccion de orden
PDF
Centro gravedad-centroide
PDF
ejercicios-resueltos-interpolacion-polinomial
PPTX
Ecuación de la recta. Método de determinantes y método algebraico.
PDF
Soluciones derivadas
DOCX
Ejercicios sistemas numericos
Aplicaciones de las ecuaciones diferenciales
Aplicación de física en la carrera de ingeniería
Algunos resueltos de capítulo 13 sears
Capacitancia en serie y paralelo
Derivadas de funciones paramétricas
Solucionario demidovich tomo III
Ejercicios resueltos edo homogéneas
Reglas basicas de integracion
Movimiento Armónico Simple (M.A.S)
Problemas resueltos-tensiones-cuerdas (1)
Formulas de derivadas e integrales
Examenes resueltos algebra lineal
Equivalencias del Sistema metrico e ingles.
Conservacion de la energia. laboratorio
Reduccion de orden
Centro gravedad-centroide
ejercicios-resueltos-interpolacion-polinomial
Ecuación de la recta. Método de determinantes y método algebraico.
Soluciones derivadas
Ejercicios sistemas numericos
Publicidad

Destacado (7)

DOCX
Informe tecnico-juego
PPTX
Juego dos-caras
PPTX
Modificación del juego Snake en java
PPTX
juego del laberinto
DOCX
Proyect progra2 (i.tec)
RTF
Informe técnico
PPTX
Informe grupo-los-de-la-u-presentacion
Informe tecnico-juego
Juego dos-caras
Modificación del juego Snake en java
juego del laberinto
Proyect progra2 (i.tec)
Informe técnico
Informe grupo-los-de-la-u-presentacion
Publicidad

Similar a Informe final de programacion (20)

DOCX
Informe escrito
DOCX
Informe final juego de dados
PDF
Fundamento de Programacion para Videojuegos.pdf
PPT
Presentación Del Curso Programacion Avanzada
DOCX
Documento final (flappy )
PDF
Guia1 pii
PDF
Manual c++
PPTX
Juego Pin Pon en java
PDF
Ipj pdf-042[1]
PDF
2011 2012-practica poo.v.1.2
PPTX
VIDEO JUEGO PIXEL EN JAVA PARA NIÑOS [Autoguardado].pptx
DOCX
(Meta2.1) ensayo¨ la programación en la vida diaria y mi área profesional¨
DOCX
Técnicas de programación
PDF
Prueba
PDF
Varios tema de c++ por (alvaro tejada)
PDF
El arte de programar c++ - versión 3.0
PPT
PresentacióN Del Curso IntroduccióN A La Programacion
DOCX
Configuracion de variables de entorno
PDF
La vida del video juego
PPTX
Danelly
Informe escrito
Informe final juego de dados
Fundamento de Programacion para Videojuegos.pdf
Presentación Del Curso Programacion Avanzada
Documento final (flappy )
Guia1 pii
Manual c++
Juego Pin Pon en java
Ipj pdf-042[1]
2011 2012-practica poo.v.1.2
VIDEO JUEGO PIXEL EN JAVA PARA NIÑOS [Autoguardado].pptx
(Meta2.1) ensayo¨ la programación en la vida diaria y mi área profesional¨
Técnicas de programación
Prueba
Varios tema de c++ por (alvaro tejada)
El arte de programar c++ - versión 3.0
PresentacióN Del Curso IntroduccióN A La Programacion
Configuracion de variables de entorno
La vida del video juego
Danelly

Más de David Gallegos (7)

DOCX
Proyect progra2(info)
PPTX
Presentacion de flappy
PPTX
Presentacion de flappy
PPTX
Juego el Ahorcado
PPTX
Juego de dados en java
PPTX
Interfaz
DOCX
Curso de ingles
Proyect progra2(info)
Presentacion de flappy
Presentacion de flappy
Juego el Ahorcado
Juego de dados en java
Interfaz
Curso de ingles

Último (20)

PDF
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
PDF
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
PDF
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
DOCX
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
PDF
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
PDF
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
DOCX
Tarea De El Colegio Coding For Kids 1 y 2
PDF
Fundamentos_Educacion_a_Distancia_ABC.pdf
PPT
Cosacos y hombres del Este en el Heer.ppt
PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
PPTX
caso clínico iam clinica y semiología l3.pptx
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PDF
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
DOCX
PROYECTO DE APRENDIZAJE para la semana de fiestas patrias
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
Escuelas Desarmando una mirada subjetiva a la educación
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
Tarea De El Colegio Coding For Kids 1 y 2
Fundamentos_Educacion_a_Distancia_ABC.pdf
Cosacos y hombres del Este en el Heer.ppt
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
caso clínico iam clinica y semiología l3.pptx
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
PROYECTO DE APRENDIZAJE para la semana de fiestas patrias

Informe final de programacion

  • 1. Universidad Central del Ecuador Modificación del juego “Snake” -1- UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA PROGRAMACION II TEMA: “MODIFICACIÓN DE UN JUEGO EN JAVA” TUTOR: VLADIMIR LUCERO Realizado por: Cacuango José Conlago Danny Criollo Tatiana Gallegos David Otuna Cristofer Quito – Ecuador 2 015
  • 2. Universidad Central del Ecuador Modificación del juego “Snake” -2- CONTENIDO AGRADECIMIENTO ............................................................................................................3 RESUMEN .............................................................................................................................4 ABSTRACT ...........................................................................................................................5 INTRODUCCIÓN..................................................................................................................6 1. PRESENTACIÓN DEL PROBLEMA...............................................................................7 1.1. Planteamiento del problema.....................................................................................7 1.2. Formulación del problema .........................................................................................7 1.3. Objetivos del proyecto ................................................................................................8 1.3.1. Objetivo general ...................................................................................................8 1.3.2. Objetivos específicos............................................................................................8 2. PROPUESTA .....................................................................................................................9 2.1. Descripción del programa para grabar el proceso de modificación del juego Snake .9 2.2. Descripción del juego a modificar (Snake)...............................................................10 2.3. Niveles de Snake.......................................................................................................11 2.4. Estado actual .............................................................................................................13 2.5. Lo que se desea cambiar ...........................................................................................13 3. CAMBIOS REALIZADOS .............................................................................................19 4. CONCLUSIONES ...........................................................................................................29 5. RECOMENDACIONES..................................................................................................29 REFERENCIAS BIBLIOGRÁFICAS .................................................................................30 ANEXOS ..............................................................................................................................31
  • 3. Universidad Central del Ecuador Modificación del juego “Snake” -3- AGRADECIMIENTO Deseamos aprovechar estas líneas para agradecer el apoyo de todas las personas que, en mayor o menor grado, han puesto su aporte para que este trabajo llegue a su esperado término. Al docente encargado de la asignatura de Programación II, por su tiempo en la revisión de este trabajo, los aportes que ayudaron a mejorarlo y a su disposición. Además al encargado de publicar el juego Snake, Andrés Yedith, mismo en el cual nos basamos para realizar el presente trabajo. A los compañeros y amigos, producto de la convivencia universitaria, que ayudaron a la esperada terminación de este proyecto.
  • 4. Universidad Central del Ecuador Modificación del juego “Snake” -4- RESUMEN MODIFICACION DE UN JUEGO EN JAVA El presente trabajo muestra a un grupo de estudiantes de pregrado, en la asignatura de Programación II, realizando algunas modificaciones y mejoramientos de un juego llamado Snake, dentro de la Programación Orientada a Objetos, de manera que se pueda entender cómo se aplicó los conocimientos del lenguaje de programación de Java, en particular en el entorno de desarrollo de NetBeans.
  • 5. Universidad Central del Ecuador Modificación del juego “Snake” -5- ABSTRACT CHANGE A GAME IN JAVA The present work shows a group of undergraduates in the course of Programming II, making some modifications and improvements of a game called Snake, within the OOP, so you can understand how they applied the knowledge of Java programming language, particularly in the NetBeans development environment.
  • 6. Universidad Central del Ecuador Modificación del juego “Snake” -6- INTRODUCCIÓN Antes de adentrarnos en la programación orientada a objetos debemos tener una idea acerca de lo que trata por lo cual se dará una breve introducción. Actualmente una de las áreas más importantes en la industria y en el ámbito académico es la orientación a objetos, la orientación a objetos promete mejoras de amplio alcance en la forma de diseño, desarrollo y mantenimiento del software ofreciendo una solución a largo plazo a los problemas y preocupaciones que han existido desde el comienzo en el desarrollo de software; la falta de portabilidad del código y reusabilidad, códigos que son difíciles de modificar, ciclos de desarrollos largos y técnicas de codificación no intuitivas. Un lenguaje orientado a objetos responde a estos problemas, por lo cual tiene tres características básicas: debe estar basado en objetos, basado en clases y capaz de tener herencia de clases. El elemento fundamental de la (POO) es, como su nombre lo indica el objeto, se puede definir un objeto como un conjunto complejo de datos y programas que poseen estructura y forman parte de una organización. Ya establecida una idea de lo que se trata la POO en el presente proyecto a la hora de modificar el algoritmo del juego, se empleará un código de manera que al final, tomando como guía el código original de dicho programa, se pueda hacer una mejora en cualquier lenguaje que permita la POO. En este caso en particular se utilizará al final el lenguaje de programación en Java para explicar el proceso de programación.
  • 7. Universidad Central del Ecuador Modificación del juego “Snake” -7- CAPÍTULO 1 PRESENTACIÓN DEL PROBLEMA 1.1. Planteamiento del problema La programación desempeña un papel de elevada importancia en la informática, también en la educación intelectual de todo programador y, como toda disciplina, presenta un sinfín de problemas que por sí mismos, suponen un desafío en el avance de la misma. Por lo cual requiere de cualidades indispensables como la lógica, el rigor, la abstracción, la formalización y el orden, las cuales ayudan a discernir los conceptos e ideas. Durante los últimos años se han propuesto varios modelos y técnicas para lograr que los programadores mejoren su proceso cognitivo en esta área, para que la enseñanza se vuelva más agradable y adquiera cada día más seguidores. 1.2. Formulación del problema Desde siempre, la observación y el modelamiento han sido fuentes primarias del avance informático. Un programador debe entender lo que realiza, por tanto una resolución metódica y comprensible de afirmaciones es necesaria para la correcta creación y ejecución de algún programa.
  • 8. Universidad Central del Ecuador Modificación del juego “Snake” -8- 1.3. Objetivos del proyecto 1.3.1. Objetivo general Explicar paso a paso, sin omitir detalles, el proceso para la modificación de un juego utilizando las técnicas de la Programación Orientada a Objetos (POO). Estos mismos pasos podrían utilizarse para la modificación de cualquier programa. 1.3.2. Objetivos específicos  Utilizar los conocimientos obtenidos en clase para la modificación del juego Snake.  Implementar códigos para mejorar la presentación y versatilidad del juego al momento de ejecutarlo.  Obtener nuevos conceptos acerca de programación de POO, a través de la investigación personal y grupal para mejorar el juego.  Hacer un video que nos permita mostrar toda la modificación que logramos en el juego.
  • 9. Universidad Central del Ecuador Modificación del juego “Snake” -9- CAPÍTULO 2 PROPUESTA Este tema será de gran utilidad para el principiante en POO, pues se irá explicando todo el proceso paso a paso. Quizás para alguien experto no sea necesario dar tantos detalles, pero para el que se inicia en la POO será muy útil. Esa misma metodología le servirá para poder modificar no solo juegos, sino cualquier tipo de programa orientado a objetos, sin importar el lenguaje que se utilice para ello. 2.1. Descripción del programa para grabar el proceso de modificación del juego Snake En el presente trabajo se utilizará el programa CAMTASIA STUDIO porque es un software que nos permite construir videos de forma rápida, su edición es sencilla pero atractiva a la vista, tomar fotos de la pantalla hasta grabación de la pantalla y manejo de contenido. Además la reproducción de archivos en cualquier tamaño, posee una buena precisión para la captura de movimiento de pantalla. Puede ser muy útil para apoyar los procesos de aprendizaje electrónico porque permite grabar en video cualquier acción u operación que muestre la pantalla, lo cual permite hacer un seguimiento continuo de actividades. Las aplicaciones que se realicen con este programa pueden ser integrados a otros recursos de la web 2.0 como los blogs. 2.2. Descripción del juego a modificar (Snake) Antes de que comencemos a programar, lo primero es hacer una descripción lo más detallada posible de lo que se quiere lograr. Un error muy frecuente entre los programadores, incluso no principiantes, es el de lanzarse de inmediato a escribir instrucciones en el lenguaje que se elija para comenzar a crear el programa deseado (en este caso el juego), sin primero haberlo planificado. Lo correcto es partir de lo que se desea lograr, sin importar aún en este punto el cómo lograrlo. Eso nos permitirá, realizar el
  • 10. Universidad Central del Ecuador Modificación del juego “Snake” -10- modelado del problema, mediante la creación de una clase, saber exactamente qué propiedades y métodos incluir en ella; de lo contrario, corremos el riesgo de perdernos en improvisaciones que nos desvíen de nuestro propósito inicial o que incluso nos impidan llevarlo al término esperado. Así pues, describamos en lenguaje natural, lo más detalladamente posible, pero sin pensar aún en cómo lograrlo, lo que pretendemos hacer. Vamos a analizar lo que tenemos del juego y, a lo que vamos a llegar para tener su mejoramiento y hacerle más entretenido. Por esto en cada nivel se va a presentar su estado actual y lo que se va a modificar.
  • 11. Universidad Central del Ecuador Modificación del juego “Snake” -11- 2.3. Niveles de Snake
  • 12. Universidad Central del Ecuador Modificación del juego “Snake” -12-
  • 13. Universidad Central del Ecuador Modificación del juego “Snake” -13- 2.4. Estado actual Este nivel se toma como referencia para indicar que; la figura de color amarillo es Snake, también que cada punto AZUL es un punto positivo que al recogerlo Snake aumenta su tamaño, y cada punto ROJO es un punto negativo que al recogerlo, al tener contacto con el borde (Columna) o al tocarse con sí mismo termina el juego. Snake al recoger un punto azul va creciendo tres veces su tamaño. 2.5. Lo que se desea cambiar  Cada vez que recoja un punto AZUL vaya creciendo 1x1
  • 14. Universidad Central del Ecuador Modificación del juego “Snake” -14-  Su velocidad vaya cambiando. - -  Pondremos un poco más de columnas que puedan dificultar un poco.
  • 15. Universidad Central del Ecuador Modificación del juego “Snake” -15- -  Pondremos más cuadrados ROJOS en partes que sean fáciles de pasar
  • 16. Universidad Central del Ecuador Modificación del juego “Snake” -16-  Aumentaremos cuadrados AZULES.  Cada vez que recoja puntos negativos o tenga contacto con sí mismo saldrá un mensaje diciendo “Fin del juego”.
  • 17. Universidad Central del Ecuador Modificación del juego “Snake” -17-  Si llega a este nivel salga un mensaje que diga “FELICIDADES VAS BIEN”.  Según la dificultad, los colores en cada nivel irán cambiando.
  • 18. Universidad Central del Ecuador Modificación del juego “Snake” -18-  Incorporar sonido de fondo al juego. CAPITULO 3
  • 19. Universidad Central del Ecuador Modificación del juego “Snake” -19- CAMBIOS REALIZADOS  Creamos un JFrame, en el cual creamos un Label e insertamos una imagen de fondo para el menú, dentro de este menú añadimos seis opciones que responderán a una orden al hacer clic.  Este cambio en el código nos permitió controlar el crecimiento de Snake.  Al hacer clic en la primera opción se nos desplegó otro menú que contiene el nivel de dificultad del juego. Cada opción posee una línea de código, las cuales poseen un método que llama a los otros menús al hacer clic Esta línea de código es la que controla el crecimiento de Snake Al cambiarlo controlaremos que Snake crezca de 1 en 1 y no de 3 en 3.
  • 20. Universidad Central del Ecuador Modificación del juego “Snake” -20-  Al terminar el juego en cada nivel de dificultad, aparece una ventana con el mensaje” Buen trabajo has terminado el juego en modo (nivel de dificultad)”. Al aumentar esta línea de código, creamos una nueva opción en la barra de menú, en la cual podemos escogerla velocidad de Snake
  • 21. Universidad Central del Ecuador Modificación del juego “Snake” -21-  Al chocar con algún obstáculo aparece una ventana con el mensaje “Te quedan (número de vidas)” Este código nos permite insertar una ventana con un mensaje “Buen trabajo has terminado el juego en modo” Este código nos permite insertar una ventana con un mensaje “Te quedan x vidas”
  • 22. Universidad Central del Ecuador Modificación del juego “Snake” -22-  Cuando se terminen las tres vidas que otorga el juego al inicio, aparecerá una imagen con el mensaje “Fin del Juego”, esta fue creada en un Label dentro de un JFrame, que al hacer clic nos regresará al menú principal. Este código es el que permite que el juego termine y vuelva a reiniciarse Con esta línea de código mostramos un mensaje que informa que seterminó el juego
  • 23. Universidad Central del Ecuador Modificación del juego “Snake” -23-  Dentro del menú principal creamos una opción, la cual es un modo de juego diferente llamado “Modo Supervivencia”, siendo su principal objetivo el de recolectar tantos puntos como sea posible.  Al perder en el modo supervivencia aparecerá una ventana con el mensaje “Tu puntuación fue de “,después de esto volverá al menú principal. Con esto hemos creado un nuevo modo de juego, el cual es un método que recibe instrucciones de no terminar hasta que toque puntos establecidos Este método también llamará a “puntuación” la cual aparecerá incluida en el mensaje. La función de este código, es: Cada vez que toque las paredes JOptionPane nos retorne un mensaje.
  • 24. Universidad Central del Ecuador Modificación del juego “Snake” -24-  En el menú principal se encuentra la opción “Selección de música”. Dentro de esta opción aparece otro menú con varias opciones, las cuales permitirán escoger un sonido de fondo para el juego. La función de este código, es llamar a otro menú, estos a su vez llamarán a la clase música, que devolverá el sonido.
  • 25. Universidad Central del Ecuador Modificación del juego “Snake” -25- Este método es el que da inicio al juego, aquí se introducirá el código para el sonido. Primero seha importado las librerías mostradas,después se introdujo el siguiente código,además se ha creado una variable tipo Stringcon el nombre “sonido”para luego darlela dirección del audio con el formato wav y colocaremos el resto de código que llamaraal audio en nuestro juego por ultimo en la claseprincipal
  • 26. Universidad Central del Ecuador Modificación del juego “Snake” -26-  En el menú principal se encuentra una opción llamada “Instrucciones”. Esta opción permitirá dar al jugador una instrucción acerca de cómo jugar y cuáles son las reglas.  En el menú aparece una opción llamada “ Acerca de”, dentro de esta opción se encuentra el nombre del grupo que modificó el juego y de los integrantes. La función de este código, es: mostrar varias ventanas en las cuales se encuentran las instrucciones. La función de este código, es que aparezca una imagen que contiene texto, este método permite mostrar letra por letra el texto
  • 27. Universidad Central del Ecuador Modificación del juego “Snake” -27-  Con este cambio en el código hemos podido modificar el sentido de desplazamiento de Snake.  Hemos modificado uno de los niveles para aumentar columnas, puntos negativos y puntos positivos aumentando la dificultad Al crear esta línea de código controlamos el sentido de desplazamiento de Snake en el nivel 8, (Puede ser cualquier nivel). Se ha modificado uno de los niveles, simplemente aumentando símbolos para incrementar la dificultad del juego
  • 28. Universidad Central del Ecuador Modificación del juego “Snake” -28-
  • 29. Universidad Central del Ecuador Modificación del juego “Snake” -29- 4. CONCLUSIONES  Debido a la gran cantidad de código que se utilizaría y además que esto podría confundir al programador o al principiante en la POO, se ha decidido que lo mejor será no cambiar los colores en cada nivel.  Ya que el código del juego que decidimos modificar no presenta las características necesarias, no se ha podido adjuntar imágenes de fondo, debido a que la gráfica del juego está creada en una matriz, que únicamente indica las posiciones de cuadrados.  Vemos que se ha podido cumplir la mayoría de los cambios propuestos y que para modificarlo no hizo falta tener una desmedida capacidad para la programación, sino más bien una atenta concentración. 5. RECOMENDACIONES  Se puede recomendar que el programador siga acumulando nuevas ideas y más información acerca de la POO, porque es muy útil, no solo para crear o modificar juegos, sino también para crear e innovar nuevos y prácticos softwares que contribuyan a la colectividad.  La programación es una materia que puede ser altamente sugestiva, para el que le encuentre interés, una recomendación útil sería buscar el lado más atrayente de esta materia para que no parezca atestada de problemas y dificultades.  Lo más importante a la hora de programar es el interés, sin esto sentiremos claramente la monotonía y el cansancio visual de tener que leer varias líneas de código que para el principiante solo significarían palabras poco claras y muy confusas.
  • 30. Universidad Central del Ecuador Modificación del juego “Snake” -30- REFERENCIAS BIBLIOGRÁFICAS ANDRES2288,(2011):Curso de Programación Java Developer Free Courses Online, recuperado de http://javayotros.blogspot.com/2013/01/codigo-juego-de-culebrita-o-snake- echo.html, el 12 de enero de 2015. Yedith, A. (2013): juego de snake ó culebrita echo en java más el código de la aplicación, recuperado de https://www.youtube.com/watch?v=6IQ-T4TJzyw, el 12 de enero de 2015. Softonic (1997): Camtasia Studio, recuperado de http://camtasia-studio.softonic.com/, el 11 de febrero de 2015. Azpitarte R., Jordá P., Devesa J., Miedes E., Ruiz M., Torres F.,(2009) : Introducción a la Programación Orientada a Objetos con Java, Departamentos de sistemas informáticos y computación, Universidad Politécnica de Valencia. Marzo 2009.
  • 31. Universidad Central del Ecuador Modificación del juego “Snake” -31- ANEXOS Imagen Nro.1, Canal de you tube donde se consiguió la guía del juego. Fuente: https://www.youtube.com/watch?v=6IQ-T4TJzyw
  • 32. Universidad Central del Ecuador Modificación del juego “Snake” -32- Imagen Nro.2, Pagina donde se consiguió el código juego. Fuente: http://javayotros.blogspot.com/2013/01/codigo-juego-de-culebrita-o-snake-echo.html
  • 33. Universidad Central del Ecuador Modificación del juego “Snake” -33- Imagen Nro.3, Pagina donde se consiguió el código juego. Fuente: http://javayotros.blogspot.com/2013/01/codigo-juego-de-culebrita-o-snake-echo.html
  • 34. Universidad Central del Ecuador Modificación del juego “Snake” -34- Imagen Nro.4, Pagina donde se consiguió el software para grabar todo el proceso de cambio. Fuente: http://camtasia-studio.softonic.com/