Page 1 of 1

TMXCopy

Posted: 08 Mar 2008, 09:36
by Crush
I made a new version of TMXCopy, my command-line based tool for copying parts of one map file to another. Note that the usage changed. Width and height are now switched (it's more logical that way).

Here the windows build with sourcecode:
http://www.crushnet.org/TempFiles/tmw/tmxcopy.zip

Usage:
The program is command line based. The usage is:

Code: Select all

tmxcopy sourceFile x y width height targetFile x y [outputFile]
Here an example:
When you want to copy the lower right corner (20x20 tiles) of mapA.tmx to the upper left corner of mapB.tmx you would open map A with tiled and check at which coordinates the area you want to copy begins. Let's say mapA is 120x130 tiles. Then the area you want to copy would begin at 100:110 and would be 20x20 tiles large. So the first part of the command is:

Code: Select all

tmxcopy mapA.tmx 100 110 20 20
Then you open the target map to check the coordinates where you want to put the copied map part. We want the upper left corner, so the coordinates are 0:0. That means the next part of the command would be:

Code: Select all

mapB.tmx 0 0
The command is now complete:

Code: Select all

tmxcopy mapA.tmx 100 110 20 20 mapB.tmx 0 0
But when you enter this command mapB will be overwritten. This could be a problem when you made an error in the command. So it is saver to write the output to a new map file so we can look at the result in Tiled before we replace the original map:

Code: Select all

tmxcopy mapA.tmx 100 110 20 20 mapB.tmx 0 0 temp.tmx
Now we can check temp.tmx to see if the copying worked correctly.


The program works so far but there are still some minor problems:

-Only tested for TMW-compilant maps. I don't guarantee that it works with Tiled maps that are made for other games and thus use different features. It is assumed that the target map and the source maps have the same number of layers, for example.
-Compressed maps (tmx.gz) can not be handled yet (but compressed or uncompressed layers work properly)
-When the target map has an object layer it is moved to the bottom of the layer list of the map (no problem for the game but inconvenient for editing). Objects on the source map are ignored.
-Layer data of output file isn't gzip-compressed yet
-Created TMX file is a bit malformated (but working properly)

You can work around the last 2 problems easily by opening and saving the map in Tiled.

Re: TMXCopy

Posted: 01 Apr 2008, 01:54
by Jaxad0127
I finally got around to creating a makefile for tmxcopy. It's in the attached gzip file (the forum software won't take it without an extension or the txt extension). It's pretty generic, but it works fine for me.

Re: TMXCopy

Posted: 01 Apr 2008, 02:01
by Crush
Thank you.