27/11/09

Acciones, no palabras

Desde el inicio de los tiempos en Simutrans, una de las características más demandadas por los jugadores, más los nuevos que los viejos, ha sido el modo multijugador. En las últimas versiones Prissi ha ido filtrando información a cuenta gotas acerca este tema, pero realmente todos nos preguntamos ¿como va el desarrollo del modo multijugador? pues vemos que se puede averiguar...

Leer más...

Antes de nada vamos a repasar un poco los antecendentes. Hasta hace unos cuatro años, hayá por la versión 0.88.xx, el modo multijugador estaba en tercer lugar en la lista de prioridades del equipo de desarrollo (fuente) por debajo debajo de temas como la correción de errores y los gráficos. En su momento la gente propuso intentar hacer cosas estilo Ogame para el modo multijugador, pero había otras prioridades.

network-Binkiexxx@flickrLos usuarios seguían demandando dicha funcionalidad, y durante bastante tiempo, el meme de Is it multiplayer yet?, algo así ¡¡pero como!!¿aún no tiene multijugador? fué lo más repetido en el foro de Simutrans.

La idea inicial era, y supongo que sigue siendo, una arquitectura cliente ligero y servidor, donde todos se conectan al servidor y este actúa como sincronizador de eventos. Si algo ocurre en alguna parte de la partida, se manda al servidor y este lo propaga al resto, para que todos los clientes obtengan la misma imagen de la partida.

Si tuviéramos que usar un símil, diríamos que el servidor sería el motor del juego y los clientes tendrían unicamente el interfaz. El servidor no haría más que enviar datos al interfaz del cliente, para que refleje los cambios y reciba cualquier dato de entrada del cliente que se deba propagar al resto. Esto supone que el tráfico entre todos los elementos puede ser bastante frecuente, pero no con tanta carga como puede parecer a primera vista. La ventaja de esto que los clientes pueden tener unos requisitos modestos mientras que las características de la partida, por ejemplo tamaño del mapa o número de ciudades, dependen exclusivamente del servidor. Podrían jugar clientes con PC viejos apoyándose en otros jugadores con mejores ordenadores. Teneís más información acerca de algunos de los detalles técnicos aquí.

Pero entonces, ¿en qué estado se encuentra la cuestión? Pues bien, repasando los últimos comentarios de Prisi, podemos sacar en claro varias cosas:
  • Parte del código existe y está operativo, pero solo se puede probar descargando, modificando y compilando el código del repositorio. Mas detalles aquí

  • Bastantes de los comandos y eventos se transmiten entre los jugadores y el servidor, pero aún hay que pulir detalles en el inicio y cierre de conexión.

  • Falta la parte más crítica, la sincronización de todos los eventos que tienen lugar en una partida de Simutrans: vehículos, edificios, terrenos, etc..

  • El cambio de jugador será mediante contraseña, y el servicio público no estará disponible de forma libre, como ocurre en la actualidad.

  • Habrá un jugador servidor, y el resto serán clientes que recibirán el fichero de la partida y se conectarán a ella, verificando que todos tienen los mismo objetos y en caso contrario, intercambiándolos.

  • En todo momento, los jugadores de la partida estarán sincronizados. Lo que ocurra en cualquier cliente, se propagará al resto a través del servidor.

Si tuviera que mojarme con una cifra, un porcentaje, diría que está como al 10-15%. Sé que no es mucho, pero Prissi no suelta prenda y en los comitts del repositorio de código no aparece nada relevante últimamente en relación a este aspecto. Supongo pues que de momento todo está en fase experimental, y que se va trabajando poco a poco. Hay que tener en cuenta que hay otras muchas cosas que atender como corregir los errores que surgen o revisar nuevos parches.

Por otro lado, en algún momento pasado se sugirió hacer algo parecido al famoso Ogame, con una arquitectura de cliente ligero, donde Simutrans estaría corriendo en un servidor de forma contínua y persistente mientras los usuarios se conectaban a dicha partida infinita e interactuaban. Evidentemente esta es una solución cara, por el coste del servidor y en cierto modo más orientada a los MMORPG que a los juegos de simulación. Sin embargo, existe una forma de juego que más o menos se aproxima a ello, llamada juego colaborativo, del cual ya hablamos largo y tendido hace tiempo.

El caso es que hace unos días, un nuevo miembro de la comunidad llamado Rodrigo Soracco, se interesó por el estado de desarrollo del modo multijugador y comentó que estaba desarrollando una especie de programa para automatizar las partidas colaborativas, a medio camino entre el estilo Ogame y el mundo persistente. Funciona usando un repositorio, donde los jugadores se conectan, descargan el juego, juegan y después se guarda cada nueva partida jugada. De esta manera tienes distintas versiones de la misma partida, y puedes engancharte en cualquier momento. Teneís todos los detalles aquí

Bueno, esperemos que poco a poco la cosa vaya tomando forma y en un futuro no muy lejano, digamos un año o dos, estemos todos conectados jugando de sol a sol... :D

Imágenes:
- network cortesía de Binkiexxx en Flickr
- Disconnected !!! cortesía de agelakis en Flickr

11/11/09

Hasta el infinito y más alla...

Si no recuerdo mal, en más de una artículo os he hablado aquí de uno de mis proyectos pendientes para Simutrans: crear mi propio pakset con temática espacial. Es algo a lo que llevo dándole vueltas hace tiempo, pero no acabo de decidirme por falta de seguridad acerca de a viabilidad del proyecto, pero viendo el pak.Excentrique que Hajo está desarrollando, me ha vuelto a picar el gusanillo y la idea del RetroSpacePak ha empezado a tomar forma en mi mente. Hagamos pues un ejercicio de imaginación.

Leer más...

Mi obsesión con crear un pakset de temática espacial viene fundamentalmente de mi afición a la ciencia ficción, tanto literaria como cinematográfica. Devoro cualquier cosa que huela a tecnología y ciencia.

Tengo que destacar que ya había antecedentes de paksets con esta temática, al menos uno. El olvidado pak.Mars, obra de Robofish, fue el pionero al llevar Simutrans más allá de la Tierra. Fueron muchas las discusiones en las que tomé parte acerca de todas las posibles particularidades y aspectos de Marte que podrían influir en los diseños de vehículos, edificios y demás objetos presentes en Simutrans. Si quiereís más información, podeís echar un vistazo en el archivo del antiguo foro

La idea del SpacePak siempre habia sido el espacio, inspirado un poco en películas como 2001, Star Wars, Star Trek o similar, pero hace poco descubrí unos enlaces con ilustraciones retro futuristas de los años 60-70. Me quedé maravillado por todas las escenas que se representaban, y en ese momento decidí un cambio de rumbo en la temática del pakset. Ya no sería sobre el espacio profundo, sino que incluiría planetas con civilizaciones y colonias.

El punto de partida es simplemente cambiar las texturas del terreno, reemplazando el agua por vacío estelar con estrellas y la parte terrestre por gráficos similares a asteriodes o planetas. Esto elimina el agua de la parte gráfica y cambia totalmente la sensación visual, ya que en teoría parecería que las partes terrestes estarían flotando en el espacio.

Una de las parte más interesantes serían los vehículos, y aquí se abre un amplio abanico de posibilidades. Desde coches voladores, mini platillos volantes hasta autobuses helicóptero, pasando por camiones con motores de cohete. Digamos que la franja de vehículos de carretera serían objetos que se mantendrían en tierra y para cortas distancias. Para tramos de longitud media, entre colonias cercanas pasaríamos a los trenes con propulsión a chorro, los monorrailes colgantes, trenes levitantes por tubos, teleféricos o funiculares en las ciudades para ir de una punta a otra.

Por último tendríamos los barcos y los aviones, ambos adaptados para trayectos de larga distancia. Los barcos serían de formas redondeadas para el espacio o muy afiladas para la parte de los ríos, que actuarían como grietas del terreno, a través de las cuales se vería el núcleo del planeta o directamente el espacio. En cuanto a los aviones, obviamente serian todos o casi todos naves espaciales, sondas, aviones supersónicos a reacción o con hélices para trayectos terrestres. En realidad, el resto de vehículos incluirían siempre detalles de los aviones como hélices, alas, motores a reacción y posibilidad de volar.

En el caso de los edificios la cosa se complicaría un poco, no por falta de ideas sino todo lo contrario, por la cantidad de diseños y formas distintas que puede llegar a haber. Tendríamos colonias mineras, campamentos base, espacio puertos, plataformas de despegue, ciudades espaciales dentro de anillos, esferas de Dyson, estaciones espaciales, enormes edificios isla interconectados, inmensas ciudades con enormes edificios hiperpoblados 5 o 6 pisos mínimo, rascacielos comunicados mediante pasarelas, arcologías, edificios colmena, ciudades con vida subterránea y cimientos a gran profundidad, colonias aéreas que flotan entre las nubes de gas, apartamentos individuales a las afueras donde dejar tu nave y disfrutar de la calma y tranquilidad. En general, grandes estructuras interconectadas para concentrar a los habitantes en inmensos núcleos de población.

Las atracciones turísticas se concentrarían básicamente en fenómenos naturales de espacio como púlsares, supernovas, estrellas gigantes, nubes de gas, galaxias, agujeros negros,etc.. pero también se podrían incluir edificios peculiares como museos, jardines, estaciones espaciales, ruinas de antiguas colonias, vestigios de otras civilizaciones, arcologías y casi cualquier cosa que tenga cierta rareza.

Por último, en lo referente a materias primas, lo habitual serían minerales de metal sacados de asteroides o colonias mineras, gases como oxígeno, hidrógeno o gas tibanna que serían recolectados en campos mediante cosechadoras o plantas extractoras, agua, plantas y semillas para producir CO2 y terraformar las distintas zonas.

En fin, en mi cabeza todo tiene un pinta estupenda. Tal vez algo falto de coherencia por la enorme variedad de estilos y elementos, pero sin duda será un pakset muy atractivo, si es que algún dia se llega a hacer...¡alguien se anima!

Referencias:
P.D: Por cierto, en relación con este tema, pronto publicaremos un entrevista con The Hood, el co-creador del pak.Brittain, para que nos dé su punto de vista acerca de como desarrollar la parte gráfica un pakset.

Quien tiene la información tiene el poder.

A veces tengo la sensación de que la comunidad de Simutrans se mueve menos de lo que debería, es poco activa. Si embargo te pones a escarbar entre los mensajes de los foros locales, y realmente te das cuenta de que hay algo que se mueve bajo la alfombra pero ¿como estar al tanto de las últimas novedades?

Leer más...


Ciertamente no existen tantas fuentes de información en la comunidad de Simutrans, pero posiblemente estén algo ocultas o adolezcan de la barrera del idioma. El que muchos de los intercambios de información se hagan en inglés puede desanimar a los nuevos usuarios, especialmente a los de las comunidades locales (PT, ES, CZ)

La primera fuente de noticias es el foro, tanto el actual como el archivo. Este inmenso monstruo genera toneladas de información, pero hay que prestar especial atención a las secciones de Information and announcements donde se publican los anuncios importantes y en Download Simutrans donde se anuncian las nuevas versiones. En la parte de desarrollo y parches (Development and Bug Reports) hay una sección llamada parches incorporados y errores corregidos (Incorporated Patches and Solved Bug Reports) donde podeís estar al día de las nuevas características y los errores corregidos en futuras versiones.

Esto no lleva a la siguiente fuente de información, en mi opinión una de las más importantes actualmente, que es la página de Simutrans en Sourceforge. Allí encontrarás un canal de noticias con los últimos movimientos(noticias, nuevos ficheros y versiones, etc..)

Algunas de las comunidades locales de Simutrans tienen un hilo o un subforo de Avisos y Últimas noticias donde se publican anuncios de cosas interesantes como nuevos objetos disponibles, rumores, enlaces a retos, nuevos servicios de la comunidad, etc... En un futuro se espera hacer lo mismo a nivel general, para toda la comunidad. Es más, ahora mismo se está discutiendo la posibilidad de crear una especie de blog de desarrollo de Simutrans, donde la gente pueda tener su espacio para publicar anuncios y cosas interesantes. En definitiva, otro espacio público más visible que el foro donde exponer ideas.

Desde hace poco tiempo, también están disponibles dos nuevos canales de noticias RSS, relacionados con el repositorio de código y gráficos, para estar informado sobre las últimas novedades en cuanto a código y paksets oficiales (suscríbete) y otro canal relacionado con Simutranslator, para no perder detalle acerca de las novedades relativas a las traducciones (suscríbete)

No es mala idea pasarse de vez en cuando por el canal IRC, sobre todo los lunes a partir de la 19:30 que es cuando se habla español, para cotillear un poco y compartir ideas.

En última instancia, siempre podeís daros un paseo por Escala Real, o cualquiera de los blogs satélite de Simutrans...

Imagen: Information cortesía de racho holmes

La única verdad es la realidad.

Ya hemos hablado en otras ocasiones acerca de los usos alternativos que se le pueden dar a Simutrans, especialmente en el campo de la enseñanza. Las anteriores propuestas se han basado en la idea de usar Simutrans como entorno simplificado de la realidad, donde podemos reducir y muchos aspectos del mundo real para obtener un modelo simple. En este caso, la propuesta es justo al contrario; queremos igualar realidad y ficción ¿es posible?

Leer más...

Hace unos días, en el foro apareció un mensaje de un ingeniero de Delhi (India) que quería saber hasta que punto era posible simular el comportamiento de una ciudad como la propia Delhi en Simutrans. Ante todo, creo que todo el mundo tiene claro que Simutrans es un juego, un medio de entretenimiento y no pretende ser un simulador realista del mundo real. El modelo de simutrans es una versión simplificada, donde muchas de los aspectos y acciones se han descartado, dejando únicamente lo más básico y primitivo.

En concreto, la parte que afecta al desarrollo y crecimiento de las ciudades es totalmente ajena al jugador. Cierto, se puede influir en el ritmo de crecimiento, pero no se puede dirigir. De hecho, la simulación está más centrada en regiones y países, que en ciudades o áreas urbanas. Las industrias influyen en su entorno, no en las ciudades.

Por otro lado, hay detalles de la planificación urbana que el juego no llega a reflejar, como las canalizaciones, tuberías y cableado. En el foro resumieron, a groso modo, el algoritmo de crecimiento de las ciudades con la siguiente frase:
"Donde existan carreteras, casas y espacio libre, habrá nuevas carreteras y casas"

Vladimír Slávik


Como podeís comprobar, la cosa no es muy realista, sin embargo, en mi opinión creo que si es posible usar Simutrans para realizar una simulación del tráfico de una ciudad. Puedes controlar los parámetros del tráfico en la ciudad, el algoritmo de encaminamiento de los pasajeros establece destinos y orígenes previamente por tanto existe un flujo de gente a determinados lugares establecidos, tienes señales para controlar y dirigir el flujo de trafico, y herramientas para modificar el terreno y hasta cierto punto reproducir muchas de las estructuras existentes en el mundo real.

Estos son algunos de los modelos de ciudades o zonas reproducidos en Simutrans:

  • Praga es un mapa algo antíguo (para v99.17 - pak128) pero impresionante. La ciudad está completamente recreada con suburbios, farolas, industrias, calles, conexiones, metro, etc..

  • Londres simula toda la red de transportes publicos de la ciudad inglesa. Trenes, metros, tranvías e incluso el servicio de barcos del Támesis.

  • Europa es una simulación de todas las ciudades importantes del viejo continente. Es para Pak 128. La cantidad de vías y conexiones ferroviarias os puede servir para haceros una idea de lo que se puede llegar a simular en cuanto a trenes.

  • Superbus es un pequeño mapa para pak64 que recrea un red de transporte de buses con un 100% de eficiencia. Todas las paradas están cubiertas.

Un detalle, algunos de los mapas pueden no funcionar correctamente. Había también una simulación del metro de Londres, con todas las paradas pero se ha perdido..

Como podeís observar, las posibilidades son enormes. Espero que con esto alguien se anime e intente recrear su ciudad o zona con Simutrans, al máximo nivel de detalle posible, tanto que hasta uno mismo aparezca en alguna de las paradas.

Imagen the border between fiction and reality de 3views