Item Filters

From Discord Dungeons Wiki
Jump to navigation Jump to search

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. These commands have a filter: argument which accept an item filter.

Properties

Property Acceptable values Examples
name The item name iron
level The item level level:1


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

Specific to /recipe

These properties can only be used in /recipe:

Property Acceptable values Examples
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

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

  • To get the list off all axe's tool type in items

/items filter:toolType:axe

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.