Modding:Getting Started: Difference between revisions

From Vintage Story Wiki
(Added mod difference table)
No edit summary
Line 1: Line 1:
{{Stub}}
{{Stub}}
__FORCETOC__
= Introduction =
Vintage story has an extensive modding system built into the game, allowing any user to make their own changes and additions as they see fit. But before you start it's important to first understand what you would like to accomplish so you can know what to expect.
== What Mods can I make? ==
The current modding system for Vintage Story is incredibly flexible and quite easy to use even if you don't know how to program. You can add fully functional '''blocks''', '''items''' and even '''mobs''' into the game without ever opening an [https://en.wikipedia.org/wiki/Integrated_development_environment IDE] (although it is recommended you learn how to use one if you plan on modding a lot in the future, as they've very convenient).
This is because nearly every feature of the game relies on the usage of '''JSONs''', which are text documents that utilize a flexible, easy to read format. You can open these files with any text editor, and with just a little bit of practice you can learn how to format them to avoid errors. The best way to learn this is to study the existing JSONs that are visible to anybody who has the game installed. To do so you'll need to locate the Vintage Story Assets folder, which you can learn about at the '''[[Modding:The Asset System | Asset System]]''' page.
If you're looking to add more complex systems to Vintage story you can accomplish this as well, but you likely won't be able to do this with JSONS alone. Vintage Story is written in C#, and it is highly suggested you learn the basics of programming and of C# in general before moving onto more complex mods that can't be accomplished with just JSONs.


== Types of Mods ==
== Types of Mods ==


There are 3 main types of modes one can create:
In general there are 3 main types of mods one can create for Vintage Story, with each having different levels of complexity:


* [[Theme Pack]]: A mod that only modifies textures and shapes
* [[Modding:Content Mods | Content Mods]]: These are mods that add additional content (IE blocks, items, mobs) to the game but don't utilize C# code and are mostly limited to JSONs.
* [[Content Mod]]: A mod that only modifies any game assets without programming
* [[Modding:Code Mods | Code Mods]]: These are mods that add more complex features and systems that require the use of C# code to accomplish.
* [[Code Mod]]: A mod that contains code and/or modifies assets
* [[Modding:Theme Packs | Theme Packs]]: These are mods that only affect visuals and don't add more content or change features significantly.


'''Content Mod''' represent /assets folder contains '''textures''', '''sounds''', '''models''' and other '''JSON''' files, that's just a catch all for blocks, configs, dialogs, entities, items, journals, music, patches, recipes, shapes, worldgen, and world properties.
== Moving Forward ==


'''Theme Pack''' is '''Content Mod''' but is allowed to use only "Affects Gameplay : false" [[Modding:The_Asset_System#Categories|assets]].
If you're just starting out it is certainly best to begin with a content mod, as most code mods simply extend the features of blocks, items and entities made from a content mod anyways. Once you've mastered content mods you can move onto coding if you want to add some really special things to your Vintage Story experience.


'''Code mode''' is extended '''Content Mod''' that contains code written in '''C#''' that modifies the behavior of the game. These mods can also include all content allowed in a Content mod.
The first thing you can do while starting your first content mod is to familiarize yourself with the '''[[Modding:The Asset System | Asset System]]'''. This is where most of the magic in Vintage Story is accomplished, and you'll be using these resources constantly while modding.  


{| class="wikitable" style="text-align:center;"
{{Navbox/modding|Vintage Story}}
|-
! <!-- empty --> !! Not Gameplay Affected !! Gameplay Affected !! Can use C# code
|-
| style="background:#eaecf0;" | '''Theme Pack''' || style="background:#D9EAD3;" | + || style="background:#F4CCCC;" | - || style="background:#F4CCCC;" | -
|-
| style="background:#eaecf0;" | '''Content Mod''' || style="background:#D9EAD3;" | + || style="background:#D9EAD3;" | + || style="background:#F4CCCC;" | -
|-
| style="background:#eaecf0;" | '''Code mode''' || style="background:#D9EAD3;" | + || style="background:#D9EAD3;" | + || style="background:#D9EAD3;" | +
|}

Revision as of 19:51, 10 May 2020

Sapling-birch.png

This article is a stub.
This article does not contain as much information as we would like. If you wish to contribute, you can request wiki edit access on the forum or the Discord.



Introduction

Vintage story has an extensive modding system built into the game, allowing any user to make their own changes and additions as they see fit. But before you start it's important to first understand what you would like to accomplish so you can know what to expect.

What Mods can I make?

The current modding system for Vintage Story is incredibly flexible and quite easy to use even if you don't know how to program. You can add fully functional blocks, items and even mobs into the game without ever opening an IDE (although it is recommended you learn how to use one if you plan on modding a lot in the future, as they've very convenient).

This is because nearly every feature of the game relies on the usage of JSONs, which are text documents that utilize a flexible, easy to read format. You can open these files with any text editor, and with just a little bit of practice you can learn how to format them to avoid errors. The best way to learn this is to study the existing JSONs that are visible to anybody who has the game installed. To do so you'll need to locate the Vintage Story Assets folder, which you can learn about at the Asset System page.

If you're looking to add more complex systems to Vintage story you can accomplish this as well, but you likely won't be able to do this with JSONS alone. Vintage Story is written in C#, and it is highly suggested you learn the basics of programming and of C# in general before moving onto more complex mods that can't be accomplished with just JSONs.

Types of Mods

In general there are 3 main types of mods one can create for Vintage Story, with each having different levels of complexity:

  • Content Mods: These are mods that add additional content (IE blocks, items, mobs) to the game but don't utilize C# code and are mostly limited to JSONs.
  • Code Mods: These are mods that add more complex features and systems that require the use of C# code to accomplish.
  • Theme Packs: These are mods that only affect visuals and don't add more content or change features significantly.

Moving Forward

If you're just starting out it is certainly best to begin with a content mod, as most code mods simply extend the features of blocks, items and entities made from a content mod anyways. Once you've mastered content mods you can move onto coding if you want to add some really special things to your Vintage Story experience.

The first thing you can do while starting your first content mod is to familiarize yourself with the Asset System. This is where most of the magic in Vintage Story is accomplished, and you'll be using these resources constantly while modding.

Icon Sign.png

Wondering where some links have gone?
The modding navbox is going through some changes! Check out Navigation Box Updates for more info and help finding specific pages.