38#include <unordered_map>
543 using Print = void(*)(
void*, std::string_view);
565 static World* instance();
571 void AddInstanceSocket(std::weak_ptr<WorldSocket> sock,
uint64 connectToKey);
572 void SendAutoBroadcast();
573 bool RemoveSession(
uint32 id);
575 void UpdateMaxSessionCounters();
590 m_MaxPlayerCount = std::max(m_MaxPlayerCount, m_PlayerCount);
597 bool IsClosed()
const;
600 void SetClosed(
bool val);
605 void LoadDBAllowedSecurityLevel();
612 typedef std::list<WorldSession*>
Queue;
625 void SetMotd(std::string motd);
627 std::vector<std::string>
const& GetMotd()
const;
648 return lvl > 60 ? 300 + ((lvl - 60) * 75) / 10 : lvl * 5;
651 bool SetInitialWorldSettings();
652 void LoadConfigSettings(
bool reload =
false);
654 void SendWorldText(
uint32 string_id, ...);
655 void SendGlobalText(
char const* text,
WorldSession* self);
656 void SendGMText(
uint32 string_id, ...);
657 void SendServerMessage(
ServerMessageType messageID, std::string_view stringParam = {},
Player const* player =
nullptr);
666 void ShutdownServ(
uint32 time,
uint32 options,
uint8 exitcode,
const std::string& reason = std::string());
668 void ShutdownMsg(
bool show =
false,
Player* player =
nullptr,
const std::string& reason = std::string());
670 static void StopNow(
uint8 exitcode) { m_stopEvent =
true; m_ExitCode = exitcode; }
675 void UpdateSessions(
uint32 diff);
685 m_bool_configs[index] = value;
698 m_float_configs[index] = value;
711 m_int_configs[index] = value;
737 void LoadPersistentWorldVariables();
740 bool IsPvPRealm()
const;
741 bool IsFFAPvPRealm()
const;
745 BanReturn BanAccount(
BanMode mode, std::string
const& nameOrIP, std::string
const& duration, std::string
const& reason, std::string
const& author);
746 BanReturn BanAccount(
BanMode mode, std::string
const& nameOrIP,
uint32 duration_secs, std::string
const& reason, std::string
const& author);
747 bool RemoveBanAccount(
BanMode mode, std::string
const& nameOrIP);
748 BanReturn BanCharacter(std::string
const& name, std::string
const& duration, std::string
const& reason, std::string
const& author);
749 bool RemoveBanCharacter(std::string
const& name);
762 void ProcessCliCommands();
765 void ForceGameEventUpdate();
767 void UpdateRealmCharCount(
uint32 accountId);
772 void LoadDBVersion();
775 void LoadAutobroadcasts();
777 void UpdateAreaDependentAuras();
779 bool IsBattlePetJournalLockAcquired(
ObjectGuid battlenetAccountGuid);
783 void ResetEventSeasonalQuests(
uint16 event_id, time_t eventStartTime);
787 void RemoveOldCorpses();
788 void TriggerGuidWarning();
789 void TriggerGuidAlert();
794 void SetForcedWarModeFactionBalanceState(
TeamId team,
int32 reward = 0);
795 void DisableForcedWarModeFactionBalanceState();
798 void _UpdateGameTime();
803 void InitQuestResetTimes();
804 void CheckScheduledResetTimes();
805 void InitCurrencyResetTime();
807 void ResetWeeklyQuests();
808 void ResetMonthlyQuests();
810 void InitRandomBGResetTime();
811 void InitCalendarOldEventsDeletionTime();
812 void InitGuildResetTime();
813 void ResetRandomBG();
814 void CalendarDeleteOldEvents();
815 void ResetGuildCap();
816 void ResetCurrencyWeekCap();
890 void ProcessLinkInstanceSocket(std::pair<std::weak_ptr<WorldSocket>,
uint64> linkInfo);
904 void ProcessQueryCallbacks();
906 void SendGuidWarning();
907 void DoGuidWarningRestart();
908 void DoGuidAlertRestart();
922 void UpdateWarModeRewardValues();
929#define sWorld World::instance()
std::shared_ptr< PreparedResultSet > PreparedQueryResult
std::optional< T > Optional
Optional helper class to wrap optional values within.
BanReturn
Ban function return codes.
BanMode
Ban function modes.
Player session in the World.
time_t m_NextWeeklyQuestReset
static PersistentWorldVariable const NextGuildDailyResetTimeVarId
uint32 getIntConfig(WorldIntConfigs index) const
Get a server configuration element (see #WorldConfigs)
LocaleConstant m_defaultDbcLocale
static uint8 GetExitCode()
static int32 m_visibility_notify_periodInBG
static int32 m_visibility_notify_periodInInstances
static std::atomic< uint32 > m_worldLoopCounter
uint32 GetCleaningFlags() const
static PersistentWorldVariable const NextOldCalendarEventDeletionTimeVarId
AccountTypes m_allowedSecurityLevel
void SetAllowMovement(bool allow)
Allow/Disallow object movements.
static float GetMaxVisibleDistanceInInstances()
static std::atomic< bool > m_stopEvent
static int32 GetVisibilityNotifyPeriodOnContinents()
static PersistentWorldVariable const NextMonthlyQuestResetTimeVarId
void SetNewCharString(std::string const &str)
Set the string for new characters (first login)
LockedQueue< WorldSession * > addSessQueue
static float m_MaxVisibleDistanceInArenas
static float m_MaxVisibleDistanceInBG
QueryCallbackProcessor _queryProcessor
static PersistentWorldVariable const CharacterDatabaseCleaningFlagsVarId
std::mutex _guidAlertLock
uint32 GetQueuedSessionCount() const
uint64 GetUInt64Config(WorldInt64Configs index) const
uint32 GetMaxQueuedSessionCount() const
Get the maximum number of parallel sessions on the server since last reboot.
static PersistentWorldVariable const NextCurrencyResetTimeVarId
void setRate(Rates rate, float value)
Set a server rate (see Rates)
static PersistentWorldVariable const NextDailyQuestResetTimeVarId
uint32 m_maxActiveSessionCount
static float GetMaxVisibleDistanceInBG()
time_t GetNextRandomBGResetTime() const
uint32 GetShutDownTimeLeft() const
time_t m_NextDailyQuestReset
static int32 GetVisibilityNotifyPeriodInArenas()
bool IsShuttingDown() const
Are we in the middle of a shutdown?
time_t m_NextCurrencyReset
std::list< WorldSession * > Queue
LocaleConstant GetAvailableDbcLocale(LocaleConstant locale) const
time_t m_NextRandomBGReset
float getRate(Rates rate) const
Get a server rate (see Rates)
void setFloatConfig(WorldFloatConfigs index, float value)
Set a server configuration element (see #WorldConfigs)
static PersistentWorldVariable const NextGuildWeeklyResetTimeVarId
time_t mail_timer_expires
bool getAllowMovement() const
std::unordered_multimap< ObjectGuid, WorldSession * > m_sessionsByBnetGuid
bool getBoolConfig(WorldBoolConfigs index) const
Get a server configuration element (see #WorldConfigs)
static PersistentWorldVariable const NextBGRandomDailyResetTimeVarId
uint32 GetActiveSessionCount() const
DisconnectMap m_disconnects
time_t m_NextCalendarOldEventsDeletionTime
uint32 m_availableDbcLocaleMask
time_t GetNextWeeklyQuestsResetTime() const
std::string _guidWarningMsg
AutobroadcastContainer m_Autobroadcasts
static int32 m_visibility_notify_periodInArenas
AccountTypes GetPlayerSecurityLimit() const
Security level limitations.
uint32 GetPlayerAmountLimit() const
std::string _alertRestartReason
static PersistentWorldVariable const NextWeeklyQuestResetTimeVarId
std::string const & GetDataPath() const
Get the path where data (dbc, maps) are stored on disk.
uint16 GetConfigMaxSkillValue() const
Get the maximum skill level a player can reach.
static void StopNow(uint8 exitcode)
void IncreasePlayerCount()
Increase/Decrease number of players.
static int32 GetVisibilityNotifyPeriodInBG()
void SetCleaningFlags(uint32 flags)
char const * GetDBVersion() const
void setIntConfig(WorldIntConfigs index, uint32 value)
Set a server configuration element (see #WorldConfigs)
float getFloatConfig(WorldFloatConfigs index) const
Get a server configuration element (see #WorldConfigs)
void DecreasePlayerCount()
LocaleConstant GetDefaultDbcLocale() const
static float m_MaxVisibleDistanceOnContinents
std::string m_newCharString
uint32 GetActiveAndQueuedSessionCount() const
static int32 GetVisibilityNotifyPeriodInInstances()
static float m_MaxVisibleDistanceInInstances
std::unordered_map< uint32, time_t > DisconnectMap
uint32 GetMaxActiveSessionCount() const
uint32 GetMaxPlayerCount() const
uint32 GetPlayerCount() const
Get number of players.
std::unordered_map< std::string, int32 > m_worldVariables
std::unordered_map< uint8, Autobroadcast > AutobroadcastContainer
void QueueCliCommand(CliCommandHolder *commandHolder)
time_t m_NextMonthlyQuestReset
std::vector< std::string > _motd
uint32 m_maxQueuedSessionCount
static int32 m_visibility_notify_periodOnContinents
time_t GetNextDailyQuestsResetTime() const
Next daily quests and random bg reset time.
void SetPlayerAmountLimit(uint32 limit)
Active session server limit.
LockedQueue< std::pair< std::weak_ptr< WorldSocket >, uint64 > > _linkSocketQueue
static float GetMaxVisibleDistanceOnContinents()
void setBoolConfig(WorldBoolConfigs index, bool value)
Set a server configuration element (see #WorldConfigs)
std::string const & GetNewCharString() const
Get the string for new characters (first login)
static float GetMaxVisibleDistanceInArenas()
LockedQueue< CliCommandHolder * > cliCmdQueue
SessionMap const & GetAllSessions() const
void commandFinished(void *, bool)
WorldBoolConfigs
Configuration elements.
std::unordered_map< uint32, WorldSession * > SessionMap
WorldTimers
Timers for different object refresh rates.
TC_GAME_API uint32 GetVirtualRealmAddress()
@ SERVER_MSG_SHUTDOWN_TIME
@ SERVER_MSG_INSTANCE_SHUTDOWN_TIME
@ SERVER_MSG_BG_SHUTDOWN_TIME
@ SERVER_MSG_INSTANCE_RESTART_TIME
@ SERVER_MSG_SHUTDOWN_CANCELLED
@ SERVER_MSG_TICKET_SERVICED_SOON
@ SERVER_MSG_WAIT_TIME_UNAVAILABLE
@ SERVER_MSG_CONTENT_READY
@ SERVER_MSG_RESTART_CANCELLED
@ SERVER_MSG_TICKET_WAIT_TIME
@ SERVER_MSG_BG_RESTART_TIME
@ SERVER_MSG_RESTART_TIME
@ CONFIG_AUTOBROADCAST_CENTER
@ CONFIG_CURRENCY_MAX_JUSTICE_POINTS
@ CONFIG_ARENA_START_MATCHMAKER_RATING
@ CONFIG_RESPAWN_RESTARTQUIETTIME
@ CONFIG_CORPSE_DECAY_ELITE
@ CONFIG_MAX_INSTANCES_PER_HOUR
@ CONFIG_GUILD_EVENT_LOG_COUNT
@ CONFIG_ARENA_START_RATING
@ CONFIG_SOCKET_TIMEOUTTIME
@ CONFIG_MAX_OVERSPEED_PINGS
@ CONFIG_WARDEN_NUM_LUA_CHECKS
@ CONFIG_NO_GRAY_AGGRO_BELOW
@ CONFIG_CHARDELETE_METHOD
@ CONFIG_SESSION_ADD_DELAY
@ CONFIG_MIN_CREATURE_SCALED_XP_RATIO
@ CONFIG_CORPSE_DECAY_OBSOLETE
@ CONFIG_CHARACTER_CREATING_DISABLED_CLASSMASK
@ CONFIG_WARDEN_CLIENT_BAN_DURATION
@ CONFIG_CLIENTCACHE_VERSION
@ CONFIG_TOLBARAD_BATTLETIME
@ CONFIG_DAILY_QUEST_RESET_TIME_HOUR
@ CONFIG_CURRENCY_RESET_DAY
@ CONFIG_QUEST_LOW_LEVEL_HIDE_DIFF
@ CONFIG_CREATURE_PICKPOCKET_REFILL
@ CONFIG_BG_REWARD_WINNER_CONQUEST_FIRST
@ CONFIG_SKILL_CHANCE_ORANGE
@ CONFIG_RESPAWN_DYNAMICMODE
@ CONFIG_CHARACTER_CREATING_MIN_LEVEL_FOR_EVOKER
@ CONFIG_CHATFLOOD_MUTE_TIME
@ CONFIG_STRICT_PET_NAMES
@ CONFIG_CHARACTER_CREATING_DISABLED
@ CONFIG_TOLBARAD_PLR_MIN_LVL
@ CONFIG_CURRENCY_START_APEXIS_CRYSTALS
@ CONFIG_QUEST_HIGH_LEVEL_HIDE_DIFF
@ CONFIG_INTERVAL_CHANGEWEATHER
@ CONFIG_PRESERVE_CUSTOM_CHANNEL_INTERVAL
@ CONFIG_PRESERVE_CUSTOM_CHANNEL_DURATION
@ CONFIG_GM_WHISPERING_TO
@ CONFIG_TOLBARAD_RESTART_AFTER_CRASH
@ CONFIG_SKILL_CHANCE_SKINNING_STEPS
@ CONFIG_SKILL_CHANCE_YELLOW
@ CONFIG_RESPAWN_GUIDWARNING_FREQUENCY
@ CONFIG_AUTOBROADCAST_INTERVAL
@ CONFIG_PVP_TOKEN_MAP_TYPE
@ CONFIG_ENABLE_SINFO_LOGIN
@ CONFIG_CHARTER_COST_GUILD
@ CONFIG_CHARDELETE_MIN_LEVEL
@ CONFIG_FORCE_SHUTDOWN_THRESHOLD
@ CONFIG_ARENA_MAX_RATING_DIFFERENCE
@ CONFIG_BG_REWARD_LOSER_HONOR_LAST
@ CONFIG_START_ALLIED_RACE_LEVEL
@ CONFIG_BLACKMARKET_UPDATE_PERIOD
@ CONFIG_TOLBARAD_BONUSTIME
@ CONFIG_AUCTION_TAINTED_SEARCH_DELAY
@ CONFIG_ARENA_RATED_UPDATE_TIMER
@ CONFIG_START_DEMON_HUNTER_PLAYER_LEVEL
@ CONFIG_MIN_PETITION_SIGNS
@ CONFIG_WARDEN_CLIENT_CHECK_HOLDOFF
@ CONFIG_RESPAWN_DYNAMICMINIMUM_CREATURE
@ CONFIG_MIN_LEVEL_STAT_SAVE
@ CONFIG_START_EVOKER_PLAYER_LEVEL
@ CONFIG_BATTLEGROUND_INVITATION_TYPE
@ CONFIG_START_DEATH_KNIGHT_PLAYER_LEVEL
@ CONFIG_MAX_PLAYER_LEVEL
@ CONFIG_MIN_CHARTER_NAME
@ CONFIG_CHAT_CHANNEL_LEVEL_REQ
@ CONFIG_CHARACTERS_PER_ACCOUNT
@ CONFIG_DEATH_SICKNESS_LEVEL
@ CONFIG_CHARTER_COST_ARENA_5v5
@ CONFIG_WINTERGRASP_PLR_MIN_LVL
@ CONFIG_GUILD_RESET_HOUR
@ CONFIG_CURRENCY_RESET_HOUR
@ CONFIG_MAIL_DELIVERY_DELAY
@ CONFIG_WINTERGRASP_BATTLETIME
@ CONFIG_CORPSE_DECAY_MINUSMOB
@ CONFIG_GM_FREEZE_DURATION
@ CONFIG_WINTERGRASP_NOBATTLETIME
@ CONFIG_PACKET_SPOOF_BANDURATION
@ CONFIG_WARDEN_NUM_CLIENT_MOD_CHECKS
@ CONFIG_CURRENCY_START_JUSTICE_POINTS
@ CONFIG_SKILL_CHANCE_MINING_STEPS
@ CONFIG_START_PLAYER_MONEY
@ CONFIG_GUILD_BANK_EVENT_LOG_COUNT
@ CONFIG_AHBOT_UPDATE_INTERVAL
@ CONFIG_BATTLEGROUND_PREMADE_GROUP_WAIT_FOR_MATCH
@ CONFIG_CORPSE_DECAY_NORMAL
@ CONFIG_WINTERGRASP_RESTART_AFTER_CRASH
@ CONFIG_SOCKET_TIMEOUTTIME_ACTIVE
@ CONFIG_START_PLAYER_LEVEL
@ CONFIG_RESPAWN_GUIDALERTLEVEL
@ CONFIG_MAX_RECRUIT_A_FRIEND_BONUS_PLAYER_LEVEL
@ CONFIG_MAX_RECRUIT_A_FRIEND_BONUS_PLAYER_LEVEL_DIFFERENCE
@ CONFIG_CLEAN_OLD_MAIL_TIME
@ CONFIG_INTERVAL_GRIDCLEAN
@ CONFIG_BG_REWARD_WINNER_HONOR_FIRST
@ CONFIG_ARENA_START_PERSONAL_RATING
@ CONFIG_STRICT_CHARTER_NAMES
@ CONFIG_BG_REWARD_LOSER_HONOR_FIRST
@ CONFIG_RESET_SCHEDULE_WEEK_DAY
@ CONFIG_PACKET_SPOOF_POLICY
@ CONFIG_CHATFLOOD_ADDON_MESSAGE_COUNT
@ CONFIG_FEATURE_SYSTEM_CHARACTER_UNDELETE_COOLDOWN
@ CONFIG_CHAT_YELL_LEVEL_REQ
@ CONFIG_WARDEN_NUM_INJECT_CHECKS
@ CONFIG_CURRENCY_MAX_APEXIS_CRYSTALS
@ CONFIG_BG_REWARD_WINNER_CONQUEST_LAST
@ CONFIG_GUILD_NEWS_LOG_COUNT
@ CONFIG_CORPSE_DECAY_TRIVIAL
@ CONFIG_AUCTION_LEVEL_REQ
@ CONFIG_TOLBARAD_PLR_MAX
@ CONFIG_CHAT_STRICT_LINK_CHECKING_KICK
@ CONFIG_GM_LEVEL_IN_GM_LIST
@ CONFIG_ARENA_RATING_DISCARD_TIMER
@ CONFIG_TOLBARAD_PLR_MIN
@ CONFIG_CHARACTER_CREATING_EVOKERS_PER_REALM
@ CONFIG_CALENDAR_DELETE_OLD_EVENTS_HOUR
@ CONFIG_GM_VISIBLE_STATE
@ CONFIG_NO_GRAY_AGGRO_ABOVE
@ CONFIG_AUCTION_REPLICATE_DELAY
@ CONFIG_GUILD_SAVE_INTERVAL
@ CONFIG_GROUP_VISIBILITY
@ CONFIG_CREATURE_FAMILY_FLEE_DELAY
@ CONFIG_PACKET_SPOOF_BANMODE
@ CONFIG_CHARDELETE_DEMON_HUNTER_MIN_LEVEL
@ CONFIG_XP_BOOST_DAYMASK
@ CONFIG_MIN_DISCOVERED_SCALED_XP_RATIO
@ CONFIG_CHARDELETE_KEEP_DAYS
@ CONFIG_TOLBARAD_NOBATTLETIME
@ CONFIG_MAX_RESULTS_LOOKUP_COMMANDS
@ CONFIG_CREATURE_STOP_FOR_PLAYER
@ CONFIG_INTERVAL_DISCONNECT_TOLERANCE
@ CONFIG_CHAT_WHISPER_LEVEL_REQ
@ CONFIG_SKILL_GAIN_GATHERING
@ CONFIG_CHARTER_COST_ARENA_2v2
@ CONFIG_CHATFLOOD_MESSAGE_DELAY
@ CONFIG_CHARDELETE_DEATH_KNIGHT_MIN_LEVEL
@ CONFIG_DISABLE_BREATHING
@ CONFIG_FACTION_BALANCE_LEVEL_CHECK_DIFF
@ CONFIG_ACC_PASSCHANGESEC
@ CONFIG_STRICT_PLAYER_NAMES
@ CONFIG_LOGDB_CLEARINTERVAL
@ CONFIG_BATTLEGROUND_REPORT_AFK
@ CONFIG_MIN_QUEST_SCALED_XP_RATIO
@ CONFIG_INSTANCE_UNLOAD_DELAY
@ CONFIG_GM_LEVEL_IN_WHO_LIST
@ CONFIG_CURRENCY_RESET_INTERVAL
@ CONFIG_BATTLEGROUND_PREMATURE_FINISH_TIMER
@ CONFIG_HONOR_AFTER_DUEL
@ CONFIG_WEEKLY_QUEST_RESET_TIME_WDAY
@ CONFIG_PERSISTENT_CHARACTER_CLEAN_FLAGS
@ CONFIG_CORPSE_DECAY_RARE
@ CONFIG_CHAT_STRICT_LINK_CHECKING_SEVERITY
@ CONFIG_RESPAWN_GUIDWARNLEVEL
@ CONFIG_WARDEN_CLIENT_RESPONSE_DELAY
@ CONFIG_PLAYER_ALLOW_COMMANDS
@ CONFIG_TALENTS_INSPECTING
@ CONFIG_WINTERGRASP_PLR_MAX
@ CONFIG_CHAT_EMOTE_LEVEL_REQ
@ CONFIG_AUCTION_SEARCH_DELAY
@ CONFIG_CHARACTER_CREATING_MIN_LEVEL_FOR_DEMON_HUNTER
@ CONFIG_MIN_DUALSPEC_LEVEL
@ CONFIG_SKILL_GAIN_CRAFTING
@ CONFIG_RANDOM_BG_RESET_HOUR
@ CONFIG_DB_PING_INTERVAL
@ CONFIG_WORLD_BOSS_LEVEL_DIFF
@ CONFIG_CORPSE_DECAY_RAREELITE
@ CONFIG_CHATFLOOD_MESSAGE_COUNT
@ CONFIG_WARDEN_CLIENT_FAIL_ACTION
@ CONFIG_RESPAWN_DYNAMICMINIMUM_GAMEOBJECT
@ CONFIG_CHARTER_COST_ARENA_3v3
@ CONFIG_CHATFLOOD_ADDON_MESSAGE_DELAY
@ CONFIG_SKILL_CHANCE_GREY
@ CONFIG_INTERVAL_MAPUPDATE
@ CONFIG_CREATURE_FAMILY_ASSISTANCE_DELAY
@ CONFIG_MAX_PRIMARY_TRADE_SKILL
@ CONFIG_RESET_SCHEDULE_HOUR
@ CONFIG_SKILL_CHANCE_GREEN
@ CONFIG_CHAT_SAY_LEVEL_REQ
@ CONFIG_WINTERGRASP_PLR_MIN
@ CONFIG_BLACKMARKET_MAXAUCTIONS
@ CONFIG_BG_REWARD_WINNER_HONOR_LAST
@ CONFIG_CHARACTERS_PER_REALM
@ CONFIG_RESPAWN_MINCHECKINTERVALMS
@ BOOL_CONFIG_VALUE_COUNT
@ CONFIG_ALLOW_TWO_SIDE_INTERACTION_CALENDAR
@ CONFIG_SHOW_KICK_IN_WORLD
@ CONFIG_QUEST_IGNORE_AUTO_COMPLETE
@ CONFIG_CREATURE_CHECK_INVALID_POSITION
@ CONFIG_SUPPORT_COMPLAINTS_ENABLED
@ CONFIG_CHECK_GOBJECT_LOS
@ CONFIG_INSTANCEMAP_LOAD_GRIDS
@ CONFIG_GM_LOWER_SECURITY
@ CONFIG_PDUMP_NO_OVERWRITE
@ CONFIG_DEATH_CORPSE_RECLAIM_DELAY_PVP
@ CONFIG_START_ALL_SPELLS
@ CONFIG_SUPPORT_BUGS_ENABLED
@ CONFIG_ALLOW_LOGGING_IP_ADDRESSES_IN_DATABASE
@ CONFIG_SHOW_MUTE_IN_WORLD
@ CONFIG_ALLOW_TWO_SIDE_INTERACTION_AUCTION
@ CONFIG_CHAT_PARTY_RAID_WARNINGS
@ CONFIG_DECLINED_NAMES_USED
@ CONFIG_ARENA_LOG_EXTENDED_INFO
@ CONFIG_CALCULATE_GAMEOBJECT_ZONE_AREA_DATA
@ CONFIG_STATS_LIMITS_ENABLE
@ CONFIG_HOTSWAP_INSTALL_ENABLED
@ CONFIG_QUEST_IGNORE_RAID
@ CONFIG_SHOW_BAN_IN_WORLD
@ CONFIG_HOTSWAP_EARLY_TERMINATION_ENABLED
@ CONFIG_CLEAN_CHARACTER_DB
@ CONFIG_BATTLEGROUND_QUEUE_ANNOUNCER_PLAYERONLY
@ CONFIG_CHAT_FAKE_MESSAGE_PREVENTING
@ CONFIG_ALLOW_TWO_SIDE_TRADE
@ CONFIG_DEATH_CORPSE_RECLAIM_DELAY_PVE
@ CONFIG_SKILL_PROSPECTING
@ CONFIG_IP_BASED_ACTION_LOGGING
@ CONFIG_PVP_TOKEN_ENABLE
@ CONFIG_FEATURE_SYSTEM_BPAY_STORE_ENABLED
@ CONFIG_CHARACTER_CREATING_DISABLE_ALLIED_RACE_ACHIEVEMENT_REQUIREMENT
@ CONFIG_ARENA_SEASON_IN_PROGRESS
@ CONFIG_DETECT_POS_COLLISION
@ CONFIG_DEATH_BONES_BG_OR_ARENA
@ CONFIG_BASEMAP_LOAD_GRIDS
@ CONFIG_HOTSWAP_PREFIX_CORRECTION_ENABLED
@ CONFIG_BATTLEGROUND_STORE_STATISTICS_ENABLE
@ CONFIG_INSTANCE_IGNORE_RAID
@ CONFIG_RESET_DUEL_HEALTH_MANA
@ CONFIG_BATTLEGROUND_CAST_DESERTER
@ CONFIG_HOTSWAP_BUILD_FILE_RECREATION_ENABLED
@ CONFIG_STATS_SAVE_ONLY_ON_LOGOUT
@ CONFIG_ARENA_QUEUE_ANNOUNCER_ENABLE
@ CONFIG_RESTRICTED_LFG_CHANNEL
@ CONFIG_NO_RESET_TALENT_COST
@ CONFIG_CALCULATE_CREATURE_ZONE_AREA_DATA
@ CONFIG_HOTSWAP_RECOMPILER_ENABLED
@ CONFIG_ALLOW_TWO_SIDE_INTERACTION_CHANNEL
@ CONFIG_PRESERVE_CUSTOM_CHANNELS
@ CONFIG_OFFHAND_CHECK_AT_SPELL_UNLEARN
@ CONFIG_RESET_DUEL_COOLDOWNS
@ CONFIG_DURABILITY_LOSS_IN_PVP
@ CONFIG_INSTANCES_RESET_ANNOUNCE
@ CONFIG_WINTERGRASP_ENABLE
@ CONFIG_QUEST_IGNORE_AUTO_ACCEPT
@ CONFIG_PREVENT_RENAME_CUSTOMIZATION
@ CONFIG_DIE_COMMAND_MODE
@ CONFIG_SUPPORT_SUGGESTIONS_ENABLED
@ CONFIG_VMAP_INDOOR_CHECK
@ CONFIG_CACHE_DATA_QUERIES
@ CONFIG_SUPPORT_TICKETS_ENABLED
@ CONFIG_GAME_OBJECT_CHECK_INVALID_POSITION
@ CONFIG_RESPAWN_DYNAMIC_ESCORTNPC
@ CONFIG_ALLOW_TWO_SIDE_INTERACTION_GROUP
@ CONFIG_DEATH_BONES_WORLD
@ CONFIG_QUEST_ENABLE_QUEST_TRACKER
@ CONFIG_REGEN_HP_CANNOT_REACH_TARGET_IN_RAID
@ CONFIG_BATTLEGROUNDMAP_LOAD_GRIDS
@ CONFIG_BLACKMARKET_ENABLED
@ CONFIG_DBC_ENFORCE_ITEM_ATTRIBUTES
@ CONFIG_START_ALL_EXPLORED
@ CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD
@ CONFIG_BATTLEGROUND_QUEUE_ANNOUNCER_ENABLE
@ CONFIG_INSTANCE_IGNORE_LEVEL
@ CONFIG_FEATURE_SYSTEM_CHARACTER_UNDELETE_ENABLED
@ WUPDATE_AUCTIONS_PENDING
@ WUPDATE_CHECK_FILECHANGES
@ RATE_CREATURE_DAMAGE_NORMAL
@ RATE_DROP_ITEM_REFERENCED_AMOUNT
@ RATE_POWER_RUNIC_POWER_LOSS
@ RATE_CREATURE_DAMAGE_RAREELITE
@ RATE_REPUTATION_LOWLEVEL_QUEST
@ RATE_DURABILITY_LOSS_BLOCK
@ RATE_REPUTATION_LOWLEVEL_KILL
@ RATE_INSTANCE_RESET_TIME
@ RATE_CREATURE_DAMAGE_ELITE
@ RATE_REST_OFFLINE_IN_WILDERNESS
@ RATE_CREATURE_SPELLDAMAGE_TRIVIAL
@ RATE_MONEY_MAX_LEVEL_QUEST
@ RATE_CREATURE_SPELLDAMAGE_NORMAL
@ RATE_DROP_ITEM_LEGENDARY
@ RATE_DURABILITY_LOSS_PARRY
@ RATE_REST_OFFLINE_IN_TAVERN_OR_CITY
@ RATE_DROP_ITEM_UNCOMMON
@ RATE_DROP_ITEM_REFERENCED
@ RATE_REPUTATION_RECRUIT_A_FRIEND_BONUS
@ RATE_CREATURE_SPELLDAMAGE_RAREELITE
@ RATE_DURABILITY_LOSS_DAMAGE
@ RATE_DURABILITY_LOSS_ON_DEATH
@ RATE_CREATURE_HP_OBSOLETE
@ RATE_DROP_ITEM_ARTIFACT
@ RATE_CREATURE_DAMAGE_OBSOLETE
@ RATE_CREATURE_DAMAGE_MINUSMOB
@ RATE_POWER_RUNIC_POWER_INCOME
@ RATE_CREATURE_HP_NORMAL
@ RATE_POWER_ARCANE_CHARGES
@ RATE_CREATURE_HP_MINUSMOB
@ RATE_CREATURE_HP_TRIVIAL
@ RATE_CORPSE_DECAY_LOOTED
@ RATE_DURABILITY_LOSS_ABSORB
@ RATE_CREATURE_DAMAGE_RARE
@ RATE_CREATURE_DAMAGE_TRIVIAL
@ RATE_CREATURE_SPELLDAMAGE_ELITE
@ RATE_CREATURE_SPELLDAMAGE_MINUSMOB
@ RATE_CREATURE_HP_RAREELITE
@ RATE_CREATURE_SPELLDAMAGE_OBSOLETE
@ RATE_CREATURE_SPELLDAMAGE_RARE
@ RATE_POWER_COMBO_POINTS_LOSS
@ INT64_CONFIT_VALUE_COUNT
@ CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK
@ FLOAT_CONFIG_VALUE_COUNT
@ CONFIG_STATS_LIMITS_DODGE
@ CONFIG_RESPAWN_DYNAMICRATE_CREATURE
@ CONFIG_ARENA_WIN_RATING_MODIFIER_1
@ CONFIG_GROUP_XP_DISTANCE
@ CONFIG_CALL_TO_ARMS_20_PCT
@ CONFIG_LISTEN_RANGE_YELL
@ CONFIG_STATS_LIMITS_PARRY
@ CONFIG_CREATURE_FAMILY_FLEE_ASSISTANCE_RADIUS
@ CONFIG_ARENA_WIN_RATING_MODIFIER_2
@ CONFIG_ARENA_LOSE_RATING_MODIFIER
@ CONFIG_CREATURE_FAMILY_ASSISTANCE_RADIUS
@ CONFIG_LISTEN_RANGE_SAY
@ CONFIG_MAX_RECRUIT_A_FRIEND_DISTANCE
@ CONFIG_ARENA_MATCHMAKER_RATING_MODIFIER
@ CONFIG_CALL_TO_ARMS_5_PCT
@ CONFIG_RESPAWN_DYNAMICRATE_GAMEOBJECT
@ CONFIG_CALL_TO_ARMS_10_PCT
@ CONFIG_STATS_LIMITS_CRIT
@ CONFIG_LISTEN_RANGE_TEXTEMOTE
@ CONFIG_STATS_LIMITS_BLOCK
void Update(VignetteData &vignette, WorldObject const *owner)
Storage class for commands issued for delayed execution.
CommandFinished m_commandFinished
CliCommandHolder & operator=(CliCommandHolder const &right)=delete
void(*)(void *, std::string_view) Print
CliCommandHolder(CliCommandHolder const &right)=delete
void(*)(void *, bool success) CommandFinished