mirror of
https://github.com/NathanHandley/mod-ah-bot-plus.git
synced 2026-02-07 21:01:59 +00:00
Make auction duration configurable
This commit is contained in:
@@ -39,6 +39,13 @@
|
||||
# from startup complete to first character being able to log in) so a
|
||||
# value greater than a few hundred is not recommended.
|
||||
# Default 75
|
||||
#
|
||||
# AuctionHouseBot.ListingExpireTimeInSecondsMin
|
||||
# AuctionHouseBot.ListingExpireTimeInSecondsMax
|
||||
# Bot-posted auctions will have a listing time between these two values,
|
||||
# and is important to make the auction house feel dynamic in timing
|
||||
# Default 900 (15 minutes) to 86400 (24 hours)
|
||||
# Note: Do not set lower than 15 minutes (900) or higher than 48 hours (172800)
|
||||
###############################################################################
|
||||
|
||||
AuctionHouseBot.DEBUG = 0
|
||||
@@ -47,6 +54,8 @@ AuctionHouseBot.AuctionHouseManagerCyclesBetweenBuyOrSell = 1
|
||||
AuctionHouseBot.EnableSeller = 0
|
||||
AuctionHouseBot.GUIDs = 0
|
||||
AuctionHouseBot.ItemsPerCycle = 75
|
||||
AuctionHouseBot.ListingExpireTimeInSecondsMin = 900
|
||||
AuctionHouseBot.ListingExpireTimeInSecondsMax = 86400
|
||||
|
||||
###############################################################################
|
||||
# AuctionHouseBot.MaxBuyoutPriceInCopper
|
||||
|
||||
@@ -48,6 +48,8 @@ AuctionHouseBot::AuctionHouseBot() :
|
||||
BidVariationHighReducePercent(0),
|
||||
BidVariationLowReducePercent(0.25f),
|
||||
BuyoutBelowVendorVariationAddPercent(0.25f),
|
||||
ListingExpireTimeInSecondsMin(900),
|
||||
ListingExpireTimeInSecondsMax(86400),
|
||||
BuyingBotBuyCandidatesPerBuyCycle(1),
|
||||
BuyingBotAcceptablePriceModifier(1),
|
||||
AHCharactersGUIDsForQuery(""),
|
||||
@@ -933,7 +935,7 @@ void AuctionHouseBot::addNewAuctions(Player* AHBplayer, AHBConfig *config)
|
||||
calculateItemValue(prototype, bidPrice, buyoutPrice);
|
||||
|
||||
// Define a duration
|
||||
uint32 etime = urand(900, 43200);
|
||||
uint32 etime = urand(ListingExpireTimeInSecondsMin, ListingExpireTimeInSecondsMax);
|
||||
|
||||
// Set stack size
|
||||
uint32 stackCount = getStackSizeForItem(prototype);
|
||||
@@ -1199,6 +1201,24 @@ void AuctionHouseBot::InitializeConfiguration()
|
||||
BidVariationHighReducePercent = sConfigMgr->GetOption<float>("AuctionHouseBot.BidVariationHighReducePercent", 0);
|
||||
BidVariationLowReducePercent = sConfigMgr->GetOption<float>("AuctionHouseBot.BidVariationLowReducePercent", 0.25f);
|
||||
BuyoutBelowVendorVariationAddPercent = sConfigMgr->GetOption<float>("AuctionHouseBot.BuyoutBelowVendorVariationAddPercent", 0.25f);
|
||||
ListingExpireTimeInSecondsMin = sConfigMgr->GetOption<uint32>("AuctionHouseBot.ListingExpireTimeInSecondsMin", 900);
|
||||
if (ListingExpireTimeInSecondsMin < 900)
|
||||
{
|
||||
LOG_ERROR("module", "AuctionHouseBot: ListingExpireTimeInSecondsMin was set below 900 (15 min), so setting to 900");
|
||||
ListingExpireTimeInSecondsMin = 900;
|
||||
}
|
||||
ListingExpireTimeInSecondsMax = sConfigMgr->GetOption<uint32>("AuctionHouseBot.ListingExpireTimeInSecondsMax", 86400);
|
||||
if (ListingExpireTimeInSecondsMax > 172800)
|
||||
{
|
||||
LOG_ERROR("module", "AuctionHouseBot: ListingExpireTimeInSecondsMax was set above 172800 (48 hours), so setting to 172800");
|
||||
ListingExpireTimeInSecondsMax = 172800;
|
||||
}
|
||||
if (ListingExpireTimeInSecondsMax < ListingExpireTimeInSecondsMin)
|
||||
{
|
||||
LOG_ERROR("module", "AuctionHouseBot: ListingExpireTimeInSecondsMax was smaller than ListingExpireTimeInSecondsMin, setting to 172800 (48 hours) and 900 (15 min)");
|
||||
ListingExpireTimeInSecondsMin = 900;
|
||||
ListingExpireTimeInSecondsMax = 172800;
|
||||
}
|
||||
|
||||
// Buyer Bot
|
||||
BuyingBotBuyCandidatesPerBuyCycle = sConfigMgr->GetOption<uint32>("AuctionHouseBot.Buyer.BuyCandidatesPerBuyCycle", 1);
|
||||
|
||||
@@ -129,6 +129,8 @@ private:
|
||||
float BidVariationLowReducePercent;
|
||||
float BuyoutBelowVendorVariationAddPercent;
|
||||
uint32 BuyingBotBuyCandidatesPerBuyCycle;
|
||||
uint32 ListingExpireTimeInSecondsMin;
|
||||
uint32 ListingExpireTimeInSecondsMax;
|
||||
float BuyingBotAcceptablePriceModifier;
|
||||
std::string AHCharactersGUIDsForQuery;
|
||||
uint32 ItemsPerCycle;
|
||||
|
||||
Reference in New Issue
Block a user