Cómo se desarrolla un juego retro para navegador
Llevar un arcade clásico al navegador no consiste en copiar el original píxel a píxel. Consiste en decidir qué partes de la experiencia hay que conservar intactas y cuáles hay que reconstruir porque el hardware de 1982 imponía cosas que hoy solo estorban. Esto es el recorrido completo, tal y como se hizo con Sohoban, Paratrooper 1982 y Red Barón.
Antes de escribir código: qué se conserva y qué no
Todo juego retro tiene un núcleo que lo define y una capa de limitaciones técnicas que la gente confunde con parte del diseño. Separarlas es la primera tarea.
Lo que se conserva
- La mecánica exacta y sus reglas, incluidas las que parecen injustas.
- La curva de dificultad y el ritmo con el que llega la presión.
- El sistema de puntuación, porque define qué es jugar bien.
Lo que se reconstruye
- Los controles, pensados para teclado rígido o joystick de un botón.
- La resolución fija, sustituida por una adaptación a cualquier pantalla.
- La pantalla de game over que obligaba a esperar antes de reintentar.
Cuando alguien dice que un remake «ha perdido la esencia», casi siempre es porque se tocó algo de la primera lista o porque no se tocó nada de la segunda.
El bucle de juego y el control del tiempo
Es la decisión técnica que más afecta a la sensación final y la que más veces se hace mal.
El error habitual
Un bucle que avanza la lógica una vez por cada fotograma dibujado. En un móvil de 60 Hz el juego va a una velocidad; en un portátil de 120 Hz, al doble. El juego se vuelve literalmente distinto según el dispositivo.
La corrección
La lógica avanza según el tiempo transcurrido desde el fotograma anterior, no según el número de fotogramas. En la práctica se acumula ese tiempo y se ejecutan pasos de simulación de duración fija hasta consumirlo, dibujando una sola vez al final.
El efecto secundario útil es que el juego se comporta igual en un teléfono viejo que se salta fotogramas y en un ordenador que va sobrado.
Sprites, dibujo y colisiones
Canvas frente a DOM
Para un arcade con decenas de elementos móviles, Canvas es la opción razonable: un único elemento que se repinta entero. Mover cincuenta nodos del DOM por fotograma es la vía rápida a un juego que va a tirones en móvil.
Colisiones sin complicarse
La mayoría de los juegos retro funcionan perfectamente con rectángulos alineados a los ejes. Antes de implementar detección por píxel conviene comprobar si alguien nota la diferencia jugando; casi nunca la nota.
El coste de los recursos
Sprites agrupados en una sola imagen, sonidos comprimidos y nada que se cargue antes de hacer falta. Un juego web compite con la paciencia de quien pulsa el enlace, y esa paciencia dura unos pocos segundos.
Los controles táctiles no son un teclado dibujado
El error más común al portar un clásico es pintar en pantalla los botones que tenía el teclado. Con el pulgar, esos botones son diminutos y no se ven porque el propio dedo los tapa.
Lo que sí funciona:
- Zonas amplias, sin borde visible, en la mitad inferior de la pantalla.
- Gestos direccionales sobre el propio tablero cuando el juego es por turnos o por casillas.
- Reacción inmediata al contacto, sin esperar a que el dedo se levante.
En Paratrooper 1982 la primera versión con botones virtuales resultó injugable; los controles se rediseñaron desde cero y el tiempo medio de partida se multiplicó.
Probar en el dispositivo real, no en el simulador
El emulador de móvil del navegador de escritorio no reproduce ni la potencia del procesador ni el tamaño real de un dedo. Un juego que va perfecto en el simulador puede ir a tirones y ser imposible de controlar en un teléfono de gama media de hace tres años.
Esa es la máquina contra la que hay que probar, no la que tienes en la mesa.
Si prefieres encargarlo
Si lo que buscas no es hacerlo tú sino encargarlo, este es el trabajo completo descrito con su alcance y su presupuesto:
Desarrollo de videojuegos web: Desarrollo de videojuegos web que funcionan en el navegador sin instalación: bucle de juego, controles táctiles, rendimiento en móvil y clasificaciones.
Continuar leyendo
Todo lo anterior deja un juego que funciona en tu máquina. Lo que falta hasta que un desconocido pueda jugarlo está en el siguiente artículo:
Del prototipo al juego web publicado: Qué hay entre una prueba que funciona en tu máquina y algo que un desconocido puede jugar: estados, primera vez, rendimiento real, publicación y medición.
