Item Filters

For a long time, Path of Exile players have requested some way to filter items. We were always resistant to this because the parameters of such an item filter would have to be so complicated that we couldn't reasonably make a user interface to support them.

For example, a lot of players want a way to filter out Magic and Normal items. This would be fine, but they still also want to see base item types above level 70. And currency. But not scrolls because they have enough of those. And maps. And any item with 20% quality. But any gem that has quality is good too. And any item with 6 sockets. And any item with 5 or more linked sockets.

As you can see, the array of UI options that we would have to provide to allow the specific filtering requirements of every player would be completely impractical.

This is why we are adding a new feature called Item Filter Scripts in the upcoming expansion. Not only do item filter scripts allow you to filter items, but they allow you to customise the display of items as well.


Item Filter Script Example

The following is a filter script that shows all the items described above and hides everything else:

# You can add comments by putting a # at the start of the line
Show
    Rarity >= Rare

Show
    DropLevel >= 70

Hide
    BaseType "Scroll of Wisdom"

Show
    Class Map Currency

Show
    Class Gem
    Quality > 0

Show
    Quality 20

Show
    Sockets 6

Show
    LinkedSockets >= 5

Hide

The basic syntax of a script is a collection of Show and Hide blocks that each specify conditions. Anything matched by a Show block will be shown and anything matched by a Hide block will be hidden. If there are multiple conditions in a block then all of them must be matched for the block to match an item.

The blocks are matched in the order they come in the file which means that you need to have the block that hides the scrolls above before the line that shows the currency because scrolls would also match the currency block.

An empty block matches all items, which means that the Hide at the end of the file effectively hides everything that wasn't specifically shown.

The example here uses a whitelisting approach where you specify all the items that you want to see, but it is perfectly reasonable to create a filter script that simply hides the items you don't wish to see while showing the rest with an empty Show at the bottom.


Item Filter Condition Types

The following is a full list of all the conditions that you can specify to filter items. Numeric conditions allow you to use comparison operators such as less than (<) or greater than or equals (>=) to indicate that you would like to include items that would compare that way.

NameNotes
ItemLevelThe level the item was generated at.
DropLevelThe level that the item starts dropping at.
QualityThe amount of quality on the item.
RarityRarity of the item. Rarities are Normal, Magic, Rare or Unique.
ClassThe item class. Specifying part of a class name is allowed and will match any classes with that text in the name. So for example "One Hand" will match both "One Hand Sword" and "One Hand Axe"
BaseTypeThe base type of the item. Specifying a part of a base type name is allowed and will match any of the base types with that text in the name.
SocketsTotal number of sockets that the item has.
LinkedSocketsThe size of the largest group of linked sockets that the item has.
SocketGroupA group of linked sockets that contains the specified combination. For example, RRG will match any group that contains two red sockets linked with a green socket.
HeightThe height of the item in your inventory
WidthThe width of the item in your inventory
IdentifiedIf an item is identified or not
CorruptedIf an item is corrupted or not (Added in 2.5.0)

Modifying How Items Are Shown

The item filter system also gives you the ability to modify how items are displayed.

For example, say you want to show gems that have quality with a blue border. You could do that with the BorderColor attribute as shown here:

Show
    Class Gem
    Quality > 0
    SetBorderColor 128 128 255

Or let's say you want to show Exalts with Purple text for some reason. You could do that with the TextColor attribute as shown here:

Show
    BaseType "Exalted Orb"
    SetTextColor 255 0 255

You can also set the background colour:

Show
    LinkedSockets >= 5
    SetBackgroundColor 0 128 0

The three numbers used to specify a colour are the Red, Blue and Green components of the colour where 255 is the highest value. An optional fourth parameter can be provided to specify the transparency, this also ranges from 0 to 255 where 0 is completely see-through and 255 is completely opaque.

You can also have an alert sound play with PlayAlertSound. There are 9 alert sounds that can be chosen from by specifying a number. The volume of the alert sound can be adjusted with an optional second parameter, ranging from 0 to 100. The following will play alert sound 1 at 50% volume when at item with 6 linked sockets drops:

Show
    LinkedSockets 6
    PlayAlertSound 1 50

We've made our currency stand out more by adding a border and increasing the size of the font using SetFontSize:

Show
    Class "Currency"
    SetBorderColor 200 200 100
    SetFontSize 40

Items can be shown based on their size by checking Width and Height. In this example, all other 1x1 items are set to appear small and transparent using SetFontSize and lowering the fourth colour value. We'll hide the rest of the items by adding a "Hide" block to the end of our file.

Show
    Width 1
    Height 1
    SetFontSize 1
    SetBackgroundColor 50 50 50 100
    SetTextColor 200 200 200 200

Hide

Any or all of these attributes can be added to any Show block to allow complete customisation of how items hovers are shown in the world.


An example with an item filter that applies some of the colour changes described above

For a great guide on how to create Item Filters, click here!

Posted by
on
Grinding Gear Games
First for Summon Chaos Golem
Praise the Sun!
Nice ;)
Whoa! Dood! Awzum!
Interesting. Will have to look more into this and also...of course...Chaos Golem, eh?
You beauts!
FUCK YEAH!
You expect me to act as something I'm not? I picked this name for a reason.
That looks absolutely amazing.
Boom! Amazing.
fpa fap fap fap fap fap fpa




WERE WINNING BOYS
IGN: CabooseDog

Report Forum Post

Report Account:

Report Type

Additional Info