Tiled como editor de mapas en GNU/Linux

Soporte técnico sobre los lanzamientos de MojonTwins y comentarios sobre los güegos. Ofrecemos soporte técnico con Fourspriter, te ayudamos con ZX Basic o Z88DK, te damos pistas some cómo saltarse un bicho y cosas así.

Moderador: na_th_an

Avatar de Usuario
son_link
Mensajes: 467
Registrado: Mar, 01 Oct 2013, 11:49
Ubicación: Atlantis, Galaxia Pegaso
Contactar:

Tiled como editor de mapas en GNU/Linux

Mensajepor son_link » Sab, 05 Oct 2013, 14:27

Bueno, como algunos ya sabréis por el hilo de la Churrera Installer andaba buscando alternativas de algunos de los programas usados que solo están para Windows sustituyéndolas por alternativas que corran nativamente en GNU/Linux y D_Skywalk comoento Tiled.
Pues bien, esta mañana lo he estado probando y la verdad es que no esta mal, quitando que no tiene una opción del Mappy, y es poder poner guías para dividir la pantallas del juego, si bien abajo te dice en que casilla estas (por ejemplo 16,0, por lo que ya sabrías que estas en la segunda pantalla de arriba)
Para hacer la prueba he creado una de las pantallas del juego del tutorial y guardado al formato nativo (.TMX, que no es mas que un fichero en formato XML) y exportado a un fichero en formato JSON. Esto es una muestra del archivo generado:

TMX (lo he recortado un poco, que son muchas lineas):
$this->bbcode_second_pass_code('', '
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="15" height="10" tilewidth="16" tileheight="16">
<tileset firstgid="1" name="mappy" tilewidth="16" tileheight="16">
<image source="mappy.bmp" width="256" height="16"/>
</tileset>
<layer name="Capa de Patrones 1" width="15" height="10">
<data>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="7"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="8"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="7"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
<tile gid="1"/>
...
</data>
</layer>
</map>
')

JSON:
$this->bbcode_second_pass_code('', '
{ "height":10,
"layers":[
{
"data":[8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 1, 1, 1, 8, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 12, 12, 12, 8, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
"height":10,
"name":"Capa de Patrones 1",
"opacity":1,
"type":"tilelayer",
"visible":true,
"width":15,
"x":0,
"y":0
}],
"orientation":"orthogonal",
"properties":
{

},
"tileheight":16,
"tilesets":[
{
"firstgid":1,
"image":"mappy.bmp",
"imageheight":16,
"imagewidth":256,
"margin":0,
"name":"mappy",
"properties":
{

},
"spacing":0,
"tileheight":16,
"tilewidth":16
}],
"tilewidth":16,
"version":1,
"width":15
}
')

La parte importante en ambos casos esta dentro de data, que esta dentro de layer (Tiled permite múltiples capas)
Como se ve guarda un numero correspondiente al numero del tiled usado, siendo leído de izquierda a derecha y de arriba hacia abajo.
Yo creo que se puede usar Tiled en lugar de Mappy en Linux, y crear un conversor en Python que coja uno de los 2 formatos que comento (si bien prefiero JSON por que es mucho mas sencillo de usar en Python) y que crease directamente el archivo .h listo para ser usado.
¿Que opináis?
LOAD TAPE ERROR
Image
Avatar de Usuario
na_th_an
Mensajes: 26413
Registrado: Vie, 09 Ene 2009, 12:18

Re: Tiled como editor de mapas en GNU/Linux

Mensajepor na_th_an » Sab, 05 Oct 2013, 18:17

Considero que no poder poner guías es una putada bastante grande a la hora de hacer un juego por pantallas. Me parece un poco increíble que un editor tan completo no permita algo tan sencillo. Mappy tiene un sistema de plugins bastante potente y se puede añadir funcionalidad programando pequeñas funciones en LUA... ¿No tiene algo parecido tiled? Porque si pudiésemos dotarle de esta característica que falta, sería perfecto.

También está la opción de ponerse a mirar los fuentes o contactar con el autor.

En resumen: me parece guay, pero mucho me temo que hacer un juego con esto sin tener guías de pantallas puede llegar a ser un poquito coñazo :D Solo hay que contar y mirar las coordenadas, pero no me veo yo haciendo un mapa sin guías.

Un conversor sería muy sencillo. Si lees el json y los datos de la capa te quedan en un array, escribir un conversor se me antoja una tarea harto sencilla :)
Como diría Rorshach: "Urm..."
Avatar de Usuario
son_link
Mensajes: 467
Registrado: Mar, 01 Oct 2013, 11:49
Ubicación: Atlantis, Galaxia Pegaso
Contactar:

Re: Tiled como editor de mapas en GNU/Linux

Mensajepor son_link » Mié, 09 Oct 2013, 09:59

He estado revisando las opciones y mirando la documentación, pero no hay nada para poner guías, salvo que alguno sepa de Java e intente hace una extensión que lo haga posible.
Buscare otras posibles opciones y comento en este mismo hilo
LOAD TAPE ERROR
Image
Avatar de Usuario
angel
Mensajes: 23213
Registrado: Vie, 09 Ene 2009, 13:04
Ubicación: Torreznolandia
Contactar:

Re: Tiled como editor de mapas en GNU/Linux

Mensajepor angel » Mié, 09 Oct 2013, 10:46

Echadle un vistazo a este:

http://gbamapedit.sourceforge.net/

Igual sirve :D
(_\_) (_|_) (_/_) (_|_) ILLO KE HEHEHEHEHEHEEEHEHEHEH!

¡Activa tu rainbow pechónico!
Avatar de Usuario
son_link
Mensajes: 467
Registrado: Mar, 01 Oct 2013, 11:49
Ubicación: Atlantis, Galaxia Pegaso
Contactar:

Re: Tiled como editor de mapas en GNU/Linux

Mensajepor son_link » Mié, 09 Oct 2013, 11:38

$this->bbcode_second_pass_quote('angel', 'E')chadle un vistazo a este:

http://gbamapedit.sourceforge.net/

Igual sirve :D

Es viejo, no se actualiza desde el 2005 y no compila con la versión 4.8 de GCC. Probare con versiones anteriores a ver
LOAD TAPE ERROR
Image