"Atlas of Worlds" Maps will be moved to <Map Name> (Atlas of Worlds) to make room for the upcoming maps in Version 3.1.0. This probably causes some issues until the new maps can be pushed to the wiki.

Modifiers

From Path of Exile Wiki
Jump to: navigation, search

Modifiers generally change various aspects of the entity they are affecting. Most commonly modifiers apply stats, however they can also apply buffs or grant skills and can often be found on items, monsters, strongboxes or areas.

A modifier should be seen as an instance of change applied to an entity. A basic modifier does nothing on its own, it is given the effect by the associated stats (and their values), buffs and skills.

Often it is also distinguished between implicit and explicit modifiers which are visually separated on items descriptions.

Effects

For stats modifiers include a minimum and maximum value, which is most commonly found on Item Affixes - the actual value of the stat in the cases where minimum and maximum are not the same will be randomized within, so for example a Stat with a minimum value of 1 and a maximum value of 3, can either be 1, 2 or 3.

If a buff is specified, Modifiers also include a value for the buff, but unlike for Stats it is not randomized and fixed.

If a skill is specified, the specified skill (at the specified level) will be granted to the relevant entity. The skill does not include values as they're defined by the skill level directly. Often this is found on items, where they grant skills, such as Lua error: callParserFunction: function "#ask" was not found. unique item.

Note that the effects of a modifier may be hidden, as some stats do not have direct description/translation visible to the player.

Implicit modifiers

Implicit modifier on items

Implicit modifiers always spawn on entities before the addition or change of additional modifiers (for example by changing the rarity).

On monsters, implicit modifiers can be very commonly found. For example, some monsters are granted damage conversion which converts their inherent damage to that of another element. However, on unique monsters and bosses implicits are most notable - for example most bosses are granted a boost to their item rarity and item quantity as well as other bonuses such as on Atziri.

On items, visible implicit modifiers are most commonly found on:

Shields and body armour also commonly have a hidden movement speed penalty modifier.

Unlike the implicit modifiers on monsters, the implicit modifiers on equipment can be by altered in various ways:

  • Lua error: callParserFunction: function "#ask" was not found. - rerolls the range of the stats found on the implicit modifiers.
  • Lua error: callParserFunction: function "#ask" was not found. - Corruption can add or replace an implicit modifier depending on the item type.
  • Enchantment - Enchanting gloves, boots or helmets can give them a new implicit modifier.

Certain unique items also have special interactions with implicits:

  • Lua error: callParserFunction: function "#ask" was not found. - has two randomly chosen talisman implicits.

Explicit modifiers

Explicit modifiers are generally dynamically generated by changing the rarity of the entity or by other modification.

The number of affixes given by rarity depends on the rarity class:

  • Magic - random modifiers based on conditions: (0 to 1) prefix and (0 to 1) suffix
  • Rare - random modifiers based on conditions: (1 to 3) prefixes and (1 to 3) suffixes (but always at least 3) with the exception of jewels which can only have (1 to 2) prefixes and (1 to 2) suffixes
  • Unique - non-random, fixed modifiers based on the unique entity

Monsters have additional means of receiving modifiers:

On items, modifiers can be changed by spending currency:

  • Lua error: callParserFunction: function "#ask" was not found. rerolls the value of any stats on explicit modifiers on the item
  • Lua error: callParserFunction: function "#ask" was not found., Lua error: callParserFunction: function "#ask" was not found., Lua error: callParserFunction: function "#ask" was not found., Lua error: callParserFunction: function "#ask" was not found. and Lua error: callParserFunction: function "#ask" was not found. may be used to alter the rarity of an item (adding/removing mods in the process)
  • Lua error: callParserFunction: function "#ask" was not found. and Lua error: callParserFunction: function "#ask" was not found. may be used to re-roll the modifiers on Magic and Rare items respectively
  • Lua error: callParserFunction: function "#ask" was not found. and Lua error: callParserFunction: function "#ask" was not found. may be used to add a random modifier on Magic and Rare items respectively
  • Lua error: callParserFunction: function "#ask" was not found. has a chance to change the rarity or create maps with 8 Modifiers

Areas may receive modifiers depending on how they were created unlike items, monsters or strongboxes:

  • Corrupted areas as they have the 'secret_area' tag will receive (0 to 1) prefixes and (0 to 1) suffixes that satisfy that tag
  • Areas created with Map items receive the modifiers on the map they were created with
  • Areas created through a Map device may receive mods from placing map fragments in the device
  • The current league(s) or other server-wide effects (from races for example)
  • With Tempest league active in the area, the area may receive a tempest modifier

Conditions

Modifiers usually include conditions which are used to determine how they appear. These are generally used to govern the creation of explicit modifiers on entities.

Mod Domain

The mod generation determines what entity the mod applies to. The domains are primarily reverse engineered, as detailed information has been removed from the game files.

Id Type Description
1 Item The mod is generated on items (but not jewels or flasks)
2 Flask The mod is generated on flasks
3 Monster The mod is generated on monsters
4 Chest The mod is generated on Chests (i.e. Strongboxes)
5 Area The mod is generated on areas
6 Unknown
7 Unknown
8 Unknown
9 Stance The mod is generated as a Stance (appears to be animation related)
10 Master The mod is generated by masters through master crafting
11 Jewel The mod is generated on jewels
12 Atlas The mod is generated by Cartographer's Sextants.

Mod Generation Type

The mod generation determines "how" the mod will be created on an item. The generation types are primarily reverse engineered, as detailed information has been removed from the game files.

Id Type Description
1 Prefix The mod is generated as prefix, for example Item Prefix
2 Suffix The mod is generated as suffix, for example Item Suffix
3 Unique The mod is "unique" - it is given directly to the relevant entity and not generated normally. For example, the mods on unique items and implicit modifiers have this property
4 Nemesis The mod is a Nemesis mod
5 Corrupted The mod is a Corrupted mod and is given to the item upon corruption
6 Bloodlines The mod is a Bloodlines mod
7 Torment The mod is a Torment mod
8 Tempest The mod is a Tempest mod
9 Talisman The mod is a Talisman monster mod
10 Enchantment The mod is a mod granted by Enchantment

Level

The required level of the relevant entity. For example, this can be the required item level or a monster level.

However, there are cases where this is not respected though. In particular this is the case for any mods that are directly given to other entities, such as implicit mods including enchantments or monsters with innate mods.

The mod level is also a factor in calculating the level requirement of items raising the level requirement to 80% requirement of the mod (with the requirement rounded down to the nearest whole integer). In particular this is the case for mods on unique items and for enchantments

For example, Lua error: callParserFunction: function "#ask" was not found. normally has a level requirement of {{#show: Seven-League Step|?Has level requirement range text}}, however putting the {{#show:Modifier:EnchantmentLifeAndManaLeechOnKill2~|?Has stat text}} enchantment from the 3rd labyrinth on it, will increase the level requirement to Failed to parse (Missing <code>texvc</code> executable. Please see math/README to configure.): \pagecolor[RGB]{15,15,15} \color[RGB]{163,141,109} \left \lceil{{{#show:Modifier:EnchantmentLifeAndManaLeechOnKill2~|?Has level requirement}} \times 0.8 }\right \rceil = <strong class="error">Expression error: Unrecognized punctuation character &quot;{&quot;.</strong> .

Mod Group

Mods have a single group associated with them. Only one mod from a group can appear at a time, as such all mods in specific group are mutually exclusive.

As the name suggests, this primarily used to group various types of modifiers together.

For example, on items this is used a lot for the prefix and suffix generation to create those group of modifiers that modify only a single or two stats. Together with the item level requirements, this creates the "tiered" system of modifiers.

Tags

Some mods use the internal Tag system to determine on which entities they can appear and how likely they are to appear on entities. A mod can add tags to the entity it is modifying.

It primarily functions like this:

  • Find the Tags on the entity.
  • Match the Tags against the mod's list of tags.
  • For the found mods get the associated spawn weighting of the tag.
  • If the spawn weighting is zero, discard the mod, otherwise use it.
  • If multiple tags apply, the left-most tags are most important, where the right most tags are the least.

So, for example:

  • Lua error: callParserFunction: function "#ask" was not found. has the tags [{{#show: Glorious Plate|?Has tags}}].
  • Lua error: callParserFunction: function "#ask" was not found. has the tags [{{#show: Assassin's Garb|?Has tags}}].
  • The mod {{#ask:
Is mod::LocalIncreasedPhysicalDamageReductionRatingPercent7
Has name::+
|?Has name=
|?Has stat text
|format=template 
|template=SMW generic link
|userparam=intro=, outro=, template1=SMW query mod/format, color=mod
|link=none
|limit=1
|searchlabel=

}} has the tags [{{#ask:

[[-Has subobject::Is mod::LocalIncreasedPhysicalDamageReductionRatingPercent7]]
|?Has tag
|headers=hide
|mainlabel=-
|sort=Is tag number
|format=list
|link=none

}}] with the spawn weights [{{#ask:

[[-Has subobject::Is mod::LocalIncreasedPhysicalDamageReductionRatingPercent7]]
|?Has spawn weight#
|headers=hide
|mainlabel=-
|sort=Is tag number
|format=list
|link=none

}}].

  • Result for Lua error: callParserFunction: function "#ask" was not found.: The mod can spawn because it has the tag str_armour and a positive spawn weight.
  • Result for Lua error: callParserFunction: function "#ask" was not found.: The mod can not spawn because only default matches and its spawn weight is 0.

Developer information

Relevant data can be found in the content.ggpk

Mods Data/Mods.dat List of mods with their associated stats & values, buffs and skills, conditions
Mod Domains Data/ModsDomains.dat empty
Mod Generation Types Data/ModsGenerationTypes.dat empty

Note that many other .dat files link to the relevant row of Mods.dat.

See also