Skip to content

World of Warcraft: Classic Addon that optimizes profession leveling using TradeSkillMaster price data and an efficient brute force algorithm.

License

Notifications You must be signed in to change notification settings

KevinTyrrell/WoWProfessionOptimizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



WoWProfessionOptimizer

World of Warcraft: Classic Addon that optimizes profession leveling using TSM Price Data.

GPL-3 License

IntroductionGuide GenerationFAQDownloadLicense

screenshot

Introduction

WoWProfessionOpimizer is a powerful add-on for World of Warcraft: Classic. Its primary goal is to revolutionize the traditional approach to leveling professions by replacing static profession leveling guides. The add-on generates guides dynamically using an optimized brute force algorithm. The guides are integrated into the game, allowing for a customizable experience.

Guide Generation

Users must/may provide the following information before generating a guide:

  • Profession - e.g. [Engineering]
  • Skill Start / Target - e.g. 1 to 450
  • Recipe Sources - e.g. Trainer✅/Vendor✅/Drop❌/Auction House❌
  • Crafts Ban / Limits - Prevent or restrict craft-count of certain crafting recipes
  • Crafts Mandate - Enforce certain crafts to be made efficiently along the way
  • Bi-Product Disposal - per-item specification of what to do with un-needed items
    • e.g. [Deadly Blunderbus]: Disenchant❌/Auction House:✅/Vendor:✅
    • Limitations on auction house - Limit Num Sold or Diminishing Returns

FAQ


Q: Why are static guides undesirable?

A: As most people use the same popular guides, this drives up demand on a small subset of items in the game. For example, a recipe using [Aquamarine] may have been originally economical, but as all profession levelers dog-pile on that one item, it causes prices to balloon, no longer being the cheapest route to level. More-over, the guides often remain static for years, and assume generalizations across servers. Most importantly, static guides do not factor in profits made from crafts while leveling.


Q: How does the add-on know prices of items?

A: TSM (TradeSkillMaster) provides nearly real-time information on auction house, vendor, and disenchanting prices for every non-soulbound item in the game. Ensure TSM and TSM_AppHelper are installed and loaded before using this add-on.


Q: How does the add-on handle RNG craft skill-ups?

A: WoWProfessionOptimizer handles random skill-ups by computing the average number of crafts needed to ascend one skill level. WoWWiki's Profession Page dictates the chance for a skill as the following formula:

chance = (greySkill - yourSkill) / (greySkill - yellowSkill)

[Unstable Trigger] has a skill breakdown of { 200 200 220 240 }. If you had a skill level of 235 then the craft would be green. Plugging this into the formula would yield the following:

chance = (240 - 235) / (240 - 220) // 0.25 or 25%

This means you would have only a 25% chance of getting a skill-up from crafting an [Unstable Trigger] at 235. The add-on takes the inverse of this 1 / 0.25 => 4, indicating four crafts of [Unstable Trigger] are needed to reach 236.


Q: How does the guide generation algorithm work?

A: Brute force - Backtracking - Pruning. At each skill level, the guide will look over all crafts that generate a skill increase. It will pick one item, craft it until a skill-up is achieved, and tally the cost into a gold-spent sum. If the crafted item is a bi-product, it is sold according to the user's specifications, otherwise it is kept for later. If the current gold-tally exceeds a known-best route, the algorithm backtracks one step, recursively. Routes which show no promise are pruned prematurely to save on run-time complexity.


Download

You can download the latest release on the 'Releases' page.

Note For manual installation, ensure your path to the add-on's TOC (Table of Contents) is similar to as follows:

C:/Program Files (x86)/World of Warcraft/_classic_/Interface/AddOns/WoWProfessionOptimizer/WoWProfessionOptimizer.toc

Support

Donate with PayPal

License

GNU General Public License version 3


GitHub @KevinTyrrell  ·  Curseforge @hatefiend  ·  Wago @hatefiend  ·  Discord @hatefiend

About

World of Warcraft: Classic Addon that optimizes profession leveling using TradeSkillMaster price data and an efficient brute force algorithm.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published