Inicio Foros Clientes y programación conversión de mapa para Tintin++

Mostrando 9 respuestas a los debates
  • Autor
    Respuestas
    • pequeño halfling
      Participant
      Número de entradas: 106

      Hola a todos.

      Debido a los recientes cambios de mapa, me he visto muy frustrado intentando actualizármelo manualmente. Es un poco lioso hacerlo con los comandos de Tintin++ así que comentándolo con Sierephad me indicó un tutorial que posiblemente funcionaría.

      El tuto aquí: http://roysjosh.blogspot.com.es/2009/01/converting-zmud-maps-to-tintin-and.html

      Para hacerlo funcionar, primero tienes que tener instaladas ciertas herramientas:

      mdbtools
      sqlite3
      libdbd-sqlite3  (en el tutorial indica que hay que tener DBD::SQLite, así que yo interpreto que tengo que tener estos dos paquetes instalados también)

      libdbd-sqlite3-perl
      mdb2sqlite.pl < script adjunto
      zmudconv.pl < script adjunto

       

      luego hay que ejecutar:

      $ perl ./mdb2sqlite.pl mapaZmud.mdb

      $ perl ./zmudconv.pl mapaZmud.mdb.sqlite > tintin.map

       

      A mi no me ha funcionado. No sé si alguien tiene tiempo para realizar esta prueba. Por otro lado he visto en nuestro foro una entrada de rawazarr (link) en el que da la impresión de que el primer paso lo tiene hecho (esto lo quiero probar, a ver si con su solución puedo realizar la conversión)

      Si se consiguiese tirar adelante este conversor, tendríamos una buena solución para el cliente RL de tintin++ de (link)

       

      Alguien se anima conmigo?

       

    • Sierephad
      Moderator
      Número de entradas: 2821

      ¡Animo pequeño Halfling!

      ¡A ver si tienes suerte que vienen muchos cambios para el mapa!

    • eckol
      Keymaster
      Número de entradas: 6832

      No me ha dado tiempo de probar mucho aún, pero:

      El primer script (mdb2sqlite.pl) me falla.

      «Usage: mdb-export [options] <file> <table>»

      Esto es porque la sintaxis está mal en el script. En la linea 27 pone:

      foreach my $line (qx(mdb-export -R ‘;\\n’ -I $mdb $_))

      Pero la opción -I espera una palabra clave:

      -I <backend> INSERT statements (instead of CSV)

      Según el man, los valores válidos son:

      access, sybase, oracle, postgres, mysql and sqlite

      Entonces la linea 27 debe quedar:

      foreach my $line (qx(mdb-export -R ‘;\\n’ -I access $mdb $_))

      Por ejemplo, pero lo que no sé es cual es el backend que deberíamos usar :S

       

      Eckol el Alquimista de las Cien Formas

    • pequeño halfling
      Participant
      Número de entradas: 106

      Ok, he ejecutado el primer proceso con la modificación que proponia eckol y ha funcionado aparentemente bien.

      Ahora al ejecutar el conversor a tintin++ me sale continuamente el mensaje (bucle):

      Use of uninitialized value in printf at ./zmudconf.pl line 81.

      Use of uninitialized value in $dirname in hashelement at ./zmudconv.pl line 79

      Me esperaré a que acabe el proceso (tarda bastante) a ver que ha escrito y cual puede ser el problema de esas lineas de código.

       

      Gracias.

       

    • pequeño halfling
      Participant
      Número de entradas: 106

      Yei gente!!!

       

      El proceso ha funcionado. Estoy haciendo alguna verificación. Cuando haya acabado y me sea posible, os paso el fichero de mapa por si lo queréis añadir como recurso.

       

       

      Gracias por la ayuda.

    • Sierephad
      Moderator
      Número de entradas: 2821

      Wiiiiiii felicidades pequeño!

    • pequeño halfling
      Participant
      Número de entradas: 106

      Hola a todos.

      Bueno, os informo. He conseguido hacer la transformación del mapa de la V5.1.3 a tintin++, pero no todo son buenas noticias.

      he probado el mapa por Anduar, Ryniver, Dendra, Galador, etc…

      Aparentemente va todo bien peeeeroooooo, no he podido ver naggrung en el fichero.

      A partir de aqui, yo creo que una posible solución seria que los mapas de las islas fuesen ficheros a parte, pero claro, para ello sería necesario que esos mapas también estuvieran por separado en zmud.

       

      Opiniones? ideas?

       

      (dejo el fichero de mapa adjunto para que lo pruebe quien quiera)

       

       

      Edit: Nada! no haced caso. Probé otro fichero sin querer. Este fichero no carga (posiblemente por superar el tamaño máximo). He probado a acortarlo quitando unas cuantas líneas, pero no carga bien. Me salen tropecientos mensajes de «invalid exit» al cargar.

      No me ha funcionado. Sorry.

    • Arada
      Participant
      Número de entradas: 501

      ya empieza a ser un reto divertido, pero no tengo hueco!

      --
      La frase que en el 97 leí en la pantalla de Galmeijan y me abocó a este oscuro mundo:
      Orco te golpea con su cimitarra.

    • rawazarr
      Participant
      Número de entradas: 82

      Al final se consiguió hacer funcionar esto?

       

      Si hay algún lugar donde pueda ver la estructura de la base de datos de tintin++ puedo mirar a ver qué consigo.

       

      Saludos,

      Tengo muchas ideas en la cabeza, tantas que no puedo si quiera expresarlas.

    • pequeño halfling
      Participant
      Número de entradas: 106

      Hola Rawazarr.

       

      No, no se consiguió.

      La estructura es bastante sencilla, es un fichero de texto plano.

      Os pego una estructura de un mapa con la forma:

      [ ]--[ ]--[ ]
      ······| /
      ·····[ ]

      Las primeras lineas no sé exactamente lo que son, pero vienen las lineas R (rooms) y las lineas e (exits)

      C 50000

      CE
      CH
      CP
      CR

      F 8

      I 1

      L * # # # | # x

      R { 1} {0} {} {} { } {} {} {} {} {room data} {1.000}
      E { 2} {e} {e} {2} {0} {}

      R { 2} {0} {} {} { } {} {} {room name?} {room desc?} {room data} {1.000}
      E { 1} {o} {o} {8} {0} {}
      E { 3} {e} {e} {2} {0} {}
      E { 4} {s} {s} {4} {0} {}

      R { 3} {0} {} {} { } {} {} {room name?} {room desc?} {room data} {1.000}
      E { 2} {o} {o} {8} {0} {}
      E { 4} {so} {so} {12} {0} {}

      R { 4} {0} {} {} { } {} {} {room name?} {room desc?} {room data} {1.000}
      E { 3} {ne} {ne} {3} {0} {}
      E { 2} {n} {n} {1} {0} {}

Mostrando 9 respuestas a los debates
  • Debes estar registrado para responder a este debate.