Difference between revisions of "CombatAi Archetypes And Modifiers"

From Divinity Engine Wiki
Jump to: navigation, search
Line 79: Line 79:
 
<li>MULTIPLIER_COOLDOWN_MULTIPLIER (0.01): Used in the <i>CostModifier</i> explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_COOLDOWN_MULTIPLIER is used in combination with the cooldown of the action and a higher MULTIPLIER_COOLDOWN_MULTIPLIER results in a lower <i>CostModifier</i></li>
 
<li>MULTIPLIER_COOLDOWN_MULTIPLIER (0.01): Used in the <i>CostModifier</i> explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_COOLDOWN_MULTIPLIER is used in combination with the cooldown of the action and a higher MULTIPLIER_COOLDOWN_MULTIPLIER results in a lower <i>CostModifier</i></li>
 
<li>MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER (0.45): Used in the <i>CostModifier</i> explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER is used in combination with MULTIPLIER_HIGH_ITEM_AMOUNT_MULTIPLIER and we lerp between the LOW and HIGH value based on the health of the source character before multiplying it with the <i>CostModifier</i>. This way we make sure that lower health characters are more likely to use items</li>
 
<li>MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER (0.45): Used in the <i>CostModifier</i> explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER is used in combination with MULTIPLIER_HIGH_ITEM_AMOUNT_MULTIPLIER and we lerp between the LOW and HIGH value based on the health of the source character before multiplying it with the <i>CostModifier</i>. This way we make sure that lower health characters are more likely to use items</li>
<li>MULTIPLIER_HIGH_ITEM_AMOUNT_MULTIPLIER: See MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER</li>
+
<li>MULTIPLIER_HIGH_ITEM_AMOUNT_MULTIPLIER (1.00): See MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER</li>
<li>MULTIPLIER_CANNOT_EXECUTE_THIS_TURN:  Used in the <i>CostModifier</i> explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_CANNOT_EXECUTE_THIS_TURN is multiplied with the <i>CostModifier</i> if the action can not be executed this turn</li>
+
<li>MULTIPLIER_CANNOT_EXECUTE_THIS_TURN (0.50):  Used in the <i>CostModifier</i> explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_CANNOT_EXECUTE_THIS_TURN is multiplied with the <i>CostModifier</i> if the action can not be executed this turn</li>
<li></li>
+
<li>MULTIPLIER_TARGET_MY_ENEMY (1.50): Used whtn the target of the action is attacking the source character</li>
<li></li>
+
<li>MULTIPLIER_TARGET_MY_HOSTILE (3.00): Used when the target of the action is already under attack by the source character</li>
<li></li>
+
<li>MULTIPLIER_TARGET_SUMMON (0.35): Used when the target is a summon</li>
<li></li>
+
<li>MULTIPLIER_TARGET_AGGRO_MARKED (5.00): Used when the target has the status AggroMarked</li>
<li></li>
+
<li>MULTIPLIER_TARGET_HOSTILE_COUNT_ONE (0.50): Used when the target already is under attack by another character</li>
<li></li>
+
<li>MULTIPLIER_TARGET_HOSTILE_COUNT_TWO_OR_MORE (0.25): Used when the target already is under attack by 2 or more characters</li>
<li></li>
+
<li>MULTIPLIER_TARGET_IN_SIGHT (1.05): Used when the target is in sight from the current position of the source character</li>
<li></li>
+
<li>MULTIPLIER_TARGET_INCAPACITATED (0.20): Used when the character is incapacitated (e.g. due to Frozen status)</li>
<li></li>
+
<li>MULTIPLIER_TARGET_KNOCKED_DOWN (1.25): Used when the character has the KnockedDown status. Replaces MULTIPLIER_TARGET_INCAPACITATED (because KnockedDown is also incapacitates)</li>
<li></li>
+
<li>MULTIPLIER_TARGET_PREFERRED (20.00): Used when the target has the AI_PREFERRED_TARGET tag</li>
<li></li>
+
<li>MULTIPLIER_TARGET_UNPREFERRED (0.20): Used when the target has the AI_UNPREFERRED_TARGET tag</li>
 
<li></li>
 
<li></li>
 
<li></li>
 
<li></li>
 
<li></li>
 
<li></li>
 
</ul>
 
</ul>

Revision as of 15:43, 12 September 2017

The following archetypes already exist in D:OS2 and can have their modifiers overridden:

  • base
  • berserker
  • bomber
  • healer
  • mage
  • melee
  • ranged
  • ranger
  • rogue
  • warrior

The following modifiers (and their default value in the base archetype) can be used:

  • SCORE_MOD (100.0): A general modifier that you probably shouldn't change, but you're welcome to try
  • MULTIPLIER_DAMAGE_SELF_POS (1.0): Damage score on self that's considered positive (e.g. when removing the Burning status, which 'removes' damage)
  • MULTIPLIER_DAMAGE_SELF_NEG (1.0): Damage score on self that's considered negative (this is just damage)
  • MULTIPLIER_DAMAGE_ENEMY_POS (1.0): Same as MULTIPLIER_DAMAGE_SELF_POS, but for enemies (this is just damage)
  • MULTIPLIER_DAMAGE_ENEMY_NEG (1.0): Same as MULTIPLIER_DAMAGE_SELF_NEG, but for enemies (e.g. when removing the Burning status, which 'removes' damage)
  • MULTIPLIER_DAMAGE_ALLY_POS (1.0): Same as MULTIPLIER_DAMAGE_SELF_POS, but for allies
  • MULTIPLIER_DAMAGE_ALLY_NEG (1.5): Same as MULTIPLIER_DAMAGE_SELF_NEG, but for allies
  • MULTIPLIER_DAMAGE_NEUTRAL_POS (1.0): Same as MULTIPLIER_DAMAGE_SELF_POS, but for neutrals
  • MULTIPLIER_DAMAGE_NEUTRAL_NEG (1.0): Same as MULTIPLIER_DAMAGE_SELF_NEG, but for neutrals
  • MULTIPLIER_HEAL_SELF_POS (1.0): Healing score on self that's considered positive (this is just healing)
  • MULTIPLIER_HEAL_SELF_NEG (1.0): Healing score on self that's considered negative (e.g. when removing the Restoration status, which 'removes' healing)
  • MULTIPLIER_HEAL_ENEMY_POS (1.0): Same as MULTIPLIER_HEAL_SELF_POS, but for enemies (e.g. when removing the Restoration status, which 'removes' healing)
  • MULTIPLIER_HEAL_ENEMY_NEG (1.0): Same as MULTIPLIER_HEAL_SELF_NEG, but for enemies (this is just healing)
  • MULTIPLIER_HEAL_ALLY_POS (1.0): Same as MULTIPLIER_HEAL_SELF_POS, but for allies
  • MULTIPLIER_HEAL_ALLY_NEG (1.0): Same as MULTIPLIER_HEAL_SELF_NEG, but for allies
  • MULTIPLIER_HEAL_NEUTRAL_POS (1.0): Same as MULTIPLIER_HEAL_SELF_POS, but for neutrals
  • MULTIPLIER_HEAL_NEUTRAL_NEG (1.0): Same as MULTIPLIER_HEAL_SELF_NEG, but for neutrals
  • MULTIPLIER_DOT_SELF_POS (1.0): Same as MULTIPLIER_DAMAGE_SELF_POS, but for damage over time
  • MULTIPLIER_DOT_SELF_NEG (1.0): Same as MULTIPLIER_DAMAGE_SELF_NEG, but for damage over time
  • MULTIPLIER_DOT_ENEMY_POS (1.0): Same as MULTIPLIER_DAMAGE_ENEMY_POS, but for damage over time
  • MULTIPLIER_DOT_ENEMY_NEG (1.0): Same as MULTIPLIER_DAMAGE_ENEMY_NEG, but for damage over time
  • MULTIPLIER_DOT_ALLY_POS (1.0): Same as MULTIPLIER_DAMAGE_ALLY_POS, but for damage over time
  • MULTIPLIER_DOT_ALLY_NEG (1.0): Same as MULTIPLIER_DAMAGE_ALLY_NEG, but for damage over time
  • MULTIPLIER_DOT_NEUTRAL_POS (1.0): Same as MULTIPLIER_NEUTRAL_SELF_POS, but for damage over time
  • MULTIPLIER_DOT_NEUTRAL_NEG (1.0): Same as MULTIPLIER_NEUTRAL_SELF_NEG, but for damage over time
  • MULTIPLIER_HOT_SELF_POS (1.0): Same as MULTIPLIER_HEAL_SELF_POS, but for healing over time
  • MULTIPLIER_HOT_SELF_NEG (1.0): Same as MULTIPLIER_HEAL_SELF_NEG, but for healing over time
  • MULTIPLIER_HOT_ENEMY_POS (1.0): Same as MULTIPLIER_HEAL_ENEMY_POS, but for healing over time
  • MULTIPLIER_HOT_ENEMY_NEG (1.0): Same as MULTIPLIER_HEAL_ENEMY_NEG, but for healing over time
  • MULTIPLIER_HOT_ALLY_POS (1.0): Same as MULTIPLIER_HEAL_ALLY_POS, but for healing over time
  • MULTIPLIER_HOT_ALLY_NEG (1.0): Same as MULTIPLIER_HEAL_ALLY_NEG, but for healing over time
  • MULTIPLIER_HOT_NEUTRAL_POS (1.0): Same as MULTIPLIER_NEUTRAL_SELF_POS, but for healing over time
  • MULTIPLIER_HOT_NEUTRAL_NEG (1.0): Same as MULTIPLIER_NEUTRAL_SELF_NEG, but for healing over time
  • MULTIPLIER_CONTROL_SELF_POS (1.0): Control score on self that's considered positive. Control score comes from the statuses KnockedDown, Blind, ShacklesOfPain, Fear, Charmed, Incapacitated, and any Consume status that makes you lose control. (e.g. removing KnockedDown)
  • MULTIPLIER_CONTROL_SELF_NEG (2.0): Control score on self that's considered negative. (e.g. applying KnockedDown)
  • MULTIPLIER_CONTROL_ENEMY_POS (1.0): Same as MULTIPLIER_CONTROL_SELF_POS, but for enemies (e.g. applying KnockedDown)
  • MULTIPLIER_CONTROL_ENEMY_NEG (1.0): Same as MULTIPLIER_CONTROL_SELF_NEG, but for enemies (e.g. removing KnockedDown)
  • MULTIPLIER_CONTROL_ALLY_POS (1.0): Same as MULTIPLIER_CONTROL_SELF_POS, but for allies
  • MULTIPLIER_CONTROL_ALLY_NEG (2.0): Same as MULTIPLIER_CONTROL_SELF_NEG, but for allies
  • MULTIPLIER_CONTROL_NEUTRAL_POS (1.0): Same as MULTIPLIER_CONTROL_SELF_POS, but for neutrals
  • MULTIPLIER_CONTROL_NEUTRAL_NEG (1.0): Same as MULTIPLIER_CONTROL_SELF_NEG, but for neutrals
  • MULTIPLIER_BOOST_SELF_POS (1.0): Boost score on self that's considered positive (e.g. buffs like resistance increase)
  • MULTIPLIER_BOOST_SELF_NEG (1.0): Boost score on self that's considered negative (e.g. debuffs like a intelligence penalty)
  • MULTIPLIER_BOOST_ENEMY_POS (1.0): Same as MULTIPLIER_BOOST_ENEMY_POS, but for enemies (e.g. debuffs like a intelligence penalty)
  • MULTIPLIER_BOOST_ENEMY_NEG (1.0): Same as MULTIPLIER_BOOST_ENEMY_NEG, but for enemies (e.g. buffs like resistance increase)
  • MULTIPLIER_BOOST_ALLY_POS (1.0): Same as MULTIPLIER_BOOST_ALLY_POS, but for allies
  • MULTIPLIER_BOOST_ALLY_NEG (1.0): Same as MULTIPLIER_BOOST_ALLY_NEG, but for allies
  • MULTIPLIER_BOOST_NEUTRAL_POS (1.0): Same as MULTIPLIER_BOOST_NEUTRAL_POS, but for neutrals
  • MULTIPLIER_BOOST_NEUTRAL_NEG (1.0): Same as MULTIPLIER_BOOST_NEUTRAL_NEG, but for neutrals
  • MULTIPLIER_ARMOR_SELF_POS (0.75): Armor (both physical and magical) score on self that's considered positive (e.g. when removing the Acid status, which 'removes' armor damage)
  • MULTIPLIER_ARMOR_SELF_NEG (0.75): Armor score on self that's considered negative (this is just armor damage)
  • MULTIPLIER_ARMOR_ENEMY_POS (0.75): Same as MULTIPLIER_ARMOR_ENEMY_POS, but for enemies (this is just armor damage)
  • MULTIPLIER_ARMOR_ENEMY_NEG (0.75): Same as MULTIPLIER_ARMOR_ENEMY_NEG, but for enemies (e.g. when removing the Acid status, which 'removes' armor damage)
  • MULTIPLIER_ARMOR_ALLY_POS (0.75): Same as MULTIPLIER_ARMOR_ALLY_POS, but for allies
  • MULTIPLIER_ARMOR_ALLY_NEG (1.50): Same as MULTIPLIER_ARMOR_ALLY_NEG, but for allies
  • MULTIPLIER_ARMOR_NEUTRAL_POS (0.75): Same as MULTIPLIER_ARMOR_NEUTRAL_POS, but for neutrals
  • MULTIPLIER_ARMOR_NEUTRAL_NEG (0.75): Same as MULTIPLIER_ARMOR_NEUTRAL_NEG, but for neutrals
  • MULTIPLIER_FREE_ACTION (0.25): The 'final' score of an action (combined score of damage, heal, dot, hot, armor, boost, and control) is multiplied by a CostModifier and divided by an ActionCostModifier. If an action is free (meaning 0 AP) the ActionCostModifier will be equal to MULTIPLIER_FREE_ACTION
  • MULTIPLIER_ACTION_COST_MULTIPLIER (1.00): Used in the ActionCostModifier explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_ACTION_COST_MULTIPLIER is multiplied with the AP cost of the action itself and added to the ActionCostModifier
  • MULTIPLIER_MOVEMENT_COST_MULTPLIER (0.90): Used in the ActionCostModifier explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_MOVEMENT_COST_MULTIPLIER is multiplied with the AP cost of the movement needed to execute the action and added to the ActionCostModifier
  • MULTIPLIER_INVISIBLE_MOVEMENT_COST_MULTPLIER (0.30): If the player is sneaking or invisible this modifier is used on top of MULTIPLIER_MOVEMENT_COST_MULTIPLIER
  • MULTIPLIER_SOURCE_COST_MULTIPLIER (1.00): Used in the ActionCostModifier explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_SOURCE_COST_MULTIPLIER is multiplied with the SP cost of the action itself and added to the ActionCostModifier
  • MULTIPLIER_COOLDOWN_MULTIPLIER (0.01): Used in the CostModifier explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_COOLDOWN_MULTIPLIER is used in combination with the cooldown of the action and a higher MULTIPLIER_COOLDOWN_MULTIPLIER results in a lower CostModifier
  • MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER (0.45): Used in the CostModifier explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER is used in combination with MULTIPLIER_HIGH_ITEM_AMOUNT_MULTIPLIER and we lerp between the LOW and HIGH value based on the health of the source character before multiplying it with the CostModifier. This way we make sure that lower health characters are more likely to use items
  • MULTIPLIER_HIGH_ITEM_AMOUNT_MULTIPLIER (1.00): See MULTIPLIER_LOW_ITEM_AMOUNT_MULTIPLIER
  • MULTIPLIER_CANNOT_EXECUTE_THIS_TURN (0.50): Used in the CostModifier explained in MULTIPLIER_FREE_ACTION. MULTIPLIER_CANNOT_EXECUTE_THIS_TURN is multiplied with the CostModifier if the action can not be executed this turn
  • MULTIPLIER_TARGET_MY_ENEMY (1.50): Used whtn the target of the action is attacking the source character
  • MULTIPLIER_TARGET_MY_HOSTILE (3.00): Used when the target of the action is already under attack by the source character
  • MULTIPLIER_TARGET_SUMMON (0.35): Used when the target is a summon
  • MULTIPLIER_TARGET_AGGRO_MARKED (5.00): Used when the target has the status AggroMarked
  • MULTIPLIER_TARGET_HOSTILE_COUNT_ONE (0.50): Used when the target already is under attack by another character
  • MULTIPLIER_TARGET_HOSTILE_COUNT_TWO_OR_MORE (0.25): Used when the target already is under attack by 2 or more characters
  • MULTIPLIER_TARGET_IN_SIGHT (1.05): Used when the target is in sight from the current position of the source character
  • MULTIPLIER_TARGET_INCAPACITATED (0.20): Used when the character is incapacitated (e.g. due to Frozen status)
  • MULTIPLIER_TARGET_KNOCKED_DOWN (1.25): Used when the character has the KnockedDown status. Replaces MULTIPLIER_TARGET_INCAPACITATED (because KnockedDown is also incapacitates)
  • MULTIPLIER_TARGET_PREFERRED (20.00): Used when the target has the AI_PREFERRED_TARGET tag
  • MULTIPLIER_TARGET_UNPREFERRED (0.20): Used when the target has the AI_UNPREFERRED_TARGET tag