Item Filters: Difference between revisions

From Discord Dungeons Wiki
Jump to navigation Jump to search
(slash commands :()
(Use list instead of brs)
Line 62: Line 62:




Notes:<br>
Notes:
Not all items can use all properties. For example, not all items have an <code>ore</code> field, so if you search <code>/items filter:ore:</code>, any items without <code>ore</code> data will be filtered out.<br>
*Not all items can use all properties. For example, not all items have an <code>ore</code> field, so if you search <code>/items filter:ore:</code>, any items without <code>ore</code> data will be filtered out.
To search for items that '''don't''' have a property, you can use <code>undefined</code>, like <code>/items filter:donate:undefined</code>.<br>
*To search for items that '''don't''' have a property, you can use <code>undefined</code>, like <code>/items filter:donate:undefined</code>.
The left-hand side of the filter is case-sensitive, so itemBoost will work and itemboost won't.<br>
*The left-hand side of the filter is case-sensitive, so itemBoost will work and itemboost won't.
Searches use substrings, so if you search <code>name:log</code>, it'll give all items with "log" in the name.<br>
*Searches use substrings, so if you search <code>name:log</code>, it'll give all items with "log" in the name.
If you want to search for multiple words, simply remove the spaces like <code>name:maplelog</code>.<br>
*If you want to search for multiple words, simply remove the spaces like <code>name:maplelog</code>.
If you leave the value (the right side of the <code>:</code>) empty, all items with the property will be matched.<br>
*If you leave the value (the right side of the <code>:</code>) empty, all items with the property will be matched.
If a value is a number, like level, you can use <, <=, >, and >= to do inequality searches like <code>level:<:100 cost:>:0</code>.<br>
*If a value is a number, like level, you can use <, <=, >, and >= to do inequality searches like <code>level:<:100 cost:>:0</code>.
If <code>--raw</code> is used in a recipe search, all the properties will reflect the raw recipes rather than the normal recipes, so, <code>uses:ironingot --raw</code> will return nothing as the raw recipes only use <code>ironore</code>.
*If <code>--raw</code> is used in a recipe search, all the properties will reflect the raw recipes rather than the normal recipes, so, <code>uses:ironingot --raw</code> will return nothing as the raw recipes only use <code>ironore</code>.

Revision as of 13:52, 4 November 2022

Item filters can be used to reduce the size of a list of items. Current commands that support them are /items, /inv, /g inv and /recipe.

Examples:

  • To get the list of buyable weapons under level 100:
/items filter:type:weapon cost:>:0 level:<=:100
  • To get all the ores in your inventory:
/inv view filter:type:ore
  • To get items in your inv that give boosts to attributes:
/inv view filter:attributes:
  • To get the list of non-donor items:
/items filter:donate:undefined donator:undefined
  • To get (most of) the list of donor items:
/items filter:donate:true
  • To get all the recipes that use coal anywhere in the crafting tree:
/recipe filter:uses:coal --raw

Usable Properties:

  • name (The item name)
  • level (The item level)
  • cost (The buying price of the item; unbuyable items have a cost of -1)
  • type (The type of the item shown in /items)
  • toolType (The type of tools shown in /items)
  • sell (The selling price of the item)
  • sellable (true or false value showing if an item can be sold)
  • tradable (true or false value showing if an item can be traded)
  • desc (The item's description)
  • forage (true or false value of if the item can be foraged)
  • foragedata (Either Object or undefined; same as forage but includes Magic Saplings)
  • ore (Either Object or undefined; same items as type:ore)
  • fish (Either Object or undefined; same as type:fish)
  • plural (The plural name of the object)
  • prefix (The grammatical prefix of the object; usually a or an)
  • attributes (Either Object or undefined; whether or not the object boosts any attributes)
  • def (The percentage of damage blocked by the armor (or undefined))
  • id (The ID of the item; normally a number. Meta items are m:number)
  • itemBoost (The amount of extra items received when doing sides with this tool)
  • skillXp (The static boost to skill xp granted by Jades in tools)
  • gems (The enchantments on an item; is a string like JJ for 2 Jades)
  • sockets (The number of gem sockets on an item: 1, 2, or undefined)
  • enchants (An array of enchantments in the form [sx;4,as;10] (don't try to use this; just use gems))
  • suffix (The end of the name on meta items, such is 2SRR+23)

Additional properties specific to #!recipe:

  • canCraft (true or false value showing if you're allowed to craft that item; the gray items in the list are false)
  • hasMats (true or false value showing if you have the materials to craft that item right then)
  • level (Specifies the crafting level instead of the item level)
  • uses (Item name or item ID used in the crafting recipe; this isn't a property so much as a special search)


Notes:

  • Not all items can use all properties. For example, not all items have an ore field, so if you search /items filter:ore:, any items without ore data will be filtered out.
  • To search for items that don't have a property, you can use undefined, like /items filter:donate:undefined.
  • The left-hand side of the filter is case-sensitive, so itemBoost will work and itemboost won't.
  • Searches use substrings, so if you search name:log, it'll give all items with "log" in the name.
  • If you want to search for multiple words, simply remove the spaces like name:maplelog.
  • If you leave the value (the right side of the :) empty, all items with the property will be matched.
  • If a value is a number, like level, you can use <, <=, >, and >= to do inequality searches like level:<:100 cost:>:0.
  • If --raw is used in a recipe search, all the properties will reflect the raw recipes rather than the normal recipes, so, uses:ironingot --raw will return nothing as the raw recipes only use ironore.