HowToUseTiledToCreateStendhalMaps2: Difference between revisions
Content deleted Content added
imported>Kymara →Navigation: we don't use this any more |
imported>AntumDeluge →Animations: note about outdated info |
||
| (76 intermediate revisions by 4 users not shown) | |||
Line 1:
This tutorial covers zone naming conventions, and what should go on each layer. It has a separate section on the objects and portals layer since these are complicated. Finally we explain how to do animations.<br>
Start by opening template.tmx file. Make sure all Layers are selected to be visible, then resize it to the size you want
Best zone size is '''128x128'''. In general, outside zones (anything other than an interior) must be multiples of ''32''.
We may accept 256x128 on some specials cases ( infrequently visited areas ), but we will force you to split it in smaller zones if it is any bigger ''( it is really easy to split the zone anyway )''. The template.tmx file has all the layers, and tilesets in the correct order (if you add them wrong, tiles and animations will become wrong in the game), thus I sugest you '''always use the template.tmx file''' to create new maps.▼
▲We may accept 256x128 on some specials cases ( infrequently visited areas ), but we will force you to split it in smaller zones if it is any bigger ''( it is really easy to split the zone anyway )''. The template.tmx file has all the layers
Now when you have your clean map, it's just to start drawing... some things you need to know is about the changed layers we have, im going to start from the bottom and move up.<br>▼
=Zone naming=
Zones are split based on its level:
* Level 6
* Level 5
* Level 4
* Level 3
* Level 2
* Level 1
* Level 0
* Level -1
Line 23 ⟶ 25:
* Interiors
Zones have a name that denotes their
Every relevant geographical location has its unique name like:
* Orril
Line 41 ⟶ 43:
=Layers=
▲Now when you have your clean map,
==0_floor==
The bottom of it all. This layer is used to draw different kinds of land, like sand, grass, water or anything else of that kind. Make sure you draw one "full tile" (a "full tile" is a tile that
==1_terrain==
The "mix" layer. This layer is mainly used to bind grass, sand, water or ony other terrain
==2_objects==
This layer is mainly intended for placing bushes, flowers, tree bases and other small things that might exist in the world. This layer can
<br>
==3_roof==
Anything you place in this layer will be drawn "above" the player, making an effect of walking behind it (
==4_roof_add==
==Objects==
This layer is a bit more advanced then the other layers. So
==Collision==
Probably the most important layer of all. This layer tells where you can move or not in the map, just place the red tiles
==Protection==
This layer is used to create protection zones, ie non
=Objects revisited=
Ok, back to the objects layer. This layer is used to place monsters, food growers and portals. Only tiles from data/maps/tileset/logic/ can be used here.
In the
The last thing that is important in this layer is the portals, at ''data/maps/tileset/logic/portal.png''
Most of the portals need to be coded using xml to set the source destination. (see) The exceptions are :
* the portal that has a brown door, used to create "standard house" entrances.
: If you place it on the map a new interior will be created, which is entered where you placed the portal. It has the standard interior from tiled/interiors/abstract/house_000.tmx
* the portals with stairs on, used to go up or down in the "world layers" (check world.tmx file). ''Do not use on interiors!'' It is easiest to explain by example:
*: You place one pointing 'down' at coordinates 45, 50 on a Level 0 layer with global coordinates x=499872 y=500000.
*: Then if you place one pointing 'up' at coordinates 45, 50 on a Level -1 layer with global coordinates x=499872 y=500000, the stairway will be created to go in both directions.
*: If you don't match the local coordinates 45, 50, it won't work. If you don't match the global coordinates, x y, then it won't work. If you try skipping a layer and making it from Level 0 to level -2, say, it won't work. If you only put in one half of the up down pair, it won't work.
*: For the mental wellness of your players, add an image of some stairs on the 1_terrain or 2_objects layer.
*:For a much harder example look at the -2_orril_dwarf_mine stairs going down from the green dragon cave to the -3_orril_dwarf_blacksmith. If you understand that, you're truly a master of the stairs.
* The plain white portal square can be used as a marker for where you have created portals in xml (see below.) It will not do anything if you only use this, you need the xml too. And you do not have to use it, as the xml doesn't need it. It's just for your own memory that you might want it.
* The others like 'Entry' 'Zone Change' and the one with the stop sign aren't used. So, ignore them.
If you want to create a portal leading to a specific interior house, or
=Animations=▼
'''''NOTE:''' the web client does not yet support tile animations''
▲=Animations=
Most tiles we use in stendhal now which should be animated, are animated already. For example the white daisy, the flames, etc. We document here how it's done.<br>
'''''NOTE:''' The following is outdated. Animations are now configured in {{StendhalFile|master|data/maps/tileset/animation.json|data/maps/animation.json}}. See {{StendhalFile|master|data/maps/tileset/README.animation.txt|README.animation.txt}}.
<br>
The animations are configured in a file at tiled/tileset/animation.seq. Lets look at a simple example, the flames.
<pre>
tileset/item/furniture/light/flames.png 0 0:1
tileset/item/furniture/light/flames.png 1 1:0
</pre>
The flames.png has two tiles, counting from 0 they are numbered 0, 1. There is an entry for each tile which should be animated. 0:1 tells the order they should animate in.
If you write * for the tile to be animated, then all the tiles in the following list are animated.
If you have any unanswered questions after this, please join our IRC channel irc.freenode.net #arianne, and I will answer them with the best of my abileties.▼
So we can animate the flames in a shorter way:
<pre>
tileset/item/furniture/light/flames.png * 0:1
</pre>
The use of * is equivalent to writing a line for each of the tiles in the frame list, and cycling through the list at each line. For example,
<pre>
tileset/ground/water/whirlpool.png * 0:1:2:3
</pre>
is a shorthand to writing
<pre>
tileset/ground/water/whirlpool.png 0 0:1:2:3
tileset/ground/water/whirlpool.png 1 1:2:3:0
tileset/ground/water/whirlpool.png 2 2:3:0:1
tileset/ground/water/whirlpool.png 3 3:0:1:2
</pre>
Lets try a more complicated example, the white daisy. That is a file with both a double daisy and a single daisy in it. We want the double daisies animated in a sequence, and the single in a sequence, and never the twain shall meet.
<pre>
tileset/plant/flower/daisy_white.png 0 0:2:4:6@3500
tileset/plant/flower/daisy_white.png 2 2:4:6:0@3500
tileset/plant/flower/daisy_white.png 4 4:6:0:2@3500
tileset/plant/flower/daisy_white.png 6 6:0:2:4@3500
tileset/plant/flower/daisy_white.png 1 1:3:5:7@3500
tileset/plant/flower/daisy_white.png 3 3:5:7:1@3500
tileset/plant/flower/daisy_white.png 5 5:7:1:3@3500
tileset/plant/flower/daisy_white.png 7 7:1:3:5@3500
</pre>
The even numbers tiles, 0:2:4:6, are the double daisy. So for example tile 0 in daisy_white.png animates 0->2->4->6, through all the 'double daisies' in sequence. Same for the other double tiles.
The odd numbers tiles, 1:3:5:7, are the single daisy. As you've probably now guessed, tile 1 is told to animate through 1:3:5:7, all the single daisy frames.
In the white daisy example, notice the extra @3500 after the sequence order. This tells the (somewhat slow) speed that daisies are animated at. If you don't want to use the default speed, try adding a speed like this and do 'trial and error' till you achieve a realistic effect. You can add the speed after the first tile number (or *), when you want all the frames stay visible for the specified time, or you can specify the speed for an individual frame, like in our example.
▲If you have any unanswered questions after this, please join our IRC channel irc.freenode.net #arianne, and
----
[[HowToUseTiledToCreateStendhalMaps |
[[Stendhal | Back to stendhal main wiki page]]
[[Category:Stendhal]]
| |||