Item properties

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

An item property is a modifier on an item similar to an effect. These modifiers affect either the item itself or the item's wielder.

Item properties (i.e., fire damage) are assignable in the toolset and via scripting

  • Scripting functions to add properties
  • Scripting functions to remove properties
  • Toolset can add/remove properties
  • Item Abilities are not item properties

MAKE is an item property. Because Dragon Age is a low magical world we cannot flood the player with magical items. However item progression is important to a RPG. We have decided to use an item progression system whereby items get better depending on the materials and processes used in their construction. In Dragon Age each weapon, armor, and shield progresses through several levels of quality. The highest quality items are more powerful and harder to obtain. These quality levels are called makes (they used to be called material types).

As MAKE improves, it:

  • increases the base statistics for a particular item (attack rating, damage and armor penetration for weapons, armor rating for armor, defense rating for shields).
  • changes the physical appearance of an item. Generally this change should be a model change though for expansion purposes we may also insert additional makes that are merely color changes.
  • Determines the number of upgrade/enchantment slots that are available on the item

The values in the 2DA MaterialTypes.2da influence the initial damage, attack bonus, armor penetration, defense and armor of an item. There are several upgrade stages for each equipped item. All items follow the same progression, but the labels used to refer to this progression changes based on the item type. The item's progression dictates the number of enchantment rune upgrades it can support.

Each base item type has its own list of material types, with different numbers. However many base items do share material types, so we can group them into Melee Weapons, Ranged Weapons, Wands, Armor, Shields, Helmets, etc.

The item properties allowed to be assigned to an item are based on the item's base types (i.e., a longsword has different properties allowable than a suit of armor)

When an item is equipped or un-equipped, a call-back function is run for each property on it. These usually apply or remove some package of effects with the duration type "Equipped". These are used to create items that grant bonuses when used.

List of Item Properties

Item Properties can be added either directly to an item through the tool builder interface, or assigned via scripting through the AddItemProperty method.

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 Name of the property
NameStrId int Reference to the Name String for the property.
IPType int The Type of the property. 1 = effect, 2 = onhit, 3 = restriction, 4 = special.
effect int Reference to the effect this property invokes. See effects.xls (1012 references: EFFECT_TYPE_MODIFY_PROPERTY)
int0 int A possible argument passed to the effect. For EFFECT_TYPE_MODIFY_PROPERTY this points to an ID row inside properties.xls
int1 int A possible argument passed to the effect.
float0 float A possible argument passed to the effect. For EFFECT_TYPE_MODIFY_PROPERTY this is the amount of effect to apply per point of power.
float1 float A possible argument passed to the effect.
ConditionScript float A script reference. Used to restrict equipping items when IPType is set to 3. (See \_Global\Item Scripts\ in the single player campaign for examples of the scripts).
VFX int Visual Effect to apply when equipping item.
ScalingVector int Unknown at this time.
VFX int Visual Effect to apply when equipping item.
Comment comment A comment. Not compiled into the resulting .2da file.
BaseCost int Value added to item per point of power of this property.
IsNegative int If this property has a negative effect.
BaseDuration int Assumed to be duration of effect in seconds. Unconfirmed.
ProjectileCrust int Visual Effect to apply to projectiles fired from this item.
AbilityID int Ability to use for onhit (IPType = 2) effects.