Themes.wiki
changeset 1015 07d6c9c91f68
parent 1013 bbfb8d905d69
child 1016 472d2941eeaf
equal deleted inserted replaced
1014:62a12df7934c 1015:07d6c9c91f68
     1 #summary How to create your own themes
     1 #summary How to create your own themes
     2 
     2 
     3 == Introduction ==
     3 == Introduction ==
     4 Themes in Hedgewars control the look of all elements that appear on screen but weapons and hedgehogs, and are the base on which random maps are built. Read the [https://hedgewars.org/node/6768 Theme] page on the Hedgewars Wiki to learn the basics about themes.
     4 Themes in Hedgewars control the look of all elements that appear on screen but weapons and hedgehogs, and are the base on which random maps are built.
       
     5 == Basics ==
     5 
     6 
     6 == Basics ==
       
     7 All themes are located at `%USERDIR%/Data/Themes`, being each of the folders inside is a theme.
       
     8 
     7 
     9 `%USERDIR%` is the user directory, see [https://hedgewars.org/node/6761 User directory] on the Hedgewars Wiki.
     8 == Understanding themes ==
       
     9 First of all, you should understand themes from the player perspective. Read the [https://hedgewars.org/node/6768 Theme] page on the Hedgewars Wiki to learn the playeer basics.
       
    10 
       
    11 === Theme types ===
       
    12 **Full themes** are themes which can be used together with random maps. Those usually appear in the multiplayer screen for selection as well. Most themes are full themes and when talking about themes without qualification, full themes are meant.
       
    13 
       
    14 **Background themes** are minimal themes without this capability. They lack land textures, thus they can only be used as a background (hence the name). Background themes work only together with image maps or forts. Examples for background themes in Hedgewars are Planes and Blox, the default themes of the image maps of the same name.
       
    15 
       
    16 === Theme structure ===
       
    17 Technically, a theme consists of a configuration file and many media files (PNG images). Themes can define many images, or just a very few. You can set flakes, clouds, water color, the background, land texture and much, much more. Many files and settings are optional and have (more or less) sane defaults.
       
    18 
       
    19 The theme allows for further customization in Sudden Death. A good theme maker should definitely at least consider a custom SD style. But intentinoally keeping the default SD style is still an option, of course.
       
    20 
       
    21 The background music file is _not_ part of the theme, as all music is stored in `%USERDIR%/Data/Music`. The theme just accessed it via `theme.cfg`.
       
    22 
       
    23 === Theme elements (overview) ===
       
    24 To give you a feeling of how themes are structured, here's a basic list of elements of which themes are made of. In [ThemeFiles] everything is explained in great detail.
       
    25 
       
    26 ==== Terrain ====
       
    27 * Land textures: Basic tiled image of terrain, in front and background layer. Mandatory for full themes
       
    28 * Land border: The border of the land texture. Mandatory for full themes
       
    29 * Explosion border: A fixed-width border of a single color when the land exploded
       
    30 * Objects: Theme objects are things like obelisks, statues and things which extend ouf of the basic landscape
       
    31 * Land girder: Look, shape and thickness of “land bridges”
       
    32 * Construction overwrite: The shape and look of girder placed from the Construction utility can be overwritten as well
       
    33 
       
    34 ==== Eye candy ====
       
    35 * Sprays: Sprays are added on top of the land textures randomly
       
    36 * Background: Consists of background color and two image layers with parrallax scrolling
       
    37 * Flakes: Flakes are decorational fall from the clouds and follow the wind. Flakes can be animated.
       
    38 * Clouds: Clouds move horizontally with the wind. There can
       
    39 * Water: You may customize the water style and related images (if you wish). Water can be animated (unused in default themes)
       
    40 * Particles: Land chunLs, mudball, collision dust, water drops, etc.
       
    41 
       
    42 Remember many theme elements have a Sudden Death variant as well!
       
    43 
       
    44 == Getting started ==
       
    45 All themes are located at `%USERDIR%/Data/Themes`, being each of the folders inside is a theme. `%USERDIR%` is the user directory, see [https://hedgewars.org/node/6761 User directory] on the Hedgewars Wiki. On Windows, you use backslashes, of course. ;-)
    10 
    46 
    11 In order to create a new theme, you need to create a new folder there first and add the name of that folder to `theme.cfg`. This file defines not only the parameters of the theme, but also what objects are present and their behavior.
    47 In order to create a new theme, you need to create a new folder there first and add the name of that folder to `theme.cfg`. This file defines not only the parameters of the theme, but also what objects are present and their behavior.
    12 
    48 
    13 Then you'll need to create lots of data files (mostly PNG images) for the landscape, land objects, background, etc. Note the music is *not* considered to be part of the theme.
    49 Then you'll need to create a bunch of data files (mostly PNG images) for the landscape, land objects, background, etc. Note the music is *not* considered to be part of the theme.
       
    50 
       
    51 Full themes need at least: `theme.cfg`, an icon file (`icon.png` or `icon@2x.png`), `LandTex.png` and `Border.png`.
       
    52 A background theme theorecitally does not need any files besides `theme.cfg` (but it doesn't have much to look at, then :D).
    14 
    53 
    15 These were the basics. Read the following pages to continue:
    54 These were the basics. Read the following pages to continue:
    16 
    55 
    17  * [ThemeCfg theme.cfg]
    56  * [ThemeCfg theme.cfg]
    18  * [ThemeFiles Theme files]
    57  * [ThemeFiles Theme files]