Item set

From Dragon Age Toolset Wiki
Jump to: navigation, search
Item topics

An item set is a collection of one or more items that bestow additional bonuses if all are equipped at the same time. The item set system is implemented through scripts and 2da tables, and is very flexible.

Examples of item sets include:

  • All armor sets (Leather, Chain Mail, Heavy Plate, ...)
  • Imperium Rings (two rings)
  • Juggernaut (full body armor with helmet)

and many more.

The set bonus of an item set is not explicitly shown on the items themselves, but rather has to be included in the individual item's description.

item_sets.gda



All sets the game recognizes are defined in item_sets.gda. The table has the following structure:

Column Type Description
ID int A number that uniquely identifies the entry (unless creating an M2DA override). ID numbers are listed from smallest to highest within a given file but do not need to be consecutive.
Label string Label for the set, never seen in game
namestrref int Appears to have been a string reference at some point, but only contains a copy of the Slots column at the moment. Not used.
Slots int A bit mask identifying which slots are occupied by the items in the set. See below for description.
Prop1 int The ID of the first set bonus property. "Increases Strength", "Increases Armor", etc..., see below for valid values.
Prop1Value float Value for the first set bonus property. +5 Strength, or -12.5% fatigue, etc...
Prop2 int Second set bonus property.
Prop2Value float Magnitude of the second set bonus.

The data in item_sets.gda is referenced by sys_itemsets_h to check for equipped sets and apply the corresponding bonuses.

Slots

The Slots field contains a bit field that specifies which equipment slots are occupied by the set. These are the individual slot IDs:

Slot ID
Main Hand 1
Off Hand 2
Chest 4
Head 8
Gloves 16
Boots 32
Belt 64
Ring 1 128
Ring 2 256
Neck 512
Ammo 1024
Dog Collar 2048
Dog Paint 4096

To get the value you have to enter into your own set's Slots field in item_sets.gda, simply add the individual slot IDs together. For example:

Neck + Ring1 + Ring2 = 512 + 128 + 256 = 896

Chest + Helmet + Gloves + Boots = 4 + 8 + 16 + 32 = 60

Set Properties

Each item set can have up to two separate set bonuses. The type of bonus is determined by the Prop1 and Prop2 fields in the item_sets row. If the corresponding value field (Prop1Value for Prop1, Prop2Value for Prop2) is NOT 0.0, then a property modifier will be constructed from the PropX entry. These directly correspond to the Creature Properties. Here are a few examples:

Prop1 Prop1Value Description
1 5.0 Increases Strength by 5
41 -15.0 Reduces Fatigue by 15%
22 7.5 Increases chance to avoid missiles by 7.5%

If the value field to a PropX field is 0.0, an effect from effects.xls will be applied. The only instance of this in the default game is the Griffon set, which uses a Prop1 value of 1050, which corresponds to EFFECT_TYPE_FLANK_IMMUNITY. In theory you could make item sets that petrify their wearer, give them transparency or a permanent mana shield.

Item Properties


In addition to defining the properties of the set as mentioned above, each individual item in a set also has to be flagged as belonging to that set. This is done by entering the set's ID into the ITEM_SET field on each item's variables list.

Example Set


Here is an example entry from item_sets.gda for a custom set. Please do not reuse the ID!

ID Label namestrref Slots Prop1 Prop1Value Prop2 Prop2Value
10121480 Knight Champion's Aegis 60 60 3 5 41 -20

This set uses all four armor slots (head, chest, gloves and boots). It has two set bonuses, increasing Willpower by 5 and reducing Fatigue by 20% while wearing it. The four armor items would also have to get the value 10121480 inserted into their ITEM_SET variable field.