Item Filtering: Difference between revisions

Undo revision 17920 by Equanimity (talk)
m (→‎Named Attribute Codes: Added note about EDEF/EDAM including runeword and socket bonuses. ED is unchanged from S6)
(Undo revision 17920 by Equanimity (talk))
Tag: Undo
 
(13 intermediate revisions by 3 users not shown)
Line 38:
The next simplest rule is one that displays all items with their default appearances. The output keyword '''''%NAME%''''' refers to an item's default appearance, and varies depending on which item is being shown. All items are displayed by default - the game essentially adds this rule to the bottom of the filter before beginning to process the filter's rules.
 
<code>ItemDisplay[]: %NAME%</code> <span style="color:gray;">''displays all items with their default appearancesnames''</span>
 
<code>ItemDisplay[]: %NAME%{%NAME%}</code> <span style="color:gray;">''displays all items with their default names and descriptions''</span>
 
=== Conditions ===
Line 128 ⟶ 130:
<code>ItemDisplay[hdm]: Charsi's Favorite Hammer</code> <span style="color:gray;">''Charsi's Favorite Hammer''</span>
 
 
Text and keywords can be used together to add extra information, change parts of the name to be different colors, and more. See [[Item_Filtering#Output_Keywords | all keywords]] below.
 
Line 134 ⟶ 136:
 
 
The price of an item (displayed above the name when a merchant is selling it) can be recolored by using a color keyword after the rest of the output.
As with elsewhere, the double slash ('''//''') functions as an in-file way to write comments that will be ignored by the computer.
 
<code>ItemDisplay[SHOP]: %NAME%%WHITE%</code> <span style="color:gray;">''changes the price color for shop items to white</span>
 
 
As with elsewhere, the double slash ('''//''') functions as an in-file way to write comments that will be ignored by the computer. Everything afterward will be ignored.
 
<code>ItemDisplay[NMAG (aqv OR cqv)]: // hides regular arrows/bolts</code>
 
<code>ItemDisplay[tsc]: //%NAME% // Scroll of Town Portal</code> <span style="color:gray;">''this rule hides TP scrolls, but can be changed to display them instead by deleting the first '''//'''''</span>
 
When frequently enabling or disabling parts of a filter, putting '''//''' in front of those parts instead of deleting them can result in faster editing.
<code>//ItemDisplay[MAG cm2]: // hides magic large charms</code> <span style="color:gray;">''this "rule" is ignored, but can be quickly re-enabled by deleting the first '''//'''''</span>
 
<code>ItemDisplay[tsc]: //%NAME% // Scroll of Town Portal</code> <span style="color:gray;">''this rule hides TP scrolls, but can be changed to display them instead by deleting the first '''//''' in front of %NAME%''</span>
 
<code>//ItemDisplay[MAG cm2(aqv OR cqv)]: // hides magic largequivers charmsif enabled</code> <span style="color:gray;">''this "rule" is ignored, but can be quickly re-enabled by deleting the first '''//''' from in front of ItemDisplay''</span>
 
 
Line 188 ⟶ 198:
 
 
The '''''%NL%''''' keyword adds a new line above the previous line and can only be used withinin item descriptions for any item, or within item names offor the following: identified items whose rarity is magic or higher, runewords, and items within shops.
 
<code>ItemDisplay[]: %NAME%{Affix Level: %ALVL%%NL%Item Level: %ILVL%}</code> <span style="color:gray;">''Shows item/affix levels on separate lines in description (same effect as '''Show Item Level''' setting)''</span>
 
 
The number of displayed characters for an item's name is capped at 56. The internal limit for an item's name includes additional characters for color keywords (3 characters each) and %NL% (2 characters each) and goes up to 125.
 
For example, a name that uses all 56 text characters and also uses 23 color keywords (69 internal characters) would have an internal size of 125 (56+69) and work as expected, but attempting to add another color will break things.
 
The cap for item descriptions is much higher at 500 total characters and, unlike for item names, is the same for both displayed characters and internal characters.
 
<!-- End of "Filter Syntax" category -->
Line 313 ⟶ 330:
| %ED% || enhanced defense/damage || refers to defense for armor,<br>damage for weapons
|-
| %EDEF% || +N% Enhanced Defense || Includes bonuses from runewords and sockets<br>(ED does '''not''' include these)
|-
| %EDAM% || +N% Enhanced Damage || Includes bonuses from runewords and sockets<br>(ED does '''not''' include these)
|-
| %AR% || +N to Attack Rating ||
Line 406 ⟶ 423:
| <span class="d2-sage">Sage</span> || ? || ?
|-
| <span class="d2-teal">Teal</span> || ? || ?9F
|-
| <span class="d2-light-gray">Light Gray</span> || ? || ?
Line 428 ⟶ 445:
 
 
All notification keywords seem to bypass the normal rule-handling procedure. Normally, the rules are processed top-to-bottom and this process halts when a matching rule (without '''%CONTINUE%''') is found. Notification keywords, however, can apply even after the process has halted. This mayis most likely due to the game making a separate pass through the filter file for notification keywords - the first pass ignores notification keywords, and the second pass beignores [[Bugs|unintendedeverything behavior]]else.
 
==== Special Keywords ====
Line 436 ⟶ 453:
| %CONTINUE% || the item is compared against additional rules instead of being displayed by the current rule<br>the current rule's output is stored in %NAME%
|-
| %NL% || specifies a new line (lines are constructed bottom-up)<br>only works within braces (descriptions) or for '''ID !NMAG''', '''RW''', or '''SHOP''' items (identified items which are magic or higher rarity, runewords, or items within shops)
|-
| {} || anything within the braces applies to the item's description rather than the item's name/title
Line 528 ⟶ 545:
! Code !! Code !! Group !! Details
|-
| EQ1 || HELM || HelmetsHelms || includes class helms
|-
| EQ2 || CHEST || Chests ||
Line 557 ⟶ 574:
| WP4 || DAGGER || Daggers || includes throwing knives
|-
| WP5 || THROWING || Throwing Weapons || includes throwing knives/axes, all javelins, throwing potions
|-
| WP6 || JAV || Javelins || includes all throwing weapons, all spears, Amazon javelins
|-
| WP7 || SPEAR || Spears || includes Amazon spears & all javelins
|-
| WP8 || POLEARM || Polearms ||
Line 580 ⟶ 597:
|-
| 2H || || 2-Handed Weapons ||
|-
| CLUB || || Clubs (mace subtype) ||
|-
| TMACE || || Tipped Maces (mace subtype) ||
|-
| HAMMER || || Hammers (mace subtype) ||
|}
Since '''WP6''' overlaps entirely with both '''WP5''' and '''WP7''' (two very different kinds of weapons), it's rarely useful.
 
===== Class-Restricted Item Groups =====
Line 589 ⟶ 611:
| CL1 || DRU || Druid pelts
|-
| CL2 || BAR || Barbarian helmetshelms
|-
| CL3 || DIN || Paladin shields
Line 600 ⟶ 622:
|-
| CL7 || ZON || Amazon weapons
|-
| CLASS || || All class-restricted items
|}
 
Line 649 ⟶ 673:
| FILTLVL || filter strictness level || 0 - 9 (Show All Items, up to 9 custom levels)
|}
There is currently a [[Bugs|bug]] with hiding stacked gems/runes - if the lootfilter attempts to hide them, they'll usually be loaded regardless and appear with an empty name.
 
==== Named Attribute Codes ====
Line 881 ⟶ 904:
| style="font-size:90%;" | <span style="color:gray;">STAT252</span> || style="font-size:78%;" | Repairs X Durability in Y Seconds ''(N = 100/Y)''
|-
| style="font-size:90%;" | STAT360 || Corrupted ''Corruption ([[Item_Filtering#STAT360_IDs|values for N]])''
|-
| style="font-size:90%;" | STAT422 || Replenishes 1 Charge in 3 Seconds
Line 889 ⟶ 912:
| style="font-size:90%;" | STAT425 || -N% to Enemy Physical Resistance
|-
| style="font-size:90%;" | STAT486 || ''Mirrored''
|-
| style="font-size:90%;" | STAT477 || style="font-size:90%;" | ''transform_dye (N: black=4, white=21)''
|-
| style="font-size:90%;" | STAT501 || style="font-size:92%;" | +N Open Wounds Damage per Second
|-
| style="font-size:90%;" | STAT185STAT504 || ''unused185''Curse Resistance +N%
|}
</li>
Line 1,272 ⟶ 1,299:
| style="font-size:90%;" | STAT496 || ''map_mon_droparmor''
|-
| style="font-size:90%;" | STAT497 || ''map_mon_dropcharmsmap_mon_dropcrafting''
|-
| style="font-size:90%;" | STAT498 || ''map_glob_extra_boss''
Line 1,279 ⟶ 1,306:
|-
| style="font-size:90%;" | STAT500 || Area Contains a Random Event
|-
| style="font-size:90%;" | STAT186STAT502 || ''unused186map_mon_dropcharms''
|-
| style="font-size:90%;" | STAT187STAT503 || ''unused187map_glob_dropcorrupted''
|-
| style="font-size:90%;" | STAT189STAT186 || ''unused189map_glob_boss_dropskillers''
|-
| style="font-size:90%;" | STAT190STAT187 || ''unused190map_glob_boss_dropcorruptedunique''
|-
| style="font-size:90%;" | STAT191STAT505 || ''unused191map_glob_boss_dropfacet''
|-
| style="font-size:90%;" | STAT213STAT506 || ''unused212map_mon_dropjewels''
|-
|}
Line 1,413 ⟶ 1,452:
|-
| style="font-size:90%;" | STAT184 || ''missing_hp''
|-
| style="font-size:90%;" | STAT185 || ''uber_difficulty''
|-
| style="font-size:90%;" | STAT189 || ''openwounds_stack''
|-
| style="font-size:90%;" | STAT190 || ''curse_slots''
|-
| style="font-size:90%;" | STAT191 || ''item_skillonequip''
|-
| style="font-size:90%;" | STAT213 || ''item_mindamage_energy''
|-
| style="font-size:90%;" | STAT215 || ''item_armorpercent_perlevel''
Line 1,626 ⟶ 1,675:
|-
| STAT88 || ''item_doubleherbduration''
|-
| style="font-size:90%;" | STAT185 || ''unused185''
|-
| style="font-size:90%;" | STAT186 || ''unused186''
|-
| style="font-size:90%;" | STAT187 || ''unused187''
|-
| style="font-size:90%;" | STAT189 || ''unused189''
|-
| style="font-size:90%;" | STAT190 || ''unused190''
|-
| style="font-size:90%;" | STAT191 || ''unused191''
|-
| style="font-size:90%;" | STAT192 || ''unused192''
Line 1,662 ⟶ 1,699:
|-
| style="font-size:90%;" | STAT212 || ''unused211''
|-
| style="font-size:90%;" | STAT213 || ''unused212''
|-
| style="font-size:90%;" | STAT268 || ''item_armor_bytime''
Line 1,743 ⟶ 1,778:
Some stats have an additional layer that needs to be specified in order for the stat to filter properly. To access these layers, the '''MULTI''' condition can be used - if follows this format:
 
MULTI '''''Stat IDStat_ID''''' , '''''Layer IDLayer_ID''''' '''''Operator'''''= '''''Value'''''
 
Any of the comparison operators ('''<''','''>''','''=''') may be used - below is a list of stats with extra layers:
Line 1,752 ⟶ 1,787:
| Class Skill || 83 || [[Item_Filtering#Group_Skills|class_id]] || skill_bonus || <code>MULTI83,2=2</code> ([[Hellfire Torch]] with Necromancer skills)
|-
| O SkillOSkill || 97 || [[Item_Filtering#Individual_Skills|skill_id]] || skill_bonus || <code>MULTI97,74=20</code> ([[Corpsemourn]])
|-
| Single Skill || 107 || [[Item_Filtering#Individual_Skills|skill_id]] || skill_bonus || <code>MULTI107,20=3</code> ([[Thunderstroke]])
Line 1,792 ⟶ 1,827:
! Stat !! MULTI !! Alternative !! Example
|-
| ClssClass Skill || MULTI83 || CLSK || <code>CLSK2=2</code> ([[Hellfire Torch]] with Necromancer skills)
|-
| O SkillOSkill || MULTI97 || OS || <code>OS74=20</code> ([[Corpsemourn]])
|-
| Single Skill || MULTI107 || SK || <code>SK20=3</code> ([[Thunderstroke]])
Line 2,144 ⟶ 2,179:
| SK115 || Vigor
|-
| SK116 || ConversionHoly Sword
|-
| SK117 || Holy Shield
Line 2,172 ⟶ 2,207:
</li>
<li style="display:inline-table; margin-left:0px; margin-right:8px;">
 
====== Barbarian ======
{| class="wikitable"
Line 2,810 ⟶ 2,846:
| 179 || Counselor's Causeway
|-
| 180 || Stygian<span Cavernsclass="omod">''Unused''</span>
|-
| 181 || Stygian Caverns
|-
| 182 || Stronghold of Acheron
|-
| 183 || Fallen Gardens
|-
| 181184 || StrongholdDiamond of AcheronGate
|}
</li>
Line 2,908 ⟶ 2,950:
| 26 || Attack Rating, Enhanced Damage
|-
| 27 || All Skills <span class="omod">(Weapons)</span>
|-
| 28 || Fire Mastery, Faster Cast
Line 2,954 ⟶ 2,996:
| 49 || Curse Resistance <span class="omod">(Chest, Helm, Quiver, Shield)</span>
|-
| 50 || All Skills <span class="omod">(Non-weapons)</span>
|}
</li>
97

edits