Stendhal:Tileset specifications: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
imported>Kiheru trying to explain resizable images better |
imported>AntumDeluge →Interior walls: Add note about interior walls style mixtures |
||
| (58 intermediate revisions by 3 users not shown) | |||
| Line 7: | Line 7: | ||
The tilesets used for the maps are in tiled/tileset directory in the stendhal source. Give your image a descriptive name in lowercase letter and use underscore between words. You don't need to repeat information in the image name that's already given by the directory name. The current directory hierarchy is [[HowToUseTiledToCreateStendhalMaps#Tilesets|here]]. |
The tilesets used for the maps are in tiled/tileset directory in the stendhal source. Give your image a descriptive name in lowercase letter and use underscore between words. You don't need to repeat information in the image name that's already given by the directory name. The current directory hierarchy is [[HowToUseTiledToCreateStendhalMaps#Tilesets|here]]. |
||
* The license must be [http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GPL], or compatible, such as public domain. |
* The license must be [http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GPL], or compatible, such as [https://creativecommons.org/licenses/by/4.0/ CC BY], [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA], [https://opengameart.org/content/oga-by-30-faq OGA BY], [https://creativecommons.org/publicdomain/zero/1.0/ CC0], and public domain. |
||
** More restrictive Creative Commons licenses, such as [https://creativecommons.org/licenses/by-nd/4.0/ CC BY-ND] and [https://creativecommons.org/licenses/by-nc/4.0/ CC BY-NC], are not compatible. |
|||
** Other compatible open source licenses, such as BSD and MIT, are allowed but not recommended. |
|||
* Tile size is <b>32x32</b> pixels. Therefore, the dimensions of all tilesets must be some multiple of 32. |
* Tile size is <b>32x32</b> pixels. Therefore, the dimensions of all tilesets must be some multiple of 32. |
||
* File format is PNG, 8 bits/color. |
* File format is PNG, 8 bits/color. |
||
** If the images have more than 256 colors, or include semi-transparent pixels, it is best to preserve them in RGB colorspace. Otherwise, converting the images to indexed color will reduce file size & help keep the client download smaller. |
|||
* Use only fully opaque, or fully transparent pixels. Currently the client treats any semitransparent pixels as fully transparent, for performance reasons. |
|||
* Include the original layered version of the file, preferably as xcf.bz2, which [http://www.gimp.org/ GIMP] supports. |
|||
** An alternative to GIMP is [https://krita.org/ Krita], though not as widely used in the project. |
|||
* The client drops from full translucency to fully opaque and fully transparent pixels on slower systems. Using translucency is allowed, but the images must look passable with bitmask transparency too. It is possible to test the effect in the client, by choosing the desired transparency mode in the visual settings. |
|||
* <b>unlike</b> items, tile images do not use border lines |
* <b>unlike</b> items, tile images do not use border lines |
||
== Perspective == |
== Perspective == |
||
The object is to appear as viewed directly from the south, at a 45 degree angle to the ground plane. There's no distance effect. Interiors walls are an exception to this.<br> |
The object is to appear as viewed directly from the south, at a 45 degree angle to the ground plane. There's no distance effect. Interiors walls are an exception to this.<br> |
||
[[File:View_angle.png]]<br> |
|||
http://img87.imageshack.us/img87/2368/viewanglevk3.png <br> |
|||
The effect of the view angle is that lengths in north-south direction are scaled by 1/√2 (≈0.71). Likewise for all heights.<br> |
The effect of the view angle is that lengths in north-south direction are scaled by 1/√2 (≈0.71). Likewise for all heights.<br>[[File:Well_example.png]] |
||
http://img90.imageshack.us/img90/6199/wellexamplede6.png |
|||
Example of scaling north-south length in the well. |
Example of scaling north-south length in the well. |
||
=== Interior walls === |
=== Interior walls === |
||
Interior walls are viewed directly from above, <b>and</b> with faked distance effect. See the current wall images for examples. |
<del>Interior walls are viewed directly from above, <b>and</b> with faked distance effect. See the current wall images for examples.</del> |
||
''Currently, there is a mixture of styled interior walls. A format should eventually be decided upon & all tilesets/maps converted.'' |
|||
== Light == |
== Light == |
||
| Line 26: | Line 32: | ||
Light comes slightly from the left (roughly south south west), and above of the viewer.<br> |
Light comes slightly from the left (roughly south south west), and above of the viewer.<br> |
||
Because semitransparent pixels can not be used, shadows outside the main shape of the image must be done with opaque color. RGB color #353535 is fairly common, but you can use something else too. |
Because semitransparent pixels can not be used, shadows outside the main shape of the image must be done with opaque color. RGB color #353535 is fairly common, but you can use something else too. |
||
== Adding tiles to existing images == |
|||
* If the image has completely transparent tiles, you can safely use those for new tiles. |
|||
* <b>Never increase the width of an image, that is used by any map, and is higher than 1 tile!</b> The tiles would get renumbered, and every map using tiles from row 2 or below, would get broken.[[#Notes|[2] ]] |
|||
* You can add more rows to images, below the old ones. |
|||
== Other == |
== Other == |
||
| Line 31: | Line 42: | ||
* [[HowToUseTiledToCreateStendhalMaps2#Animations|Animate]] images that should move, like fire or water. |
* [[HowToUseTiledToCreateStendhalMaps2#Animations|Animate]] images that should move, like fire or water. |
||
* Consider making your images so that by using individual tiles within image, several sizes can be achieved. While an individual image can often be made look better without the limitation of tiling parts of it at 32 pixel boundaries, resizable ones can add more variety to the maps. |
* Consider making your images so that by using individual tiles within image, several sizes can be achieved. While an individual image can often be made look better without the limitation of tiling parts of it at 32 pixel boundaries, resizable ones can add more variety to the maps. |
||
[[File:Rubble_sample.png]] |
|||
http://img141.imageshack.us/img141/2824/rubblesampleqd6.png |
|||
Example: rubble can be resized in both directions. |
Example: rubble can be resized in both directions. |
||
== Notes == |
== Notes == |
||
[1] There are valid reasons to break most rules, but do not break a rule unless you understand the reason for it (and, by extension, the reason why it does not apply to your particular image). |
[1] There are valid reasons to break most rules, but do not break a rule unless you understand the reason for it (and, by extension, the reason why it does not apply to your particular image).<br> |
||
[2] Strictly speaking, it's possible to add to the width too, while keeping the tile numbering constant. Don't do that unless you really know what you are doing.<br> |
|||
[3] It's also possible to run MapUpdater.class on the relevant maps, either manually, or with a script. If you don't know how to do this, just use 'ant updatemaps'. |
|||
[[Category:Development]] |
[[Category:Development]] |
||