Implements two standard features of the Auction House.
* GetAll scan, retrieves all auctions and sends them in a single packet.
There's a limitation on how often a player can do this (Max 55000 items)
* Search throttling. For normal searches, the server can send a time
in milliseconds to the client, the client will wait that long between
searches. Delay set in config
Closes#16469
(cherry picked from commit 3aaeb57405)
- Option to preload basemaps upon server load (BaseMapLoadAllGrids)
- Option to preload instance maps upon map load (InstanceMapLoadAllGrids)
- Change default logging to only log mmap errors to server log
- Add new public to map to load all cells in map
- change debug loadcells to use new function instead
(cherry picked from commit 971f4ccab8)
* Fixes issues when building shared libraries
(prevents gcc and clang from providing several instance)
* Also instantiate the database worker pools in DatabaseEnv.cpp now.
* Adds CMAKE_COMMAND and CMAKE_BINARY_DIR to revision_data.h
* Move the source and mysql exe path handling out of the DBUpdater.
* Make some Config methods const for correctness.
* Remove C & CXX flags from revision_data.h
(was unused and didn't capture all cxx vars)
* Reorder the link order to prevent `ld` from ignoring the file
* Ref #15671
Scripts/Duel: implement duel reset of health and mana and improve duel reset
(cherry picked from commit a1150ce20f)
Conflicts:
src/server/game/Spells/SpellHistory.cpp
* Seems like this feature is stable enough to enable it by default
since the last missing bugs were fixed some months ago.
* The database updater is the preferred method to update the databases
as described in the wiki: http://collab.kpsn.org/display/tc/Databases+Installation
Core/Player rewritten duel CD reset system
(cherry picked from commit 4204805d47)
Conflicts:
src/server/game/Spells/SpellHistory.cpp
src/server/game/Spells/SpellHistory.h
src/server/game/World/World.h
* Changed packet structures to mirror client names
* Simplified ToString Building
* Removed deprecated structures
World: Cleaned up duplicate realm info 'realm' and 'realmHandle' variables (realmHandle was removed, that data is fully contained in realm)
Apply an exponential formula to define the chance to bid/buyout an auction depending on auction price and item price ratio. The formula can be adjusted changing the new AuctionHouseBot.Buyer.ChanceFactor config parameter
Chance = 100 ^ (1 + (1 - (auction_price / item_price) / k)
k is the config parameter AuctionHouseBot.Buyer.ChanceFactor, the higher the number the higher chance to buy overpriced auctions.
(cherry picked from commit 177b6319d1)
Conflicts:
src/server/game/AuctionHouseBot/AuctionHouseBotBuyer.cpp
Core/Build: Renamed Revision.h to GitRevision.h to avoid compile failure when old revision.h file is present
(cherry picked from commit 360cc93357)
Conflicts:
src/server/authserver/Main.cpp
src/server/database/Updater/DBUpdater.cpp
src/server/game/Entities/Player/Player.cpp
src/server/game/World/World.cpp
src/server/shared/PrecompiledHeaders/sharedPCH.h
src/server/worldserver/Main.cpp