Back to mods
Armor Expanded Content lib project artwork

Vintage Story Mod DB · Vintage Story mod

Armor Expanded Content lib

Adds extra armor slots for more authentic system. This mod is intended to be a content mod library. The three vanilla slots are still in use and there are more added. Each contributes to their respective "hitbox"; Head, Body, Legs. List of armor slots: Head

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which Armor Expanded Content lib release should I use?

Updated 3 months ago
Latest stable file 1.0.4
Game version 1.22.0, 1.22.1, 1.22.2
Loader Built-in Vintage Story mod system

Armor Expanded Content lib 1.0.4 targets 1.22.0, 1.22.1, 1.22.2. It must be installed on the client. Installation on the dedicated server is optional. No extra mods listed for this file.

Where it goes

Is Armor Expanded Content lib required on the client, server, or both?

It must be installed on the client. Installation on the dedicated server is optional.

Client Required
Dedicated server Optional
Loader for this release Built-in Vintage Story mod system
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

This release supports both sides, but the source does not require it on the server.

What else does Armor Expanded Content lib 1.0.4 need?

1.0.4. Change the file and its required mods may change too.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional mods.

Before you install it

Add Armor Expanded Content lib without breaking your instance.

Built for Armor Expanded Content lib 1.0.4. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use 1.0.4. It targets 1.22.0, 1.22.1, 1.22.2; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    It must be installed on the client. Installation on the dedicated server is optional.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside 1.0.4. It opens that exact file at the source.

About this project

What does Armor Expanded Content lib add?

Adds extra armor slots for more authentic system. This mod is intended to be a content mod library.
The three vanilla slots are still in use and there are more added. Each contributes to their respective "hitbox"; Head, Body, Legs.
List of armor slots:

Head

  1. Helmet (Plate, Brigandine, Scale, Antique, Hide)
  2. Chain Helmet (Chain)
  3. Under Helmet (Gambeson)

Body

  1. Armor (Plate, Brigandine, Scale, Antique, Hide, Jerkin)
  2. Chain Armor (Chain)
  3. Under Armor (Leather armor, Gambeson)

 

Legs

  1. Legs (Plate, Brigandine, Scale, Antique, Hide, Jerkin)
  2. Chain Armor (Chain)
  3. Under Legs (Leather armor, Gambeson)

 

Vanilla armors have been moved into these slots. Though the main idea of this mod is to be a library for content modders to add custom armor pieces and better integrate everything.

Balance should be hopefully kept for vanilla. Except for Flat Damage reduction. I will patch it when I run all the math for it.

There is one content mod already being made.

 

Notes for modders:

When putting gear into the new slots there are two things that you should add to your items.

  1. clothesCategoryByType
  2. attachableToEntity/categoryCodeByType

 

I've extended the vanilla enum. The original values are still the same. New ones are:

        ArmorUnderHead = 15,
        ArmorChainmailHead = 16,
        ArmorUnderBody = 17,
        ArmorCollar = 18,
        ArmorChainmailBody = 19,
        ArmorSleeves = 20,
        ArmorGloves = 21,
        ArmorUnderLegs = 22,
        ArmorChainmailLegs = 23,

You add them the same way as vanilla does it, by using their string name.
Example:
{
      "op": "add",
      "path": "/attributes/clothesCategoryByType/armor-head-chain-*",
      "value": "ArmorChainmailHead",
      "file": "game:itemtypes/wearable/seraph/armor"
}

There are also two new attributes use by the mod. 

1. armorexpaded:blockedSlotRenderingByType 
Added directly to the armor file like this:
{
      "op": "add",
      "path": "/attributes/armorexpaded:blockedSlotRenderingByType/armor-head-jerkin-*",
      "value": ["ArmorUnderHead"],
      "file": "game:itemtypes/wearable/seraph/armor"
}
Causes the targeted armor piece to block other pieces to be equiped in desired slot.
For example the vanilla Plate armor visually already includes sleeves and gloves so it blocked these slots in the mod.
 
2. armorexpaded:blockedSlotRenderingByType 
Added directly to the armor file like this:
{
      "op": "add",
      "path": "/attributes/armorexpaded:blockedSlotRenderingByType",
      "value": {},
      "file": "game:itemtypes/wearable/seraph/armor"
}
Causes the targeted armor piece to hide other pieces from rendering underneath.
It is useful to prevent some Z-fighting and clipping. Though I'd advise to model the armor so it renders and overlays nicely. 
 

Damage reduction calculation

There are calculations done with the layers to apply the damage correctly. 
Most of these calculations have modifiers per slot to be applied.
Armor durability is applied to a randomly selected piece in the hitbox that was struck.
You can find them in the modConfigFile. You can also jsonpatch them as per usual.
The patching is done by adding a file to your assets folder. Default values are found in standard modConfig location
assets/armorexpanded/config/override/config.json
 
Any questions will be answered here or on VS discord. 
I also welcome any suggestions. But spirit of this mod is to be Vanilla Expanded. So there will not be any Combat Overhauls.
There is a very good mod for that already.
 
 

Code on Github:

 
Feel free to copy the code and use it in your project if you want to chage or do something similar.
 

Credits

Main idea for this mod is from KA3NMNP who is also working on a content submod with proper balance and armor layering.
Link to this or any other submod will be added here. Just hit me with a message with a link to moddb.
 

Custom icons provided by KA3NMNP

Project description from Vintage Story Mod DB.

Pick your setup

Armor Expanded Content lib releases for each Vintage Story version.

Choose the version and loader you play, then open the matching release.

18 available setups

Showing the newest 12 of 18 game versions. Older files are in the list below.

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

Armor Expanded Content lib versions and loaders

8 of 8 releases match

Looking for an older file? The official Vintage Story Mod DB project page is in Resources.