miércoles, 10 de abril de 2013

Las cosas importantes en un SHMUP

En anteriores artículos se han comentado ya sea implicita o explicitamente (como es el caso de los sistemas de puntuaciones) los aspectos que definen un shoot'em up como tal, pero quizás no han quedado algunas cosas lo claras que debieran.

Este nuevo artículo lo dedicaré a extender una explicación de los aspectos más importantes y a la vez críticos para definir un shoot'em up de verdad.

- Perfección teórica: Qué seria el mundo de los shmup's sin sus altas puntuaciones, sus speed-runs y sus 1-coin play's... a este último se refiere esto: un juego de este tipo debe posibilitar el hecho de que un teórico jugador pueda pasarse el juego solo con 1-moneda/vida, es decir, sin morir.
Pero ojo, esto no quiere decir que el juego deba ser fácil, quizás todo lo contrario y por ello lo de "teórica", en teoria pasarse el juego sin morir debe ser una posibilidad, pero para conseguir esto se debe sudar tinta.

- Tiempo mínimo de inactividad: Todos lo sabemos y es lo que deseamos de un juego de este tipo, cuanto más frenéticos mejor. El jugador no debería estar parado sin un hecho justificado, lo que se busca los shmup's es acción pura, no poder relajarte ni un momento... de otra forma, solo sería perder el tiempo, por ello, esta sentencia podría ser crítica a la hora del diseño del gamplay.

- Amplia potencia de fuego: Evidente pero también remarcable... nuestra pequeña nave se va a enfrentar a interminables hordas de enemigos a cada cual más temible y numerosa.
¿Que menos que ofrecerle al jugador una potencia de fuego equivalente para hacerles frente?
Esto es como digo remarcable, pues en los antiguos shmup's no siempre se cumple, pero evidente en el caso de los actuales.
El jugador debe disponer de una variedad amplia de armas, con distintos rangos de disparo, potencia, etc. con el fin de hacer frente a las hordas que están por llegar.

- Sistema de puntuaciones interactivo: esto ya se ha comentado antes, pero lo puntualizaré.
Para el tipo de jugador de este género, el superarse, en lo que a puntuaciones se refiere, es importantísimo, tanto que un aspecto importante es darle al mismo durante su partida información clara de su puntuación he incentivarlo.
Como ya hemos visto antes, una forma de incentivar al jugador, por poner ejemplos, serían las puntuaciones por chaining o combos, pues los mismos dan información en tiempo real de como esta afectando la forma de jugar del jugador en sus puntuaciones.

Estos serían los 4 aspectos más importantes a tener en cuenta para crear un verdadero shoot'em up y a la vez uno que sea lo suficientemente adictivo como para ser rejugado.
Como se puede ver, crear un buen shoot'em up no va a ser una carrera fácil, pero como se dice más arriba, los retos siempre pican a un verdadero jugón.

sábado, 6 de abril de 2013

Motores de juegos I: Love2D

Los motores de juego son un recurso básico (casi la piedra angular) y muy utilizado hoy en día en el mundo del desarrollo de videojuegos, si bien los hay que optan por crear el suyo propio, esto no es lo más habitual.

Un motor de juego nos hará la vida más facil a la hora de desarrollar un juego y sobretodo en nuestros primeros pasos en esto, por citar un ejemplo de estas facilidades: todos nos van a ofrecer el bucle de juego ya hecho y unas directivas básicas de como dibujar objetos en pantalla.
Globalmente estos motores nos proporcionan las utilidades básicas para la creación de cada juego, así como un paradigma, una organización, y normalmente unos dispositivos objetivo.
Además suelen tener disponibles una serie de extensiones como puedan ser motores de físicas u otros.

Para el primer artículo, de espero, una serie de los mismos, os voy a presentar un motor de juego que recientemente me ha despertado curiosidad:

Löve2D

Löve2D es un motor de juego para juegos en 2 dimensiones como su propio nombre indica.
Este motor o framework como se autodenomina es open source y se programa en LUA.
Las plataformas para la que está disponible y sobre las que se desarrollan los juegos basados en el, son:

  1. Windows
  2. MacOS 
  3. Linux
Hay que resaltar que löve2D incluye una implementación en LUA de Box2D, motor de físicas seleccionado para mi actual juego en desarrollo, con lo que gracias a el podremos crear juegos con físicas realistas.

Así mismo cuenta con buena variedad de IDE's y plugins para que su desarrollo sea más sencillo.
A título personal, actualmente esto jugando con él con SublimeText 2 y los plugins disponibles de löve2D

Para empezar con löve2D lo más fácil (dando por sentado que conocemos LUA) es empezar por su wiki, que aunque al principio se antoja algo escueta, conforme se va recorriendo se va uno dando cuenta que cubre todos los aspectos esenciales de este framework y además incluye tutoriales y video-tutoriales.

Si llegados a este punto la información se nos quedara corta o nos atascáramos en algún punto, también podemos contar con su activa comunidad ya sea mediante sus foros como por su canal de IRC: #love@irc.oftc.net

Por último y para los que realmente les haya picado la curiosidad y quieran empezar a trastear con este motor, aquí os dejo un boilerplate/plantilla (de creación propia) con todo listo para empezar nuestro primer juego en löve2D:


Espero que os haya gustado el artículo y si se puede mejorar, comentad libremente ;)