Skip to content

DestinyItemManager/d2-additional-info

Repository files navigation

All Contributors

d2-additional-info

Destiny 2 data generation tool that produces JSON and TypeScript files used by DIM (Destiny Item Manager). This project processes the Destiny 2 manifest to extract and organize game data that isn't readily available through the standard Bungie API.

Prerequisites

  • Node.js >= 22 (check with node --version)
  • pnpm >= 10 (check with pnpm --version)
  • Bungie API Key - Set as API_KEY environment variable (Get one here)

Quick Start

# Install dependencies
pnpm install

# Generate all data files
pnpm generate-data

Usage

Generate All Data

pnpm generate-data

This runs all generate-*.ts scripts in priority order, producing JSON and TypeScript files in the output/ directory.

Generate Specific Files (for debugging)

pnpm generate-data-sub {script-name} {script-name-2} ...

Example:

pnpm generate-data-sub season-info source-info

Note: Script names are without the generate- prefix or .ts extension.

Other Commands

# Lint code
pnpm lint:eslint

# Format code
pnpm fix:prettier

# Build TypeScript
pnpm build

Documentation

Output Files

This project generates JSON and TypeScript data files in the output/ directory. These files provide supplemental Destiny 2 data for use in applications like DIM.

Files marked [DEPRECATED] will be removed in a future version (see CHANGELOG.md for details).

File Description
adept-weapon-hashes.json Array of all Adept weapon hashes
bad-vendors.json Vendor hashes missing an associated token hash
bright-engram.json Season hash to Bright Engram hash mappings
catalyst-triumph-icons.json Catalyst triumph hash to improved icon mappings
craftable-hashes.json Array of all craftable weapon hashes
crafting-enhanced-intrinsics.ts Set of all enhanced intrinsic perk hashes with labels
crafting-mementos.json Memento source to memento hash array mappings
d2-event-info.ts [DEPRECATED] Event information mappings (see EVENTS.md)
d2-event-info-v2.ts Event information mappings (see EVENTS.md)
d2-font-glyphs.ts Enum of Destiny 2 font glyphs
d2-season-info.ts Season information and metadata
d2-trials-objectives.json Trials objective and passage hash mappings
deprecated-mods.json Array of all deprecated mod hashes
DestinySymbols.woff2 Web font containing Destiny glyphs (see d2-font-glyphs.ts for enum)
dummy-catalyst-mapping.json Dummy catalyst to actual catalyst hash mappings for older catalyst socket system (where catalysts auto-apply)
empty-plug-hashes.ts Set of "empty" plug hashes (e.g., No Shader, No Mod Inserted)
energy-mods-change.json Armor 2.0 energy capacity mod lookup table for changing elements
energy-mods.json Armor 2.0 energy capacity mod lookup table for same element
engram-rarity-icons.json Engram rarity to icon path mappings
events.json Item hash to event hash mappings (see EVENTS.md)
exotic-to-catalyst-record.json Exotic weapon hash to catalyst record hash mappings
exotics-with-catalyst.ts Array of exotic weapon hashes with catalysts
extended-breaker.json Item hash to breaker type hash mappings for items with breaker properties only identified by text
extended-ich.json Weapon hash to negative item category hash mappings (separates slug/pellet shotguns and breech/heavy grenade launchers)
focusing-item-outputs.json Fake vendor focusing item hash to output item hash mappings
generated-enums.ts General-purpose Destiny 2 enums
ghost-perks.json Outdated ghost perk listing from before Ghost 2.0
item-def-workaround-replacements.json [DEPRECATED] Dummy postmaster weapon to actual hash mappings (last used in Dawn)
legacy-triumphs.json Array of all legacy triumph hashes
lightcap-to-season.json Light cap to season number mappings
masterworks-with-cond-stats.json Array of masterwork plugs with conditional stats
missing-faction-tokens.json [DEPRECATED] Previously missing faction tokens
missing-source-info.ts [DEPRECATED] Sources and item hashes that were missing source hash
mods-with-bad-descriptions.json Mods with inaccurate descriptions by category
mutually-exclusive-mods.json Armor mod hash to mutual exclusion category mappings (for "Similar mod already applied" behavior)
objective-richTexts.ts Destiny rich text mappings
powerful-rewards.json Array of item hashes containing powerful rewards
pursuits.json Pursuit to completion criteria mappings
raid-mod-plug-category-hashes.json Array of raid mod plug category hashes
reduced-mod-cost-hashes.ts Artifact mod to reduced-cost variant mappings
season-tags.json Season name (short) to season number mappings
season-to-source.json [DEPRECATED] Source to season mappings
source-to-season-v2.json Source to season mappings
seasonal-challenges.json Seasonal challenge to completion criteria mappings
seasonal-armor-mods.json Armor mods only available in certain seasons (in addition to reduced-cost versions)
seasons_backup.json [DEPRECATED] 1:1 item hash to season mappings
seasons.json Item hash to season mappings (excludes items with season deducible from watermarks or sources)
source-info.ts [DEPRECATED] Tag to source mappings
source-info-v2.ts Tag to source mappings
sources.json Source hash to source description mappings
special-vendors-strings.json Vendors with specific strings for asset finding, filtering, etc.
spider-mats.json Array of materials Spider (now Rahool) used to sell
spider-purchaseables-to-mats.json Vendor item hash to actual item hash mappings for Spider (now Rahool)
subclass-plug-category-hashes.json Array of subclass plug category hashes
symbol-name-sources.ts Well-known Destiny 2 font symbols with localized name retrieval from definitions
trait-to-enhanced-trait.json Normal trait to enhanced trait hash mappings
universal-ornament-plugsethashes.json Array of universal ornament PlugSet hashes (check canInsert instead of enabled for availability)
universal-ornament-aux-sets.json Class type to universal ornament set mappings where set grouping cannot be derived from collections
unreferenced-collections-items.json Collection entry to additional covered item mappings
voice-dim-valid-perks.json Array of valid perk names for use in VoiceDIM
watermark-to-event.json Watermark icon to event mappings (see EVENTS.md)
watermark-to-season.json Watermark icon to season mappings
weapon-from-quest.json Weapon hash to initial quest step hash mappings

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Rob Jones

🐛 💻 🔣 🤔 🚧 👀

Ryan Rushton

💻 🔣 🤔 🚧 👀

Ben Hollis

💻 🔣 🤔 🚧 👀

robojumper

💻 🔣 🤔 🚧 👀

Vivek Hari

💻 🔣 🤔

Tom Chapman

💻 🔣

Jakosaur

🔣

Abdul Sinusi

💻 🔣

This project follows the all-contributors specification. Contributions of any kind welcome!

About

provide additional manifest data for DIM

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 27