# Tecnologías multimedia e interacción/Curso 2015-2016: Caso 8

Título: Stencyl VS Construc

## Descripción del Proyecto

El proyecto consistió en utilizar Stencyl, para la adaptación del juego Pacman, realizado por cursos anteriores con el Software Construct2. Al finalizar el desarrollo del juego, se procederá a realizar una comparación entre los dos aplicativos, con el fin de que sea utilizado en futuros casos para realizar nuevos juegos.
El segundo proyecto fue realizar el antiguo juego Solar Fox. Solar Fox fue un juego creado por árcade en el 1981 por Bally / Midway. Posteriormente fue modificado para ser utilizado en Ataris, ColecoVision y consolas de Intellivision.
La tarea del jugador es pilotar una nave espacial a través de una serie de matrices de células solares que están dentro de un bastidor. Mientras que captura las células deberá esquivar las bolas de fuego que son lanzadas por varios centinelas. Estos centinelas se mueven de forma continua a lo largo del perímetro donde se encuentran las células solares. Cuando se cubre o paso sobre toda la matriz de células solares, puede ingresar por un cuadrado, en el proyecto la nave azul , para pasar al siguiente nivel. Las naves centinelas que lanzan bolas de fuego y la matriz de células van aumentando en cada nivel.
Existen varias formas de matrices, para pasar de nivel, adicional a pasar sobre toda la matriz debe lograrlo dentro de un tiempo establecido.
Para comprender el proyecto primero voy a explicar ciertos conceptos básicos en los que se basa Stencyl para programar un videojuego:
* Actors: son los personajes que hay en el juego ya sea el personaje principal o los enemigos, es decir, los objetos con los que el usuario puede interactuar en el juego.
* Backgrounds: los fondos de los niveles o escenarios.
* Scenes: los niveles del juego.
* Logic: la lógica del juego, allí es donde se encuentran los comportamientos que tiene cada personaje o escena, por ejemplo que el personaje pueda saltar, disparar, etc.
* Sounds: los sonidos del juego.
* Tilesets: las plataformas que forman los niveles.
Durante el proceso de aprendizaje para realizar el juego, se fueron creando actores, poniendo sonidos, dando le forma al juego en la parte visual, se buscaron imágenes asociadas al juego, las mismas que se editaban de acuerdo a las necesidades en el mismo editor que ofrece Stencyl. Para tratar de entender la parte de lógica baje ejemplos existentes en línea y procedí a realizar pruebas cambian código. Posteriormente en base a lo que iba necesitando para continuar con el desarrollo del juego procedí a leer tutoriales, la mayoría de la información esta disponible únicamente en inglés, por tal razón y para aclarar dudas procedí a ver videos tutoriales.

## Tecnologías Utilizadas
### Stencyl

Software disponible de forma gratuita para la creación de videojuegos en 2D sin tener que escribir una sola línea de código. Esto es posible gracias al lenguaje propietario de programación visual de Stencyl, que se basa en un arrastrar y soltar, interfaz de bloque de ajuste automático. Los juegos se pueden exportar a la Web o ejecutables.
Ventajas
-Multiplataforma
-Interfaz muy completa y detallada
-Código nativo
-Guía del programa creado por la misma página (stencylpedia).
Desventajas
-La versión PRO es de pago
-La traducción al lenguaje español es incompleta
-Stencylpedia solo disponible en inglés

### Construc 2

Construct 2 es una de las mejores opciones para principiantes, o para las personas que realmente no me gusta el código, porque es relativamente fácil y sencilla para comenzar a desarrollar juegos. Construct 2 es fabricante de juegos HTML5, lo que significa que todo lo que se crea en Construct 2 se está construyendo en HTML5 (HTML, CSS y JavaScript).
Ventajas
-Hoja de eventos que permite tener una interfaz de construcción lógica y simple de acción-reacción.
-Importación de objetos de manera sencilla, simplemente se arrastrar a la disposición de una carpeta, lo que hace que sea rápido y fácil importar dichos archivos en los proyectos.
Desventajas
-Totalmente basado en HTML5
-No es útil para juegos complejos
-Cuando se tiene una gran cantidad de eventos, es molesto buscar los eventos

## Stencyl VS Construct 2

La curva de aprendizaje de construct no es muy empinada, en comparación con Stencyl. En Construct 2 la secuencia de juego va en la hoja de eventos, lo cual es fácil de entender cuando el juego sencillo, en el caso de Stencyl la secuencia de juegos está separada en escenas y actores, los actores pueden estar agrupados lo cual simplifica los eventos que se deben agregar a la secuencia del juego. Las dos herramientas tienen versiones de pago. La interfaz de Contruct 2 a primera vista, tiene aspecto familiar a diferencia de Stencyl que tiene una interface gráfica.

## Dificultades encontradas y cómo se han superado

La mayor de las dificultades fue entender la programación de Stencyl. En los primeros días del uso de Stencyl, me di cuenta que Stencyl tenía incorporados comportamientos como saltar, moverse, chocar, entre otros. Pero el juego Solar Fox requería más comportamientos, los cuales fueron complicados de implementar en su totalidad. El juego se asemeja mucho a lo esperado pero por limitaciones en el conocimiento de la herramienta no fueron posibles realizar.

## Trabajos futuros y expectativas

La idea básica del juego respecto a cómo se desarrolla, es decir pasar sobre todas las celdas y no ser alcanzado por las bolas de sol, se ha conseguido. Pero se puede mejorar y crear más escenarios en base a más condiciones.
Se podría mejorar los personajes y los escenarios, pero para ser principiante me siento satisfecha.
Actualmente existen varias herramientas para realizar juegos más interactivos, en 3D, de realidad virtuales los cuales desearía aprender.

## Conclusiones

•Los dos software son muy interesantes y ofrecen diferentes opciones.
•Son excelentes para principiantes o personas sin experiencia de programación.
•Construct2 y Stencyl ofrecen diversas funciones que facilitan el desarrollo de juegos en 2D.

## Enlaces a repositorio de software

En el siguiente enlace está disponible el código fuente Pacman realizado en Stencyl y la versión ejecutable en Flash.
https://github.com/kinorev/Pacman

## Alumnos implicados

Verónica Chamorro Alvarado