1. Search:

1.0 Search types:

1.1 Search operators:

1.2 Search delimiters/Multiple search terms:

1.3 Search previous version:

2. Filters

2.0 Editing filters:

2.1 Adding filters:

2.2 Removing/deleting filters:

2.3 Saving filters:

2.4 Load filters:

3. Market Search

4. Market Search with Gem/s




^1.0 Search types: Search types specify the field to which a search term pertains, they are used by adding, for example, name= to the start of a search term.

^1.0.0 Normal search: The simplest type of search, it will match the search term to an items name, hero, rarity, slot, type or set fields

^1.0.1 Name search: Using the search type name will match the search term to an items name field. Valid operators are name= and name!=. To specify that the search should be performed on the previous version of the item use _name.

^1.0.2 Description search: Using the search types desc/description match the search term to an items description field. Valid operators are desc= and desc!=. To specify that the search should be performed on the previous version of the item use _desc.

^1.0.3 Hero search: Using the search type hero will match the search term to an items hero field. Valid operators are hero= and hero!=. To search for items that don't belong to a hero use hero=n/no/false. To search for items that belong to any hero use hero=y/yes/true. To specify that the search should be performed on the previous version of the item use _hero.

^1.0.4 Rarity search: Using the search types rar/rarity will match the search term to an items rarity field. Valid operators are rar=, rar!=, rar>, rar<, rar>=, rar<=. To specify that the search should be performed on the previous version of the item use _rar.

^1.0.5 Slot search: Using the search type slot will match the search term to an items slot field. Valid operators are slot= and slot!=. To search for items that don't have a slot use slot=n/no/false. To search for items that do have a slot use slot=y/yes/true. To specify that the search should be performed on the previous version of the item use _slot.

^1.0.6 Type search: Using the search type type will match the search term to an items type field. Valid operators are type= and type!=. To specify that the search should be performed on the previous version of the item use _type.

^1.0.7 Set search: Using the search type set will match the search term to an items set field. Valid operators are set= and set!=. To search for items that don't belong to a set use set=n/no/false. To search for items that belong to any set use set=y/yes/true. To specify that the search should be performed on the previous version of the item use _set.

^1.0.8 Store search: Using the search types store/price will match the search term to an items store field. Valid operators are store=, store!=, store>, store<, store>=, store<=. To search for items that aren't in the store use store=n/no/false. To search for any item that is in the store use store=y/yes/true. To specify that the search should be performed on the previous version of the item use _store. Prices are in dollars, use . or , for decimals. Example: store<=0.99

^1.0.9 Obtainable search: Using the search types obtain/obtainable/obtainability will match any items that are obtainable from a container or are dropping. Valid operators are obtain= and obtain!=. The only valid search terms are n/no/false and y/yes/true. To specify that the search should be performed on the previous version of the item use _obtain.

^1.0.10 Contains search: Using the search types cont/contain/contains/container will match any items that contain other items. Valid operators are cont= and cont!=. The only valid search terms are n/no/false and y/yes/true. To specify that the search should be performed on the previous version of the item use _cont.

^1.0.11 Styles search: Using the search types style/styles will match the search term to an items styles field. Valid operators are style= and style!=. The only valid search terms are n/no/false and y/yes/true, and to search for unlock requirements: gem, item, style and (for any of these) unlock/lock/req. To specify that the search should be performed on the previous version of the item use _style.

^1.0.11 Sockets search: Using the search types socket/sockets/gem/gems will match a gem type to an items sockets field. Valid operators are socket= and socket!=. To search for items that don't have any socketed gems use socket=n/no/false. To search for items that have any kind of socketed gems use socket=y/yes/true. To specify that the search should be performed on the previous version of the item use _socket. In player armory mode this search uses the items real socketed gems, not the default ones from the schema.

^1.0.11 Modifiers search: Using the search types mod/modifier/modifiers/visuals/visual will match a modifier type to an items modifiers field. Valid operators are mod= and mod!=. To search for items that don't have any modifiers use mod=n/no/false. To search for items that have any kind of modifiers use mod=y/yes/true. To specify that the search should be performed on the previous version of the item use _mod.

^1.0.12 Default Quality search: Using the search type defquality will match any item for which the given quality is the default according to the schema. Valid operators are defquality= and defquality!=. To search for items of normal quality use defquality=normal/regular/common or leave it empty.

^1.0.13 Quality search: Using the search type quality will match any item for which the given quality has been spotted on the market. Valid operators are quality= and quality!=. To search for items of normal quality use quality=normal/regular/common or leave it empty. To search for items that haven't been spotted in the market use quality=n/no/false. To search for items that have been spotted in the market with any quality (including normal) use quality=y/yes/true. In player armory mode this search behaves differently: it will match items of the given quality

^1.0.14 Drops search: Using the search types drop/drops/dropping will match any items that are dropping. Valid operators are drop= and drop!=. The only valid search terms are n/no/false and y/yes/true. To specify that the search should be performed on the previous version of the item use _drop.

^1.0.15 New search: Using the search type new will match any items that are new as compared to the loaded previous version. Valid operators are new= and new!=. The only valid search terms are n/no/false and y/yes/true.

^1.0.16 Changes search: Using the search types change/changes will match any items that have changes as compared to the loaded previous version. Valid operators are change= and change!=. The only valid search terms are n/no/false and y/yes/true, and to search for specific changed fields: name, img/image/pic/picture/icon, hero, rar/rarity, slot, type, desc/description, set, mod/modifier/modifiers/visuals/visual, style/styles, store/price, socket/sockets/gem/gems, obtain/obtainable/obtainability, cont/contain/contains/container and drop/drops/dropping. To search for more specific changes you can always use a mixture of a search for the current item and the previous item, for example: drop=y&_drop=n

^1.0.17 Owned search: Using the search type owned will match any items that are owned by the last loaded player armory, if none has been loaded this search will be ignored. This search will only work in schema mode. Valid operators are owned= and owned!=. The only valid search terms are n/no/false and y/yes/true.

^1.0.18 Tradable search: Using the search type tradable/tradeable/trade will match any items that are tradable. Valid operators are tradable= and tradable!=. The only valid search terms are n/no/false and y/yes/true.

^1.0.19 Marketable search: Using the search type marketable/marketeable/market will match any items that are marketable. Valid operators are marketable= and marketable!=. The only valid search terms are n/no/false and y/yes/true.

^1.0.20 Craftable search: Using the search type craftable/crafteable/craft will match any items that are craftable. Valid operators are craftable= and craftable!=. The only valid search terms are n/no/false and y/yes/true.

^1.0.20 Socketable search: Using the search type socketable/socketeable will match any items that are socketable. Valid operators are socketable= and socketable!=. The only valid search terms are n/no/false and y/yes/true.


^1.1 Search operators: Search operators come inbetween search types and search terms, they specify what to return when the search is performed.

^1.1.0 Equals operator: Using the operators =/==. The equals operator is the dafault operator that is used for normal searches, it returns an item if the search is true. For example searching for rarity=arcana will search all items for rarity=arcana and return those that match. Searching for drop=false will find all items that aren't dropping and return them. Searching for drop=true will find all items that are dropping and return them.

^1.1.1 Not-equals operator: Using the operator !=. The not-equals operator is the opposite of the equals operator, it returns an item if the search is false. For example searching for rarity!=arcana will search all items for rarity=arcana and return those that DON'T match. Searching for drop!=false will find all items that are dropping and return them. Searching for drop!=true will find all items that aren't dropping and return them.

^1.1.2 Greater operator: Using the operator >. The greater operator can be used for rarity searches and store searches, it returns an item if its value is greater than that of the search. For example searching for rarity>rare will search all items for rarity=rare and return those whose rarity is greater than rare.

^1.1.3 Greater or equal operator: Using the operators >=/=>. The greater or equal operator behaves similarly the greater operator, it returns an item if its value is greater than or equal to that of the search. For example searching for rarity>=rare will search all items for rarity=rare and return those whose rarity is greater than or equal to rare.

^1.1.4 Less operator: Using the operator <. The less operator behaves similarly the greater operator, it returns an item if its value is less than that of the search. For example searching for rarity<rare will search all items for rarity=rare and return those whose rarity is less than rare.

^1.1.5 Less or equal operator: Using the operators <=/=<. The less or equal operator behaves similarly the greater operator, it returns an item if its value is less than or equal to that of the search. For example searching for rarity<=rare will search all items for rarity=rare and return those whose rarity is less than or equal to rare.


^1.2 Search delimiters/Multiple search terms: Search terms usually end at a space and are OR'd, but there are other ways to delimit them and specify their behaviour in relation to other search terms.

^1.2.0 Quoted search: Normally a space ends a search term and OR's it with the next one. The search nature's prophet will do two normal searches and OR them, this will match all items for Nature's Prophet but also all items for Death Prophet. Using a quoted search ("nature's prophet") will give more specific results, it will only match anything that contains the whole quoted phrase, Death Prophet won't be a match but Nature's Prophet will. Remember that to do a quoted search with a search type, the search type has to be inside the quotes aswell "set=Dark Wraith"

^1.2.1 OR search: Separating two search terms with an space ( ) will OR them. The search arcana immortal will do two normal searches and OR them, this will first match all items with rarity Arcana, then match all items with rarity Immortal and display both as the search results.

^1.2.2 AND search: Separating two search terms with an ampersand (&) will AND them. The search wicked pain will do two normal searches and OR them, this will match all items with Wicked in their name (like all of the items in the Wicked Bad Voodoo set) and all items for the hero Queen of Pain. Using an AND search (wicked&pain) will only match items that match both search terms, in this case: the items in the Wicked Succubus set for Queen of Pain

^1.2.3 Pharentesis: By default OR's take precedence over AND's. To override this behaviour you can use pharenthesis ( ). Suppose you wanted to find all mythical and greater rarity items, but only couriers of a rarity greater than mythical. (slot!=courier&rarity>=mythical) (slot=courier&rarity>mythical). This does a search for anything that isn't a courier: slot!=courier, then AND's it to a search for anything greater than or equal to mythical: rarity>=mythical, which results in anything that isn't a courier and is higher than or equal to mythical. Then it does another search for anything that is a courier: slot=courier, then AND's it to a search for anything greater than mythical: rarity>mythical, which results in anything that is both a courier and of a rarity higher than mythical. Finally it takes the results of those two searches and OR's them, so you'll get the results for both: higher than mythical couriers and higher than or equal to mythical for the rest.


^1.3 Search previous version: Most searches can be made to take into account data from older versions, the only exceptions to this are quality searches (because they use current market data) and new/changes searches, for obvious reasons. Appending an underscore (_) to a search will make it return items whose previous loaded version matches the search. This requires that you choose an older version from the right-side bar first. For example _drop=y will find any items whose previous loaded version had them marked as dropping. Combining this with an opposite search (_drop=y&drop!=y) can be an easy method to find items which have stopped dropping.


^2. Filters: Filters can be used to save searches for quick access, or to have broad searches that you can narrow down using the search function. Any valid search is a valid filter and they behave in the same manner.

^2.0 Editing filters: To edit a filter first select it (the current filter will be marked in red), then click "Edit Filters". This will open up a text area where you can write the filters search, and it will also enable you to edit the filters name. Once you're happy with the made changes just click "Done Editing". Remember to save your filters when you're done, they aren't saved automatically!

^2.1 Adding filters: To add a filter click the "+" at the bottom left of the filters area, a New Filter will be created which you can then select and edit.

^2.2 Removing/deleting filters: To remove a filter first select it, then click the "-" at the bottom left of the filters area and the filter will be deleted.

^2.3 Saving filters: There are two methods you can use for saving filters, one of them is to export them to text for importing later, the other (more practical) method is to save them to local storage.

^2.3.0 Saving to local storage: First of all, what is local storage? Here's the Wikipedia page on Web Storage. Long story short, its similar to cookies but it allows for better storage size and it doesn't expire. I decided to use it because it's more practical for this type of stuff and I didn't intend to support IE8 or less anyway. If you're having trouble saving to local storage in IE9 or higher you probably have the domain/global quota for local storage set to 0 or something extremely low, if you don't know how to change it, at the risk of sounding like a dick, google it. Or open your about:config and look for local storage/persistent storage or something similar. To save to local storage, click the "Save" button (top right of the filters bar) and then click "Save to local storage". Next time you load up the site your filters should be loaded automatically.

^2.3.1 Export to text: If you're having trouble saving to local storage, or like to delete your persistent storage often, or simply want to copy them over to another browser/computer you can use the export function. To export your filters, click the "Save" button and then click "Export text", now the text area under Export text should have filled up with text, copy that and save it somewhere. You'll be able to load your filters using the import function whenever you like!

^2.4 Load filters: There are two methods you can use for loading filters, one of them is to import them from text and the other (more practical) method is to load them from local storage.

^2.4.0 Loading from local storage: If you want to know more about local storage or are having trouble see: Saving to local storage If you've saved filters to local storage they should automatically load when you open the site. If you want to re-load them however, you can do it by click "Load" (top right of the filters bar) and then "Load from local storage".

^2.4.1 Import from text: The import from text function allows you to load your previously exported filters, see: Export to text To import your filters, click the "Load" button and a text area should open up, now copy your exported filters and paste them in this area, click "Import text" and your filters should load up.


^3. Market Search: Market data for an item is retrieved when you open it, you can also click the Search button to reload anytime you want. If you're getting a "Failed to connect to market." error it's probably because YQL is down or having some trouble connecting to the dota2 market api, try again in a while and if the problem persists please contact me.
There's also preloaded market data for if and when the market can't be loaded, this is also what is used to determine the avaible qualities for items and it's updated at the time of the latest version avaible.


^4. Market Search with Gem/s: Use this to find the cheapest offer for an item with your desired socketed gems and quality.
The ammount of charges you choose will be the minimum found and if the search is successful you will get a filtered link to the items market listing.
The first offer will be the cheapest (for this item quality) that matches your search.
Like with market data, the search is done realtime except for the few seconds it may take to parse it and for you to click the link to the market.

I added this function mostly to be able to look for items that require an spectator gem to unlock styles. Currently the market doesn't let you filter for items with a minimum ammount of charges in a gem, so I do a query requesting all items with the given gems and then return the cheapest one found that matches the minimum desired charges.