Themes.wiki
author Wuzzy
Sat, 06 May 2017 00:26:10 +0100
changeset 1016 472d2941eeaf
parent 1015 07d6c9c91f68
child 1017 a8aa044ce3a2
permissions -rw-r--r--
Themes: no ==basics==
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1012
91c681a0a3fc Themes: add summary
Wuzzy
parents: 1011
diff changeset
     1
#summary How to create your own themes
91c681a0a3fc Themes: add summary
Wuzzy
parents: 1011
diff changeset
     2
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
     3
== Introduction ==
1015
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     5
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     6
== Understanding themes ==
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     7
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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     8
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     9
=== Theme types ===
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    10
**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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    11
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    12
**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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    13
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    14
=== Theme structure ===
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    15
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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    16
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    17
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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    18
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    19
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`.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    20
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    21
=== Theme elements (overview) ===
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    22
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.
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    23
1015
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    24
==== Terrain ====
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    25
* Land textures: Basic tiled image of terrain, in front and background layer. Mandatory for full themes
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    26
* Land border: The border of the land texture. Mandatory for full themes
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    27
* Explosion border: A fixed-width border of a single color when the land exploded
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    28
* Objects: Theme objects are things like obelisks, statues and things which extend ouf of the basic landscape
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    29
* Land girder: Look, shape and thickness of “land bridges”
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    30
* Construction overwrite: The shape and look of girder placed from the Construction utility can be overwritten as well
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    31
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    32
==== Eye candy ====
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    33
* Sprays: Sprays are added on top of the land textures randomly
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    34
* Background: Consists of background color and two image layers with parrallax scrolling
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    35
* Flakes: Flakes are decorational fall from the clouds and follow the wind. Flakes can be animated.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    36
* Clouds: Clouds move horizontally with the wind. There can
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    37
* Water: You may customize the water style and related images (if you wish). Water can be animated (unused in default themes)
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    38
* Particles: Land chunLs, mudball, collision dust, water drops, etc.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    39
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    40
Remember many theme elements have a Sudden Death variant as well!
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    41
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    42
== Getting started ==
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    43
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. ;-)
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    44
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    45
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.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    46
1015
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    47
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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    48
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    49
Full themes need at least: `theme.cfg`, an icon file (`icon.png` or `icon@2x.png`), `LandTex.png` and `Border.png`.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    50
A background theme theorecitally does not need any files besides `theme.cfg` (but it doesn't have much to look at, then :D).
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    51
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    52
These were the basics. Read the following pages to continue:
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    53
1011
399ca0374984 Rename Theme page to ThemeCfg to avoid confusion
Wuzzy <almikes@aol.com>
parents: 1009
diff changeset
    54
 * [ThemeCfg theme.cfg]
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    55
 * [ThemeFiles Theme files]
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    56
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    57
== Sharing themes ==
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    58
You can only play with a theme against other players online if all participating players have the theme installed under the same name. You can find some themes in DLC, players will likely have those installed. If not, either try a default theme or politely point the other players to DLC.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    59
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    60
If any player does not have the theme installed, the game will fail to start and an error message is displayed.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    61
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    62
You are encouraged to share your themes in the “[https://hedgewars.org/forum/19 Content Creations]” subforum, where submissions are considered for official inclusion into Hedgewars.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    63
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    64
== Inclusion in Hedgewars ==
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    65
If you want a theme to be included with Hedgewars, it **must** follow [http://www.hedgewars.org/node/704 Hedgewars graphics rules, style constraints and guidelines], so if you're unfamiliar with those, please read that first.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    66
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    67
Note that there is no guarantee we'll include any theme, no matter how good.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    68
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    69
Note that themes we consider to be inappropriate for the general Hedgewars “feel”, we might still reject it, even if it perfectly follows all style guidelines. We prefer a kinda “family-friendly” setting, although this term is *very* loosely defined. Two examples for such rejected themes are Military_v1 and Belly_v1.