0 of 0

File information

Last updated

Original upload

Created by

VitruvianGuar

Uploaded by

VitruvianGuar

Virus scan

Safe to use

About this mod

Modding tool, providing an easy way to apply effects to whole classes of equipment, making the creation of global rebalances and overhauls a much easier task

Requirements
Permissions and credits
Changelogs
Introduction

BG 3 modding has its limits. It's surprisingly hard to implement a lot of simple sounding ideas like always apply a status to characters, or add some passive to every Medium Armor in game. Equipment Library is a solution for this problem. It provides a convenient framework for modders to use, making the creation of global rebalances and overhauls a much easier task.

How to use

Just add Equipment Library to the beginning of your mod load order. It has to be loaded before mods that depend on it.

Equipment Library does not have any effect in game unless you've also installed some mods, taking advantage of its functionality. You do not need to download and install it unless you are a modmaker or another mod has specified Equipment Library as a requirement.

How does it work

Using inheritance and self-inheritance, Equipment Library redefines data "PassivesOnEquip"
for every Armor chest piece in game and
data "PassivesMainHand"
data "PassivesOffHand"
for every Weapon in game.

It adds new hidden passives, which modmakers can now redefine in their own mods, to apply the desired effects.

Available Armor passives are:

EqLib_HeavyBody_Passive - on every Heavy Armor chest piece

EqLib_RingMailBody_Passive - on every Ring Mail
EqLib_ChainMailBody_Passive - on every Chain Mail
EqLib_SplintBody_Passive - on every Splint Mail
EqLib_PlateBody_Passive - on every Full Plate


EqLib_MediumBody_Passive - on every Medium Armor chest piece

EqLib_HideBody_Passive - on every Hide Armor
EqLib_ChainShirtBody_Passive - on every Chain Shirt
EqLib_ScaleBody_Passive - on every Scale Armor
EqLib_BreastplateBody_Passive - on every Breastplate
EqLib_HalfPlateBody_Passive - on every Half Plate


EqLib_LightBody_Passive - on every Light Armor chest piece

EqLib_PaddedBody_Passive - on every Padded Armor
EqLib_LeatherBody_Passive - on every Leather Armor
EqLib_StuddedBody_Passive - on every Studded Leather Armor

Format of Weapon passives:

EqLib_[WeaponTypeName][Hand]_Passive

For example:

EqLib_BattleAxeMain_Passive - on every Battleaxe. Is active when the item is equipped in main hand
EqLib_BattleAxeOff_Passive - on every Battleaxe. Is active when the item is equipped in the off hand

Likewise:

EqLib_FlailMain_Passive
EqLib_FlailOff_Passive

EqLib_MorningstarMain_Passive
EqLib_MorningstarOff_Passive

And so on.

Weapon that can't be equipped in the off hand only have one passive:

EqLib_PikeMain_Passive
EqLib_GlaiveMain_Passive
EqLib_GreatAxeMain_Passive



For example, if you want to make every Chain Mail in game to additionally reduce incoming physical damage by 2 you just need to redefine one single passive in your mod.

new entry "EqLib_ChainMailBody_Passive"
type "PassiveData"
data "Properties" "IsHidden"
data "BoostContext" "OnEquip;OnCreate"
data "Boosts" "DamageReduction(Piercing, Flat, 2);DamageReduction(Bludgeoning, Flat, 2);DamageReduction(Slashing, Flat, 2)"

You can also use universal passives

EqLib_Uni1_Passive
EqLib_Uni2_Passive
EqLib_Uni3_Passive

They  are tied to every armor/clothing without passives, including underwear, thus allowing to always apply some effect to characters, regardless of their equipment.

For further examples, you may check how Mobility Overhaul and Armor Overhaul use Equipment Library.

Compatibility with other mods

Equipment Library is supposed to be automatically compatible with every mod that uses inheritance and doesn't affect data "PassivesOnEquip"
of Armor chest pieces. Or
data "PassivesMainHand"
data "PassivesOffHand"
of Weapons. If you need to affect them, however, you can make your mod compatible with Equipment Library by manually adding necessary passives from it.

For example if your mod changes Passives of Ketheric Thorm's Armor, instead of

new entry "MOO_Ketheric_Armor"
type "Armor"
using "MOO_Ketheric_Armor"
data "PassivesOnEquip" "My_New_KethericArmor_Passive"

You need to write

new entry "MOO_Ketheric_Armor"
type "Armor"
using "MOO_Ketheric_Armor"
data "PassivesOnEquip" "EqLib_PlateBody_Passive;EqLib_HeavyBody_Passive;My_New_KethericArmor_Passive"

Compatibility between mods using Equipment Library

Mods that use different passives should be compatible. Mods that use the same passive will conflict as always. However, it shouldn't be hard for mod authors to make compatibility patches for such cases.