All Projects → nexus-devs → wow-classic-items

nexus-devs / wow-classic-items

Licence: MIT license
Collection of all WoW Classic and The Burning Crusade Classic items, professions, zones and classes

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to wow-classic-items

Carbonite-Classic
Carbonite + Modules for WoW Classic
Stars: ✭ 44 (+51.72%)
Mutual labels:  wow, wow-classic
ClassicThreatMeter
A simple threat meter for WoW Classic (1.13.2)
Stars: ✭ 37 (+27.59%)
Mutual labels:  wow, wow-classic
FieldGuide
A World of Warcraft: Classic addon for displaying visually when you will learn certain spells.
Stars: ✭ 14 (-51.72%)
Mutual labels:  wow, wow-classic
wowa
WoW addon manager, world of warcraft, addon, lua, command line, cli
Stars: ✭ 58 (+100%)
Mutual labels:  wow
trinitycore
Moved to https://gitlab.com/nicolaw/trinitycore
Stars: ✭ 29 (+0%)
Mutual labels:  wow
strongbox
a World of Warcraft Addon Manager aimed at Linux players
Stars: ✭ 131 (+351.72%)
Mutual labels:  wow
hardhat-contract-sizer
Output Ethereum contract sizes with Hardhat 📐
Stars: ✭ 55 (+89.66%)
Mutual labels:  wow
OregonCore-Modules
Modules made for Oregoncore
Stars: ✭ 18 (-37.93%)
Mutual labels:  wow
packager
Generate an addon zip file from a Git, SVN, or Mercurial checkout.
Stars: ✭ 94 (+224.14%)
Mutual labels:  wow
chat
FiveM Chat System | Works off ESX Framework
Stars: ✭ 32 (+10.34%)
Mutual labels:  wow
CChatNotifier
A WoW Classic addon that can be used to filter chat for custom keywords.
Stars: ✭ 17 (-41.38%)
Mutual labels:  wow-classic
keystone.guru
A website where users can build and find their favorite routes for completing in Mythic Plus dungeons in World of Warcraft®
Stars: ✭ 44 (+51.72%)
Mutual labels:  wow
BetterAlign
A better version of Align for Vanilla WoW
Stars: ✭ 16 (-44.83%)
Mutual labels:  wow
AdvancedInterfaceOptions
WoW Addon that restores access to removed interface options in Legion
Stars: ✭ 43 (+48.28%)
Mutual labels:  wow
dogify
wow very useful
Stars: ✭ 46 (+58.62%)
Mutual labels:  wow
AzeriteUI
Custom user interface suite for WoW. Design and code by Lars Norberg and Daniel Troconis.
Stars: ✭ 0 (-100%)
Mutual labels:  wow
mkm-sdk
Python SDK for Magickartenmarkt API
Stars: ✭ 33 (+13.79%)
Mutual labels:  wow
solidstate-solidity
💠 Upgradeable-first Solidity smart contract development library 💠
Stars: ✭ 264 (+810.34%)
Mutual labels:  wow
DBM-Retail
The ultimate encounter helper (for Retail) to give you fight info that's easy to process at a glance. DBM aims to focus on what's happening to you, and what YOU need to do about it.
Stars: ✭ 194 (+568.97%)
Mutual labels:  wow
MarsAdmin
MarsAdmin v7 is a general interface add-on which will help staff member ingame for trinity core.
Stars: ✭ 13 (-55.17%)
Mutual labels:  wow

WoW Classic Items

npm Discord

This project aims to provide a well-rounded WoW Classic database and to make that available for use in your project, by scraping Wowhead and the official Blizzard API.

Current content:

  • Items (General properties, icons, tooltips, crafting, sources)
  • Professions
  • Zones
  • Classes

Installation

npm install wow-classic-items
or
yarn add wow-classic-items

This package is currently laid out for node.js, as this is what we're using in production. However, if you need the database available for another language, simply read in the JSON yourself from /data/json


Usage

const Database = require('wow-classic-items')

const items = new Database.Items(options)
const professions = new Database.Professions(options)
const zones = new Database.Zones(options)
const classes = new Database.Classes(options)

items is functionally identical to an array and can be used as such:

items[0] // Returns first item
items.filter((i) => i.class === 'Weapon')
items.map((i) => i.itemId)

items.getItemLink(123468) // Returns copy paste-able ingame link
professions.get('Alchemy') // .get returns specified profession

Item Properties

[{
  itemId: 19019, // Unique Item Id
  name: 'Thunderfury, Blessed Blade of the Windseeker', // Display name
  icon: 'inv_sword_39', // Display icon
  class: 'Weapon', // Item class
  subclass: 'Sword', // Item subclass, if available
  sellPrice: 255355, // Price for what this item can be sold to a vendor
  quality: 'Legendary', // Item quality
  itemLevel: 80, // Item level
  requiredLevel: 60, // Required level for this item
  slot: 'One-Hand', // Item slot
  tooltip: [Object], // Item tooltip (see below)
  itemLink: '|cffff8000|Hitem:19019::::::::::0|h[Thunderfury, Blessed Blade of the Windseeker]|h|r', // Copy-pasteable ingame item link
  uniqueName: 'thunderfury-blessed-blade-of-the-windseeker', // Unique item name
  contentPhase: 3, // Content phase in which this item becomes available
  vendorPrice: 1312, // Weighted vendor price if this item can be bought from a vendor
  source: { // Source, either Boss Drop, Rare Drop, Zone Drop or Quest
    category: 'Boss Drop',
    name: 'Some Random Boss', // Only set on Boss Drop
    zone: [209], // Only set on Zone Drop or Boss Drop
    dropChance: 0.33, // Only set on Drops
    quests: [{ questId: 256, name: 'Some Random Quest', faction: 'Horde' }] // Only set on Quest
  }
}, ...]
Tooltip

The tooltip is built the following way:

[{ label: 'Thunderfury, Blessed Blade of the Windseeker', format: 'Legendary' }, ...]

Each label represents one line in the tooltip. The format field specifies if theres a special formatting:

Format Meaning
Quality If there is a quality (Common, Rare, Legendary...) it specifies the corresponding color of the label.
Misc This also refers to the label color: The item level and flavor text.
alignRight This means that the label is aligned inline to the right of the previous label (for example Armor ---- Plate).
indent This means that the label is indented and should be treated as if it was quality Poor (for example in set pieces).

Note that the actual sell price is not included in the tooltip (just the label), so you can format it how you want.


Configuration

Option Default Description
iconSrc 'blizzard' Specifies from which source the item icon URL's are generated. Valid values are 'blizzard', 'wowhead' and false (in this case only the icon name is returned).

Building and Testing

Install Dependencies:

yarn

Create a file called blizzard_token in the root directory and add your Blizzard API Access token

Create directory data/build

mkdir data/build

Build the item database (default output is /data/build/data.json):

yarn build

The professions database is currently handmade.

After that you can validate the build and/or check the changes between yours and the current one with:

yarn validate

Test the item class with:

yarn test


License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].