mirror of
https://github.com/NathanHandley/mod-ah-bot-plus.git
synced 2026-01-18 03:15:43 +00:00
Add price multipliers
This commit is contained in:
@@ -67,7 +67,7 @@ AuctionHouseBot.Neutral.BidsPerInterval = 1
|
||||
###############################################################################
|
||||
# AuctionHouseBot.ListProportion.*
|
||||
# Determines how many of the listings, proportionally, show up as new auctions
|
||||
# "0" will mean the item never shows up
|
||||
# "0" will mean the item never shows up. Values must be whole numbers.
|
||||
# Defaults: Consumable: 2
|
||||
# Container: 2
|
||||
# Weapon: 6
|
||||
@@ -101,6 +101,39 @@ AuctionHouseBot.ListProportion.Key = 1
|
||||
AuctionHouseBot.ListProportion.Misc = 0
|
||||
AuctionHouseBot.ListProportion.Glyph = 2
|
||||
|
||||
###############################################################################
|
||||
# AuctionHouseBot.PriceMultiplier.*
|
||||
# Category/Quality-level modifier values for the prices of items, which can be
|
||||
# represented as decimal numbers, and must be > 0. Keep in mind that
|
||||
# the pricing algorithm has many steps to it and this is just a tuning
|
||||
# modifier.
|
||||
###############################################################################
|
||||
|
||||
AuctionHouseBot.PriceMultiplier.Category.Consumable = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Container = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Weapon = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Gem = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Armor = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Reagent = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Projectile = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.TradeGood = 2
|
||||
AuctionHouseBot.PriceMultiplier.Category.Generic = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Recipe = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Quiver = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Quest = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Key = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Misc = 1
|
||||
AuctionHouseBot.PriceMultiplier.Category.Glyph = 1
|
||||
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Poor = 1
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Normal = 1
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Uncommon = 1.8
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Rare = 1.9
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Epic = 2.1
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Legendary = 3
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Artifact = 3
|
||||
AuctionHouseBot.PriceMultiplier.Quality.Heirloom = 3
|
||||
|
||||
###############################################################################
|
||||
# AuctionHouseBot.RandomStackRatio.*
|
||||
# Used to determine how often a stack of the class will be single or randomly-size stacked when posted
|
||||
|
||||
@@ -113,12 +113,7 @@ void AuctionHouseBot::calculateItemValue(ItemTemplate const* itemProto, uint64&
|
||||
double powValue = 1.8;
|
||||
switch (itemProto->Quality)
|
||||
{
|
||||
case ITEM_QUALITY_UNCOMMON: powValue = 1.8; break;
|
||||
case ITEM_QUALITY_RARE: powValue = 1.9; break;
|
||||
case ITEM_QUALITY_EPIC: powValue = 2.1; break;
|
||||
default: break;
|
||||
}
|
||||
uint32 minPossiblePrice = (uint32)(pow((double)itemProto->ItemLevel, powValue));
|
||||
uint32 minPossiblePrice = (uint32)(pow((double)itemProto->ItemLevel, qualityPriceMultplier));
|
||||
if (minPossiblePrice > outBuyoutPrice)
|
||||
{
|
||||
outBuyoutPrice = urand(minPossiblePrice, minPossiblePrice * 1.1);
|
||||
@@ -133,14 +128,7 @@ void AuctionHouseBot::calculateItemValue(ItemTemplate const* itemProto, uint64&
|
||||
}
|
||||
|
||||
// Multiply the price based on quality
|
||||
switch (itemProto->Quality)
|
||||
{
|
||||
case ITEM_QUALITY_UNCOMMON: outBuyoutPrice *= 2; break;
|
||||
case ITEM_QUALITY_RARE: outBuyoutPrice *= 5; break;
|
||||
case ITEM_QUALITY_EPIC: outBuyoutPrice *= 8; break;
|
||||
case ITEM_QUALITY_LEGENDARY: outBuyoutPrice *= 13; break;
|
||||
default: break;
|
||||
}
|
||||
outBuyoutPrice *= qualityPriceMultplier;
|
||||
|
||||
// If a vendor sells this item, make the price at least that high
|
||||
if (itemProto->SellPrice > outBuyoutPrice)
|
||||
|
||||
@@ -168,6 +168,29 @@ private:
|
||||
uint32 ListProportionKey;
|
||||
uint32 ListProportionMisc;
|
||||
uint32 ListProportionGlyph;
|
||||
double PriceMultiplierCategoryConsumable;
|
||||
double PriceMultiplierCategoryContainer;
|
||||
double PriceMultiplierCategoryWeapon;
|
||||
double PriceMultiplierCategoryGem;
|
||||
double PriceMultiplierCategoryArmor;
|
||||
double PriceMultiplierCategoryReagent;
|
||||
double PriceMultiplierCategoryProjectile;
|
||||
double PriceMultiplierCategoryTradeGood;
|
||||
double PriceMultiplierCategoryGeneric;
|
||||
double PriceMultiplierCategoryRecipe;
|
||||
double PriceMultiplierCategoryQuiver;
|
||||
double PriceMultiplierCategoryQuest;
|
||||
double PriceMultiplierCategoryKey;
|
||||
double PriceMultiplierCategoryMisc;
|
||||
double PriceMultiplierCategoryGlyph;
|
||||
double PriceMultiplierQualityPoor;
|
||||
double PriceMultiplierQualityNormal;
|
||||
double PriceMultiplierQualityUncommon;
|
||||
double PriceMultiplierQualityRare;
|
||||
double PriceMultiplierQualityEpic;
|
||||
double PriceMultiplierQualityLegendary;
|
||||
double PriceMultiplierQualityArtifact;
|
||||
double PriceMultiplierQualityHeirloom;
|
||||
|
||||
AHBConfig AllianceConfig;
|
||||
AHBConfig HordeConfig;
|
||||
|
||||
Reference in New Issue
Block a user