Themes.wiki
author Wuzzy
Sat, 06 May 2017 00:25:48 +0100
changeset 1015 07d6c9c91f68
parent 1013 bbfb8d905d69
child 1016 472d2941eeaf
permissions -rw-r--r--
Themes: Give a more over-the-top overview for n00bs
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.
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
     5
== Basics ==
1015
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     6
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     7
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     8
== Understanding themes ==
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
     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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    10
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    11
=== Theme types ===
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    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.
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
**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
    15
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    16
=== Theme structure ===
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    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.
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 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
    20
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    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`.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    22
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    23
=== Theme elements (overview) ===
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    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.
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    25
1015
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    26
==== Terrain ====
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    27
* 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
    28
* 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
    29
* 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
    30
* 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
    31
* 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
    32
* 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
    33
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    34
==== Eye candy ====
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    35
* 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
    36
* 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
    37
* 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
    38
* 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
    39
* 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
    40
* 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
    41
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    42
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
    43
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    44
== Getting started ==
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    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. ;-)
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    46
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    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.
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    48
1015
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    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.
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    50
07d6c9c91f68 Themes: Give a more over-the-top overview for n00bs
Wuzzy
parents: 1013
diff changeset
    51
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
    52
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
    53
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    54
These were the basics. Read the following pages to continue:
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    55
1011
399ca0374984 Rename Theme page to ThemeCfg to avoid confusion
Wuzzy <almikes@aol.com>
parents: 1009
diff changeset
    56
 * [ThemeCfg theme.cfg]
1009
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    57
 * [ThemeFiles Theme files]
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    58
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    59
== Sharing themes ==
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    60
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
    61
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    62
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
    63
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    64
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
    65
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    66
== Inclusion in Hedgewars ==
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    67
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
    68
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    69
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
    70
a55aa7695e0d Add Themes.wiki
Wuzzy <almikes@aol.com>
parents:
diff changeset
    71
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.