martes, 19 de diciembre de 2006

El ritmo

Una de las cosas que he comprobado a la hora de ir montando el juego (experimento, más bien) es la importancia del ritmo: la necesidad de marcar la velocidad a la que pasan los eventos.

En los videjouegos clásicos el ritmo suele ser rápido para evitar que las partidas se alarguen en exceso, aunque cada juego tiene su propio ritmo; en el Tetris, por ejemplo, va muy ligado a la dificultad creciente del juego: al principio las piezas caen lentamente, dejando tiempo para colocarlas adecuadamente, pero en poco tiempo el ritmo se acelera hasta volverse frenético. En los niveles más avanzados apenas vemos las piezas caer.



El ritmo es, por tanto, uno de los factores con el que se manipula el grado de dificultad: al ir avanzando niveles se puede ir reduciendo el intérvalo para colocar la ficha, aumentando el ritmo y la dificultad, ya que el jugador dispone de menos tiempo para buscar la mejor jugada y se puede equivocar más fácilmente.

Hay que compaginar la velocidad del juego a la velocidad de percepción del jugador; si por ejemplo, cuando desaparecen las fichas del tablero al juntar dos estrellas no inserto una pausa y la siguiente pieza aparece inmediatamente, la experiencia se resiente, porque no vemos (no recibimos) una gratificación por el éxito de la acción. Igual pasa cuando cambiamos de nivel, el usuario espera que le demos un respiro.

El ritmo se debe acompañar de sensaciones que lo potencien: musica y efectos visuales. La música, sobre todo, debe funcionar como un metrónomo de lo que pasa en el juego, puede ser relajante o excitante, pero siempre en sintonía con lo que está pasando.

Dentro de Adobe Flash tenemos dos maneras principales para marcar y controlar el ritmo: la velocidad de fotogramas y los intérvalos.

  • Con la velocidad de fotogramas (FPS) especificamos la velocidad de redibujo de el juego, por lo que de cara a las animaciones debemos tener en cuenta este factor; por ejemplo, yo utilizo eventos onEnterFrame para crear animaciones al vuelo en Actionscript, si la velocidad de la película es 12 FPS, este evento se producirá doce veces por segundo.

  • Los intérvalos (setInterval) se encargan de ejecutar una función cada cierto tiempo. Yo los utilizo para espaciar eventos y ajustar a la velocidad de percepción del jugador: aparición de una nueva ficha, colocación, redondeamiento, bonus, etc.


El objetivo es conseguir un ritmo de juego lo suficientemente rápido para capturar totalmente la atención del jugador pero sin agobiarlo con una dificultad excesiva.

No hay comentarios: