~~NOTOC~~
[[atc:start|{{ :atc:wikititle.png?nolink |}}]]
====== Getting Started ======
After The Collapse is a fully moddable game. A very large part of the game is contained in our data, written in human readable [[wp>JSON]] text files. Code for modifying game logic can by added via [[https://en.wikipedia.org/wiki/Lua_(programming_language)|Lua]].
===== Mod File Structure =====
Mods, when not acquired through the Steam Workshop, should be put in the **{game path}\mods\your_new_mod** sub-folder. Each mod goes in its own sub-folder. The game allows you to create a blank mod easily directly from the "Mods" menu on the main screen:
{{ :atc:mod_menu_all.png?direct&400 |}}
It will create the very basic structure for your mod:
MyMod
|-> config.json <- config file describing the mod, with name, description, version number. Required.
|-> main.lua <- Lua entry point if you want to alter the game's logic. Optional.
|-> files/ <- Folder containing data files you want to add or modify. Required.
|-> data/ <- contains game/data files to add or override (items, objects, npc, tech, etc.). Optional (add it manually).
|-> Content/ <- contains game/Content files to add or override (images, textures, sfx, music). Optional (add it manually).
Files placed in the **files/** folder will be included in the game granted you respect the same folder structure we're using.
__NB:__ The ability to add or overwrite the game's content, is a feature we call **ModFS** and we'll be referring to this name whenever used.
==== Adding or Editing Data ====
Granted you respect the format and the file structure, you can pretty much add or modify anything existing in the game. For example: if you wanted to override the properties of the lettuce seeds, you would have to create data/items/seeds/lettuce.json within the **files/** folder. Your mod folder would then look like this:
MyMod
|-> config.json
|-> files/data/items/seeds/
|-> lettuce.json
We'd advise you to use files from the base game as examples, whether you plan to override existing items or not. Copy them, rename them if necessary, and alter them. Of course, it might take you a little while and some experimentation to figure out what each line in each file does, but we'll be happy to provide some explanation within the [[https://discord.gg/9GjE4Re|Discord guild]] or the Steam Community forums.
==== Adding or Editing Content ====
ModFS allows the modification and addition of images, sprites, sound effects, and music tracks. Content can be overridden or added just like with data.
There are a few guidelines to follow:
* Textures must be in PNG (recommended) or JP(E)G formats. JP(E)G files are supported by the engine, but that's not something you should use unless you really know what you're doing
* Sound files must be OGG, WMA, MP3 (soon) or WAV files
* Sound files in **files\Content\sfx\** will be processed as sound effects, sound files in any other folder will be imported as songs (this is relevant when importing media through the Lua API)
Any textures and/or sounds that are part of your mod must be built by the game's engine. This is automatically done at run-time and will convert your images and sounds in the required .xnb file format. The game will only build content without a matching .xnb, so delete the compiled file whenever you change something in your source.
===== Lua API =====
The version of the documentation relevant to your version of After the Collapse is available in mods/MQDoc.chm. The bleeding-edge documentation is available at https://collapse.cutie.cafe/doc.
A few useful terms:
* **Mannequin** is the name of the modding framework that was developed for After the Collapse by Alexandra
* **ModFS** is a subset of Mannequin that creates a layer over the way the game loads files, to allow for overwriting and additions
===== Steam Workshop =====
{{:atc:mod_uploadtool.png?nolink |}} Please note that the Workshop uploading tool is available for Steam customers only. Customers from other stores can either use the Steam activation code they received, or upload their mods to the [[https://www.indiedb.com/games/after-the-collapse/mods|IndieDB]] mod section.
We have included a tool to upload your mods to the [[https://steamcommunity.com/app/727570/workshop/|Steam Workshop]] easily. It's located in the **Workshop** subfolder of your installation. ({steam path}\steamapps\common\AfterTheCollapse\Workshop). It's called TakeThree.
Make sure to have accepted the [[https://steamcommunity.com/workshop/workshoplegalagreement/|Steam Workshop Legal agreement]] before trying to upload a mod. After that, it's simply a matter of filling out all of the fields, and you will have your mod available on the Workshop. Note that the program also offers the option to update a mod you've previously uploaded.
Once uploaded, you'll be given a link to your creation, where you can further edit the description, add pictures, and link to your social media account(s).
__NB:__ Mods uploaded to the Steam Workshop must follow the Steam Subscriber Agreement, Steam Workshop Legal Agreement, and Anarkis Gaming Workshop rules. We reserve the right to remove any mod that we deem dangerous, illegal or damaging for the game.