20/9/09

La importancia de llamarse Instalador

Si os dijeran que es lo más importante en un juego, seguro que para muchos la respuesta sería los gráficos, la historia o la mecánica de juego. Sin embargo hay una parte muy importante que habitualmente no se menciona: la accesibilidad, entendida como la facilidad del usuario para acceder al juego.

Leer más...

Solemos partir premisa de una premisa, a veces errónea: los usuarios tienen los conocimientos suficientes como para instalar el juego. Personalmente no creo que instalar Simutrans sea complicado, solo tienes que descomprimir dos archivos zip, pero parece que hay gente que eso le resulta muy complicado. Por esto, a lo largo de estos años han surgido varios proyectos en este sentido, el último que ha encendido nuevamente la mecha es STIUP (Simutrans Installer UPdater) auspiciado por Aglezabad continuando el trabajo inicial de Frank Penz.

La postura oficial es no ofrecer instalador, por una serie de razones que Prissi, el lider del proyecto, ya ha expuesto en el foro Internacional, pero en principio no está en contra de que existan proyectos satélite que cumplan dicha función. A tenor de lo leído en el foro, está clara la necesidad de hacer algo en este sentido, pero antes hay que tener en cuenta varios aspectos y factores.

Un aspecto importante, que condiciona el proyecto, es el modo del instalador: offline u online. Esto quiere decir si el instalador descargará los ficheros necesarios para jugar con Simutrans o será el jugador quien los descargue y se los suministre al programa. La situación ideal sería tener disponibles ambos modos, que en el fondo no difieren mucho, ya que la finalidad de proceso es la misma: el instalador es el que se encarga de descomprimir e instalar los archivos. Es más, debido a algunos problemas que trataremos a continuación, es casi imprescindible que funcione de ambos modos.

En los primeros proyectos de instalador, como SimuSetup de Robofish, el modo de trabajo era online, es decir, el instalador descargaba los ficheros y los instalaba para el usuario. Esto no suponía conflicto entre las licencias del instalador y de los archivos de Simutrans, ya que no se suministraban dichos archivos en conjunto con el instalador sino que este último solo los manipula. Esto implica que su licencia no tiene por qué ser compatible con la licencia de Simutrans.

En la siguiente etapa de diseño, se partío de la idea de suministrar el instalador y los archivos de forma conjunta (offline), pero el problema surgió debido a que Simutrans es compatible con la GPL, y eso implica que si distribuyes todo el paquete, en teoría esto fuerza a que el código del instalador deba ser de libre acceso. En principio no habría problemas, porque el liberar el código permite que otros puedan continuar el proyecto pero trae problemas en las etapas iniciales.

Además, apareció otro problema adicional: la incompatibilidad de licencias entre los distintos paksets. El pak64 está bajo licencia AL v1.0, al igual que el pak96.comic pero el pak128 aún está en proceso de liberalización, esto implica que aún contiene elementos que no se pueden liberar debido a que no se tiene permiso del autor. Por tanto, en caso de querer crear un paquete con instalador todo en uno, habría problemas para ofrecer todos los paksets disponibles.

Otra de las facetas a considerar es la tecnología usada para implementar este proyecto de instalador. Existen varias opciones como Inno setup, MSI, NSIS o crear tu propio instalador con Delphi, por ejemplo. Cada uno tiene sus ventajas e inconvenientes. Inno es más sencillo de implementar, NSIS ocupa muy poco, MSI da una mayor compatibilidad y la solución casera puede aunar todas pero implica un desarrollo desde cero, lo cual es más costoso. No sé cual de las opciones será la ganadora, y desconozco si se pueden combinar las distintas opciones pero supongo que será necesario hacer bastantes pruebas antes de tomar una decisión.

Por otro lado, hay un punto fundamental que puede pasar desapercibido, y que se ve influido por otros aspectos; el tamaño del instalador. Está claro que el usuario no se bajará un archivo de 60 MB, aunque todos los ficheros que contenga estén comprimidos. Incluso hay quien dijo que sobrepasar los 19 MB estaba fuera de los límites tolerables para el usuario. Lo ideal sería un fichero 1 o 2 MB, que contenga unicamente el código del instalador, descartando incorporar el resto de ficheros relativos a Simutrans. El instalador debe ser simple, manejable y rápido de descargar.

En resumen, el instalador es necesario, pero es un proyecto en el que aún quedan muchas cosas que discutir. Esperemos que la comunidad lleve a buen puerto el instalador y se pueda mejorar la experiencia del usuario con Simutrans.

De propina, os daremos una primicia. Un pajarito nos ha chivado que Frank ha preparado un CD de Simutrans con todos los paksets existentes y jugables para Simutrans (ppak64, pak128, pak.german, pak128.japan, pakHajo, etc..) pero no está disponible de cara al público por los motivos anteriormente expuestos. Esperemos que en un futuro la situación cambie.. :)

No hay comentarios: