Universitat Oberta de Catalunya

Y el mundo seguirá girando

Hubo un tiempo, hace no muchos años, en el cual había unas pocas personas que tenían teléfono móvil. Cuando recibían una llamada en un lugar público, el autobús urbano por ejemplo, eran objeto de risas y comentarios jocosos por parte del resto de los allí presentes. No hace mucho de eso, pero parece que ha pasado una eternidad.

Hoy en día, lo extraño es conocer a alguien que no tenga teléfono móvil. Incluso no es difícil encontrar a personas que tienen más de uno o más de dos. Es tal la necesidad que tenemos de estar continuamente comunicados, que no dudamos en hacer caso omiso a los letreros que nos piden que apaguemos el móvil en los hospitales, las bibliotecas o el cine.

En un principio, los móviles servían para llamar, tener la agenda y poco más. Pero rápidamente hemos pasado de tener teléfonos que hacían algunas pocas cosas más, a tener pequeños ordenadores que hacen muchas cosas, entre ellas la de permitirnos llamar por teléfono. Y por supuesto, entre las muchas cosas que podemos hacer, está el jugar. Que, digámoslo todo, es una forma de comunicarnos.

De todo, como en botica

Si bien es cierto que al igual que ocurre con los juegos de ordenador, el segmento de usuarios no abarca a todas las edades. Como reza el dicho popular, entre los usuarios de juegos “hay de todo, como en botica”.

No se trata únicamente de quinceañeros, geeks apasionados o personas que se sumergen en una vida ficticia para olvidar sus frustraciones y desencantos de la vida real, como vemos generalmente en las películas. Se trata de personas normales. Como usted. Como… ¿yo?

Sí. Sé lo que está pensando. “Una persona normal no se pasa horas y horas haciendo cola a las puertas de una gran superficie, el día que sale al mercado cierta consola portátil para ser de los 3.000 o 4.000 primeros afortunados en adquirirla”. Pero ¿no hay quien se pasa horas y horas haciendo cola para conseguir una entrada para un concierto de U2? Eso sí que es incomprensible.

Llegados a este punto, el autor se permite la licencia de informar, que conoce no a una, sino al menos a dos personas, que han hecho ambas cosas. También se permite recomendar este post de Nacho Vigalondo, en el que describe los videojuegos como “un medio de expresión”. Mejor lo leen. Y además se ríen un poco.

Aunque los terminales móviles tienen menos capacidades que los equipos de sobremesa, eso no excluye a ningún género que hayamos visto en nuestros PC, de verse representado en nuestros celulares (con las limitaciones propias de estos dispositivos, tamaño de pantalla, poca memoria, teclas pequeñas, poco espacio para los menús etc.). Así, nos encontramos con juegos deportivos, juegos de plataformas, de lógica, de acción… Pero además, la movilidad, nos permite otros tipos de juegos, como los juegos de localización, habitualmente juegos multiusuario a los que nos referiremos más adelante.

Videojuegos

En 1980 apareció el modelo Game&Watch de Nintendo.

Historia antigua

Mucho antes, incluso de que algún amigo nos cortase la jugada decisiva en la que íbamos a marcar el gol de la victoria con una llamada totalmente intrascendente, ya podíamos jugar mientras viajábamos en autobús o mientras zapeábamos tumbados en el sofá.

En 1980 apareció la serie Game&Watch de Nintendo. Una serie de consolas portátiles que nos permitían, mediante el uso de botones y una pantalla LCD, jugar a un único juego cada una. Salieron al mercado unas 60. Estas consolas eran, por lo general, muy atractivas y las había que disponían de dos pantallas, bien en modo horizontal o bien una sobre la otra. Una característica de estas pantallas era que todos los posibles estados del juego debían estar representados, iluminándose aquel en el que nos encontrábamos y haciendo prácticamente imposible jugar en ciertas condiciones de luz ambiente. Míticos son Donkey Kong Jr., Mario Bros o Greenhouse por citar algunos (este último de grato recuerdo para quien suscribe el artículo, pues había uno en casa).

Aproximadamente diez años después y de nuevo de la mano de Nintendo, nos llegó la consola Game Boy. Incluía Tetris de serie, pero su mayor aportación era la disponibilidad de numerosos juegos que se cargaban mediante cartuchos intercambiables sobre la misma consola. El mismo año aparecía Atari Lynx, que junto a la Game Gear de Sega – esta última vio su nacimiento un año después-, aportaron la pantalla de color.

Hoy en día, la variedad de consolas y dispositivos móviles en los que podemos jugar es amplia: PSP, Nintendo DS, Nokia Ngage, multitud de teléfonos móviles, iPod y parece ser que iPhone.

Tecnologías / Plataformas

Existen diferentes tecnologías para el desarrollo de aplicaciones, entre las que se incluyen los juegos para móviles. Las más conocidas son: Java, en su versión para móviles (J2ME); Flash Lite, la versión móvil del popular player de Adobe; y C++, para la plataforma Symbian (muy presente por la amplia presencia de los móviles Nokia). Otras plataformas son Windows Mobile o Palm OS.

C++

C++ es el lenguaje más poderoso y el más complejo. Sobre él se asienta la plataforma Symbian. Juegos poderosos, fluidos, con buenos gráficos, multiusuario vía Bluetooth, etc.

J2ME

La tecnología más extendida en el desarrollo de juegos para móviles es J2ME, que sin embargo posee una serie de lastres importantes, siendo el principal la lentitud con la que han ido apareciendo nuevas especificaciones del lenguaje. Esto, unido al gran auge de la telefonía móvil en los últimos años, motivó a cada fabricante a desarrollar sus propias librerías, convirtiendo la realización de ciertas aplicaciones en una completa odisea en caso de ser necesario su disponibilidad para diferentes terminales de diferentes marcas, ya que obviamente, las librerías propietarias de un fabricante sólo funcionan en los móviles de ese mismo fabricante. Además, nos encontramos con cualquier posible combinación entre MIDP 1.0, MIDP 2.0 y CLDC 1.0 o CLDC 1.1.

Sobre el entorno de desarrollo, diremos que ningún SDK es óptimo, ninguna suite permite desarrollar para todos los dispositivos. Por supuesto, y unido a todo esto, tenemos el medio, que tiene sus numerosas limitaciones.

Respecto al dispositivo, y además de lo ya indicado, podemos citar: diferentes tamaños de pantalla (no se tiende a la estandarización), diferentes máquinas virtuales (en ocasiones aprovechamos los “fallos” de las mismas para ejecutar en otros dispositivos), dispositivos de memoria muy reducida (si queremos compatibilidad hacia móviles viejos, el JAR no debe pasar de los 128Kb o incluso 100Kb).

Y por último tenemos los emuladores. Los emuladores tienen idéntica versión de las clases que los terminales, pero no tienen idéntica versión de la máquina virtual. Esto implica que el dispositivo real puede tener errores que no aparecen en el emulador. A la hora de probar forzaremos a los emuladores a ejecutarse con menor memoria de la que pueden. Por supuesto, no se debe distribuir ninguna aplicación sin haberla probado anteriormente en un dispositivo real. Es necesario saber para qué dispositivos (marcas y modelos) estamos programando el juego.

O dicho de otro modo: cuando vemos un anuncio en televisión de un juego de marcianitos hecho en Java, en el que cada vez que nos matan los malos el teléfono vibra, hemos de ser conscientes de que es posible que, si lo instalamos en nuestro teléfono que soporta juegos Java, el móvil no vibre cada vez que nos acierten, o que directamente el juego no funcione, pues se ha programado con ciertos terminales en mente y utilizando librerías propietarias de los mismos. Así pues, y a pesar de que muchos modelos de teléfono describen entre sus características la posibilidad de ejecutar juegos Java, tengan cuidado a la hora de soltar dinero por los mismos.

FlashLite

Flash Lite pretende convertirse en alternativa. Con la llegada de Flash Lite 2 llegaba también ActionScript 2. Programación orientada a objetos y la posibilidad de distribuir la misma aplicación en versión web y móvil. Todo ello con la potencia visual de las aplicaciones flash (e imagino que pese a encontrarnos ya en 2007 con algún botón de saltar intro). A nivel de programación, las oportunidades son muchas. A nivel de diseño, más. Sin embargo, la poca presencia del player en cuanto a terminales se refiere, convierte esta opción de momento en mera opción teórica (y sigue pasando el tiempo, y sigue sin extenderse el player).

Como ocurre con todo, todas estas tecnologías tienen sus pros y sus contras. Y no se puede decir cuál es mejor porque ninguna lo es. Cada proyecto, cada aplicación tiene sus especificaciones, y en función de estas, el programador (los programadores) tendrán que elegir la tecnología más adecuada para ese proyecto.

Juegos Multiusuario

Bien sea con un teléfono móvil o con una videoconsola portátil existe una gran variedad de juegos multiusuario. Esa funcionalidad se puede conseguir mediante el uso de:

– GPRS

– Bluetooth

– Infrarrojos

– WiFi

– 3G

Las dos últimas, WiFi y 3G, son las tecnologías más novedosas. Sus puntos en contra son, de momento, un “parque de terminales con 3G” reducido y el enorme gasto de batería mediante el uso de WiFi. Nos callaremos el tema de los precios de las conexiones 3G, pues es entrar en pornografía pura.

La conexión a través de infrarrojos implica, necesariamente, que los dispositivos conectados entre sí se vean físicamente. Lo que inevitablemente es un handicap.

El juego en línea entre dos usuarios mediante Bluetooth es bastante habitual y ágil. Si bien es cierto que necesita de la proximidad de los dos terminales para poder realizarse.

GPRS permite el juego en línea de numerosos participantes. Anteriormente hemos hecho mención de los juegos de localización, en los que los jugadores transmiten su posición física al resto de participantes. Por tanto, no se trata únicamente de juegos que consumimos a través de nuestro terminal, sino que éste forma parte importante de un juego participativo. Un ejemplo de estos juegos es Pac-Manhattan. El mayor inconveniente de GPRS es el precio.

Resumiendo (que es gerundio)

La tecnología avanza rápidamente. Cada día aparecen nuevos dispositivos, con nuevas capacidades, con más memoria, con mejor procesador. Cada día podemos acceder a más de estas capacidades en nuestros propios desarrollos para añadirlas a nuestras propias aplicaciones y/o juegos. Cada día hay más servicios para móviles, como Google maps para móviles o Flickr para móviles.

Cada día parece estar más cerca el “día de la integración”. El día en que un único dispositivo aúne todo aquello que nos gusta: Internet, música, vídeo, juegos (lo que pretende el iPhone, construido sobre el potente os x).

Y, sin embargo, a la vez que ocurre esto, también aparecen, por ser cada día más demandados, dispositivos que hacen una única tarea (o casi).

¿Y en cuanto a los juegos? Pues cada día habrá más. Cada día serán mejores. Las grandes empresas seguirán desarrollando para las videoconsolas y para ciertos terminales móviles. Los programadores seguiremos programando juegos que nos resultan difíciles de distribuir. Se seguirán vendiendo más juegos de fútbol que de ajedrez, cada vez será más fácil jugar de modo multiusuario, se integrará audio y video en streaming, y se realizarán juegos y aplicaciones que hagan uso de las cámaras de los terminales.

Y el mundo seguirá girando.

Acerca del autor

Javier Tardáguila ejerce su actividad profesional como analista / programador en una compañía de consultoría. También ha trabajado como consultor de la asignatura "Creación de juegos para la web" para el Graduado en Multimedia de la Universitat Oberta de Catalunya. Es co-autor de una guía de aprendizaje de Dreamweaver. En su tiempo libre mantiene, junto a su hermano César, un blog dedicado a la arquitectura de software, en el que se tratan temas referentes a Java, J2ME o Cocoa, con especial predilección por Actionscript.