Modding:Developing a Content Mod

From Vintage Story Wiki
Revision as of 13:05, 18 March 2024 by Nateonus (talk | contribs) (Updated - Still in progress.)
Other languages:

This page was last verified for Vintage Story version 1.19.4.

Page in progress.

Developing a content mod can be simple, but certain files and folders need to be setup correctly. For more information on what can be achieved with a content mod, see Content Mods.

Selecting an IDE

When creating a content mod, you will likely be using a lot of JSON files. Although JSON is a human-readable format, it can still be beneficial to equip yourself with an Integrated Development Environment (IDE). Simply put, for the purpose of modifying JSON files, an IDE works as a fancy text editor that helps with formatting.

It is recommended to select from one of the IDEs below.

Name Free? Works on... Recommended for Code Mods
Visual Studio (Recommended) Yes - Community Edition Windows Yes
Visual Studio Code Yes Windows, macOS, Linux Yes
JetBrains Rider No Windows, macOS, Linux Yes
Notepad++ Yes Windows No

Content Mod Setup

As stated above, content mods require a certain file and folder structure to function. #

Template/Example Setup

Manual Setup

Mod Workspace

If you wish to setup your project manually, navigate to your Vintage Story install location, and enter the mods folder. Create a new folder with your mod's name - This will be where all mod-related files will be placed. It is recommended to open this folder in your selected IDE.

ModInfo.json

To register our mod, we have to specify a number of properties inside a file called 'modinfo.json'.

Navigating Assets

Publishing a Content Mod

Updating a Content Mod

What's Next?

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.

Modding
Modding Introduction Getting Started Theme Pack
Content Modding Content Mods Developing a Content Mod Basic Tutorials Intermediate Tutorials Advanced Tutorials Content Mod Concepts
Code Modding Code Mods Setting up your Development Environment
Property Overview ItemEntityEntity BehaviorsBlockBlock BehaviorsBlock ClassesBlock EntitiesBlock Entity BehaviorsCollectible BehaviorsWorld properties
Workflows & Infrastructure Modding Efficiency TipsMod-engine compatibilityMod ExtensibilityVS Engine
Additional Resources Community Resources Modding API Updates Programming Languages List of server commandsList of client commandsClient startup parametersServer startup parameters
Example ModsAPI DocsGitHub Repository