General Settings

v4.0

Distinct & Replace Others

When true, a GameItemAttributeList may only hold one GameItemAttribute of this objectType.

If Replace Others is false, the GameItemAttribute will be blocked when the Add() and ReceiveTransfer() methods are used to add on to the list. Otherwise, when Replace Others is true, other GameItemObjects of the same objectType will be removed.

This is a setting which affects all ItemAttributes of the same objectType.

Affects Actor

Note: Holding shift while toggling this option will change the value for all ItemAttributes of the same objectType.

When true, the Stat Effects from this GameItemAttribute will be passed to the IHaveStats owner of the GameItemAttributeList. Otherwise, it will affect the GameItemObject which it is attached to.

Example

Imagine an Actor who has an "Attack" and "Damage" stat. Assume the following:

  • "Sword" equipped: Attack +2, Damage +3

  • "Heroism" condition: Attack +1, Damage +3

Now, with using a classic damage logic, we can see the character can inflict between 3d1 and 3d6 damage, or between 3 and 18 damage.

Imagine a "Flaming" ItemAttribute added to the Sword, which adds +0.5 to the Damage Proficiency. This generally means a 50% boost in the Final Stat.

The actor currently has "6 Damage" as their final stat. If Flaming is set to affect the actor, their Final Stat for damage would be 6 * 1.5, or 9.

However, if it does not affect the actor, it will impact the object it is on. The Sword would now have a "Damage" value of 3 * 1.5, or 4.5, meaning the actor would have a total of 7.5 Damage.

This also means in the games UI, we can easily see that "Flaming" makes the Damage of a weapon increase. Otherwise, it would not be easy to calculate the actual impact that the "Flaming" ItemAttribute has on the Sword object.

Last updated