Difference between revisions of "Modding guidelines"

From VCMI Project Wiki
Jump to: navigation, search
(Additional links)
(Replaced content with "{{Template:MovedToWebpage|https://vcmi.eu/modders/Readme/}}")
 
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
= For players =
+
{{Template:MovedToWebpage|https://vcmi.eu/modders/Readme/}}
== Installing mod ==
 
To install mod unpack archive in <data directory>/Mods. This should result in such directory structure:
 
<pre>
 
<data directory>/Mods/<name of mod>/mod.json
 
</pre>
 
 
 
There is no need to activate newly installed mods.
 
== List of currently available mods ==
 
{|
 
! Name !! Download URL !! Author
 
|-
 
! Cove town || [https://dl.dropbox.com/s/98pm5ibk9ni7gei/cove.rar?dl=1 URL] || HotA Crew
 
|-
 
! New artifacts pack || [https://dl.dropbox.com/s/r7uwzfinydw8q0d/witchking-arts.rar?dl=1 URL ] || Witchking
 
|-
 
! High resolution main menu || [https://dl.dropbox.com/u/22372764/vcmi/mods/new-menu.zip URL ] || Dru
 
|}
 
== Managing mods ==
 
To activate or deactivate mod open file '''<data dir>/config/modSettings.json'''. Set mod state to "false" for disabling it or to "true" for enabling.
 
 
 
Note that removing mod from this list will not deactivate or remove mod from the game - any mods not present in this file will be considered by game as newly installed and will be (re-)inserted in this file on startup.
 
 
 
To remove mod delete its folder (<data dir>/Mods/modname).
 
== Notes ==
 
* Data directory location is system-specific:
 
** Windows : Same as your Heroes III directory
 
** Unix-like : Inside home directory: '''~/.vcmi'''
 
 
 
= For modders =
 
== Creating mod ==
 
To make your own mod you need to create subdirectory in "Mods" with name that will be used as identifier for your mod.
 
 
 
Main mod file called '''mod.json''' and should be placed into main folder of your mod, e.g. '''Mods/myMod/mod.json'''
 
 
 
All content of your mod should go into "Override" directory, e.g. '''Mods/myMod/Override/'''
 
 
 
* '''TODO''': separate '''content''' and '''override''' folders
 
* '''TODO''': support for .zip archives
 
 
 
Example of how directory structure of your mod may look like:
 
 
 
<pre>
 
Mods/
 
    myMod/
 
          mod.json
 
          Override/
 
                    data/    - unorganized files, mostly bitmap images (.bmp, .png, .pcx)
 
                    config/  - json configuration files
 
                    maps/    - h3m maps added or modified by mod
 
                    music/  - music files. Mp3 is fully supported, ogg may be added if needed
 
                    sounds/  - sound files, in wav format.
 
                    sprites/ - animation, image sets (H3 .def files or VCMI .json files)
 
                    video/  - video files, .bik or .smk
 
</pre>
 
 
 
== Creating mod file ==
 
All VCMI configuration files use [http://en.wikipedia.org/wiki/Json JSON format] so you may want to familiarize yourself with it first.
 
 
 
Example of how mod.json should look like:
 
 
 
<syntaxhighlight lang="javascript">
 
{
 
    // Name of your mod. While it does not have hard length limit
 
    // it should not be longer than ~30 symbols to fit into allowed space
 
    "name" : "My test mod",
 
 
 
    // More lengthy description of mod. No hard limit
 
    // TODO: show it in some kind of mod manager
 
    "description" : "My test mod that add a lot of useless stuff into the game",
 
 
 
    // List of mods that are required to run this one
 
    "depends" :
 
    [
 
        "baseMod"
 
    ],
 
 
    // List of mods that can't be enabled in the same time as this one
 
    "conflicts" :
 
    [
 
        "badMod"
 
    ],
 
 
 
    // Following section describes configuration files with content added by mod
 
    // It can be split into several files in any way you want but recommended organization is
 
    // to keep one file per object (creature/hero/etc) and, if applicable, add separate file
 
    // with translatable strings for each type of content
 
    // See "additional links" at the bottom of page for descriptions of each of these formats
 
 
 
    // list of factions/towns configuration files
 
    "factions" :
 
    [
 
        "config/myMod/faction.json"
 
    ]
 
 
 
    // List of hero classes configuration files
 
    "heroClasses" :
 
    [
 
        "config/myMod/heroClasses.json"
 
    ],
 
 
 
    // List of heroes configuration files
 
    "heroes" :
 
    [
 
        "config/myMod/heroes.json"
 
    ],
 
 
 
    // list of creature configuration files
 
    "creatures" :
 
    [
 
        "config/myMod/creatures.json"
 
    ],
 
 
 
    // List of artifacts configuration files
 
    "artifacts" :
 
    [
 
        "config/myMod/artifacts.json"
 
    ],
 
 
 
    // Optional, description on how files are organized in your mod
 
    // In most cases you do not need to used this field
 
    // Needed mostly to port any existing mods to vcmi (e.g. WoG distributed with Era)
 
    // Example below is default value, which is "Content" directory that acts as H3 root directory
 
    "filesystem":
 
    {
 
        "":
 
            [
 
                {"type" : "dir",  "path" : "/Content"}
 
            ]
 
    }
 
}
 
</syntaxhighlight>
 
 
 
== Additional links ==
 
* [[Mod file Format]]
 
* [[Animation Format|Def file replacement format]]
 
* [[Creature Format]]
 
* [[Town Format]]
 
* [[Hero Classes Format]]
 
* [[Hero Format]]
 
* [[Artifact Format]]
 
* [[Object Format]] (Todo)
 
* [[Spell Format]] (WiP)
 

Latest revision as of 16:20, 16 July 2024

Logo256.png    Page moved to VCMI-Homepage