Gear & Equipment

Equipment

Access every wearable and placeable equipment item in Dinkum, including license and skill requirements and Windmill/Solar Panel compatibility.


Type

Equipment

FieldTypeDescription
idstringStable identifier
namestringDisplay name
imgstringPath to the item's icon, relative to images/
sourcestring[]Where the item is obtained
baseSellPricenumberBase sell price in Dinks
buyPricenumber?Purchase price, if purchasable
descriptionstringWhat the item does
requirementLevelnumber | nullSkill or license level required, or null if none
requirementTypestring?Name of the license or skill required
shinyDiscCountnumber?Shiny Discs required to craft
berkoniumOreCountnumber?Berkonium Ore required to craft
windmillCompatableboolean?Can be powered by a Windmill
solarPanelCompatableboolean?Can be powered by a Solar Panel
inputsResource[]?Other crafting inputs
buyUnitsBuyUnits?'Dinks' or 'Permit Points', when purchasable

Resource is { name: string; img: string; count: number }. See TypeScript integration for the shared Resource and BuyUnits types.


Factory

import { equipment } from 'dinkum-data'

equipment() // all 62 items
equipment(source) // wrap a pre-filtered array

Filters

MethodSignatureDescription
bySourcebySource(source: string)Filter to equipment obtainable from the given source (case-insensitive substring match).
byRequirementTypebyRequirementType(type: string)Filter by the license or skill required to unlock the item (case-insensitive). Items with no requirement never match.
windmillCompatiblewindmillCompatible()Filter to equipment compatible with the Windmill.
solarPanelCompatiblesolarPanelCompatible()Filter to equipment compatible with the Solar Panel.
import { equipment } from 'dinkum-data'

equipment().bySource('Crafting Table').get()
equipment().byRequirementType('Irrigation Licence').get()
equipment().windmillCompatible().get()
equipment().solarPanelCompatible().get()

Sorts

MethodSignatureDefaultDescription
sortByBaseSellPricesortByBaseSellPrice(order?: 'asc' | 'desc')'desc'Sort by base sell price.

Terminal methods

MethodReturnsDescription
.get()Equipment[]All results
.first()Equipment | undefinedFirst result
.find(id)Equipment | undefinedFind by id
.findByName(name)Equipment | undefinedCase-insensitive exact name match
.search(query)Equipment[]Case-insensitive partial name match
.count()numberNumber of results

Examples

import { equipment } from 'dinkum-data'

// Everything craftable at the Crafting Table
equipment().bySource('Crafting Table').get()

// Every Windmill-powered device
equipment().windmillCompatible().get()

// Most valuable equipment
equipment().sortByBaseSellPrice().get()

Next steps

Previous
Weapons
Next
Books