aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp2
-rw-r--r--src/server/game/Handlers/ChatHandler.cpp16
-rw-r--r--src/server/game/World/World.cpp11
-rw-r--r--src/server/game/World/World.h9
-rw-r--r--src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp4
-rw-r--r--src/server/scripts/Spells/spell_warrior.cpp23
-rw-r--r--src/server/scripts/World/chat_log.cpp225
-rw-r--r--src/server/shared/Debugging/WheatyExceptionReport.cpp26
-rw-r--r--src/server/shared/Logging/Log.cpp12
-rw-r--r--src/server/shared/Logging/Log.h6
-rw-r--r--src/server/worldserver/worldserver.conf.dist72
11 files changed, 157 insertions, 249 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index fe69e3f08b1..3e19a5f0420 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -8855,7 +8855,7 @@ bool Unit::isSpellCrit(Unit* victim, SpellInfo const* spellProto, SpellSchoolMas
default:
return false;
}
- break;
+ // Do not add a break here, case fallthrough is intentional! Adding a break will make above spells unable to crit.
case SPELL_DAMAGE_CLASS_MAGIC:
{
if (schoolMask & SPELL_SCHOOL_MASK_NORMAL)
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp
index 8cac59dfd9b..9266653558f 100644
--- a/src/server/game/Handlers/ChatHandler.cpp
+++ b/src/server/game/Handlers/ChatHandler.cpp
@@ -156,20 +156,12 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket& recvData)
case CHAT_MSG_GUILD:
case CHAT_MSG_BATTLEGROUND:
case CHAT_MSG_WHISPER:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- {
- std::string msg = "";
- recvData >> msg;
-
- if (msg.empty())
- return;
-
- sScriptMgr->OnPlayerChat(sender, uint32(CHAT_MSG_ADDON), lang, msg);
- }
-
- // Disabled addon channel?
+ // check if addon messages are disabled
if (!sWorld->getBoolConfig(CONFIG_ADDON_CHANNEL))
+ {
+ recvData.rfinish();
return;
+ }
break;
default:
TC_LOG_ERROR("network", "Player %s (GUID: %u) sent a chatmessage with an invalid language/message type combination",
diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp
index 34c38343ebf..9c4b5bce621 100644
--- a/src/server/game/World/World.cpp
+++ b/src/server/game/World/World.cpp
@@ -1214,17 +1214,6 @@ void World::LoadConfigSettings(bool reload)
m_int_configs[CONFIG_NUMTHREADS] = sConfigMgr->GetIntDefault("MapUpdate.Threads", 1);
m_int_configs[CONFIG_MAX_RESULTS_LOOKUP_COMMANDS] = sConfigMgr->GetIntDefault("Command.LookupMaxResults", 0);
- // chat logging
- m_bool_configs[CONFIG_CHATLOG_CHANNEL] = sConfigMgr->GetBoolDefault("ChatLogs.Channel", false);
- m_bool_configs[CONFIG_CHATLOG_WHISPER] = sConfigMgr->GetBoolDefault("ChatLogs.Whisper", false);
- m_bool_configs[CONFIG_CHATLOG_SYSCHAN] = sConfigMgr->GetBoolDefault("ChatLogs.SysChan", false);
- m_bool_configs[CONFIG_CHATLOG_PARTY] = sConfigMgr->GetBoolDefault("ChatLogs.Party", false);
- m_bool_configs[CONFIG_CHATLOG_RAID] = sConfigMgr->GetBoolDefault("ChatLogs.Raid", false);
- m_bool_configs[CONFIG_CHATLOG_GUILD] = sConfigMgr->GetBoolDefault("ChatLogs.Guild", false);
- m_bool_configs[CONFIG_CHATLOG_PUBLIC] = sConfigMgr->GetBoolDefault("ChatLogs.Public", false);
- m_bool_configs[CONFIG_CHATLOG_ADDON] = sConfigMgr->GetBoolDefault("ChatLogs.Addon", false);
- m_bool_configs[CONFIG_CHATLOG_BGROUND] = sConfigMgr->GetBoolDefault("ChatLogs.Battleground", false);
-
// Warden
m_bool_configs[CONFIG_WARDEN_ENABLED] = sConfigMgr->GetBoolDefault("Warden.Enabled", false);
m_int_configs[CONFIG_WARDEN_NUM_MEM_CHECKS] = sConfigMgr->GetIntDefault("Warden.NumMemChecks", 3);
diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h
index 38c8ebffb30..4bb7c37fb71 100644
--- a/src/server/game/World/World.h
+++ b/src/server/game/World/World.h
@@ -146,15 +146,6 @@ enum WorldBoolConfigs
CONFIG_SHOW_KICK_IN_WORLD,
CONFIG_SHOW_MUTE_IN_WORLD,
CONFIG_SHOW_BAN_IN_WORLD,
- CONFIG_CHATLOG_CHANNEL,
- CONFIG_CHATLOG_WHISPER,
- CONFIG_CHATLOG_SYSCHAN,
- CONFIG_CHATLOG_PARTY,
- CONFIG_CHATLOG_RAID,
- CONFIG_CHATLOG_GUILD,
- CONFIG_CHATLOG_PUBLIC,
- CONFIG_CHATLOG_ADDON,
- CONFIG_CHATLOG_BGROUND,
CONFIG_AUTOBROADCAST,
CONFIG_ALLOW_TICKETS,
CONFIG_DBC_ENFORCE_ITEM_ATTRIBUTES,
diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp
index d0b0db2e1ab..8ac095971bc 100644
--- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp
+++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp
@@ -229,14 +229,14 @@ class npc_onyx_flamecaller : public CreatureScript
void IsSummonedBy(Unit* /*summoner*/) OVERRIDE
{
- // Let Zarithrian count as summoner. _instance cant be null since we got GetRubySanctumAI
+ // Let Zarithrian count as summoner.
if (Creature* zarithrian = ObjectAccessor::GetCreature(*me, _instance->GetData64(DATA_GENERAL_ZARITHRIAN)))
zarithrian->AI()->JustSummoned(me);
}
void WaypointReached(uint32 waypointId) OVERRIDE
{
- if (waypointId == MAX_PATH_FLAMECALLER_WAYPOINTS || waypointId == MAX_PATH_FLAMECALLER_WAYPOINTS*2)
+ if (waypointId == MAX_PATH_FLAMECALLER_WAYPOINTS - 1 || waypointId == MAX_PATH_FLAMECALLER_WAYPOINTS * 2 - 1)
{
DoZoneInCombat();
SetEscortPaused(true);
diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp
index c85c663ab57..238989ea2b2 100644
--- a/src/server/scripts/Spells/spell_warrior.cpp
+++ b/src/server/scripts/Spells/spell_warrior.cpp
@@ -28,6 +28,7 @@
enum WarriorSpells
{
+ SPELL_WARRIOR_BLADESTORM_PERIODIC_WHIRLWIND = 50622,
SPELL_WARRIOR_BLOODTHIRST = 23885,
SPELL_WARRIOR_BLOODTHIRST_DAMAGE = 23881,
SPELL_WARRIOR_CHARGE = 34846,
@@ -52,7 +53,8 @@ enum WarriorSpells
SPELL_WARRIOR_SHIELD_SLAM = 23922,
SPELL_WARRIOR_SLAM = 50782,
SPELL_WARRIOR_SUNDER_ARMOR = 58567,
- SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK = 26654,
+ SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_1 = 12723,
+ SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_2 = 26654,
SPELL_WARRIOR_TAUNT = 355,
SPELL_WARRIOR_UNRELENTING_ASSAULT_RANK_1 = 46859,
SPELL_WARRIOR_UNRELENTING_ASSAULT_RANK_2 = 46860,
@@ -844,7 +846,7 @@ class spell_warr_sweeping_strikes : public SpellScriptLoader
bool Validate(SpellInfo const* /*spellInfo*/) OVERRIDE
{
- if (!sSpellMgr->GetSpellInfo(SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK))
+ if (!sSpellMgr->GetSpellInfo(SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_1) || !sSpellMgr->GetSpellInfo(SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_2))
return false;
return true;
}
@@ -861,10 +863,23 @@ class spell_warr_sweeping_strikes : public SpellScriptLoader
return _procTarget;
}
- void HandleProc(AuraEffect const* aurEff, ProcEventInfo& /*eventInfo*/)
+ void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo)
{
PreventDefaultAction();
- GetTarget()->CastSpell(_procTarget, SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK, true, NULL, aurEff);
+ if (eventInfo.GetDamageInfo())
+ {
+ SpellInfo const* spellInfo = eventInfo.GetDamageInfo()->GetSpellInfo();
+ if (spellInfo && (spellInfo->Id == SPELL_WARRIOR_BLADESTORM_PERIODIC_WHIRLWIND || (spellInfo->Id == SPELL_WARRIOR_EXECUTE && !_procTarget->HasAuraState(AURA_STATE_HEALTHLESS_20_PERCENT))))
+ {
+ // If triggered by Execute (while target is not under 20% hp) or Bladestorm deals normalized weapon damage
+ GetTarget()->CastSpell(_procTarget, SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_2, true, NULL, aurEff);
+ }
+ else
+ {
+ int32 damage = eventInfo.GetDamageInfo()->GetDamage();
+ GetTarget()->CastCustomSpell(SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_1, SPELLVALUE_BASE_POINT0, damage, _procTarget, true, NULL, aurEff);
+ }
+ }
}
void Register() OVERRIDE
diff --git a/src/server/scripts/World/chat_log.cpp b/src/server/scripts/World/chat_log.cpp
index ef854246d20..7074de3ed48 100644
--- a/src/server/scripts/World/chat_log.cpp
+++ b/src/server/scripts/World/chat_log.cpp
@@ -22,144 +22,133 @@
class ChatLogScript : public PlayerScript
{
-public:
- ChatLogScript() : PlayerScript("ChatLogScript") { }
+ public:
+ ChatLogScript() : PlayerScript("ChatLogScript") { }
- void OnChat(Player* player, uint32 type, uint32 lang, std::string& msg)
- {
- switch (type)
+ void OnChat(Player* player, uint32 type, uint32 lang, std::string& msg) OVERRIDE
{
- case CHAT_MSG_ADDON:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- TC_LOG_DEBUG("chat.log", "[ADDON] Player %s sends: %s",
- player->GetName().c_str(), msg.c_str());
- break;
-
- case CHAT_MSG_SAY:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_PUBLIC))
- TC_LOG_DEBUG("chat.log", "[SAY] Player %s says (language %u): %s",
+ switch (type)
+ {
+ case CHAT_MSG_SAY:
+ TC_LOG_DEBUG("chat.log.say", "Player %s says (language %u): %s",
player->GetName().c_str(), lang, msg.c_str());
- break;
+ break;
- case CHAT_MSG_EMOTE:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_PUBLIC))
- TC_LOG_DEBUG("chat.log", "[TEXTEMOTE] Player %s emotes: %s",
+ case CHAT_MSG_EMOTE:
+ TC_LOG_DEBUG("chat.log.emote", "Player %s emotes: %s",
player->GetName().c_str(), msg.c_str());
- break;
+ break;
- case CHAT_MSG_YELL:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_PUBLIC))
- TC_LOG_DEBUG("chat.log", "[YELL] Player %s yells (language %u): %s",
+ case CHAT_MSG_YELL:
+ TC_LOG_DEBUG("chat.log.yell", "Player %s yells (language %u): %s",
player->GetName().c_str(), lang, msg.c_str());
- break;
+ break;
+ }
+ }
+
+ void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Player* receiver) OVERRIDE
+ {
+ if (lang != LANG_ADDON)
+ TC_LOG_DEBUG("chat.log.whisper", "Player %s tells %s: %s",
+ player->GetName().c_str(), receiver ? receiver->GetName().c_str() : "<unknown>", msg.c_str());
+ else
+ TC_LOG_DEBUG("chat.log.addon.whisper", "Player %s tells %s: %s",
+ player->GetName().c_str(), receiver ? receiver->GetName().c_str() : "<unknown>", msg.c_str());
}
- }
-
- void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Player* receiver)
- {
- if (lang != LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_WHISPER))
- TC_LOG_DEBUG("chat.log", "[WHISPER] Player %s tells %s: %s",
- player->GetName().c_str(), receiver ? receiver->GetName().c_str() : "<unknown>", msg.c_str());
- else if (lang == LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- TC_LOG_DEBUG("chat.log", "[ADDON] Player %s tells %s: %s",
- player->GetName().c_str(), receiver ? receiver->GetName().c_str() : "<unknown>", msg.c_str());
- }
-
- void OnChat(Player* player, uint32 type, uint32 lang, std::string& msg, Group* group)
- {
- //! NOTE:
- //! LANG_ADDON can only be sent by client in "PARTY", "RAID", "GUILD", "BATTLEGROUND", "WHISPER"
- switch (type)
+
+ void OnChat(Player* player, uint32 type, uint32 lang, std::string& msg, Group* group) OVERRIDE
{
- case CHAT_MSG_PARTY:
- if (lang != LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_PARTY))
- TC_LOG_DEBUG("chat.log", "[PARTY] Player %s tells group with leader %s: %s",
- player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
- else if (lang == LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- TC_LOG_DEBUG("chat.log", "[ADDON] Player %s tells group with leader %s: %s",
- player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
- break;
-
- case CHAT_MSG_PARTY_LEADER:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_PARTY))
- TC_LOG_DEBUG("chat.log", "[PARTY] Leader %s tells group: %s",
+ //! NOTE:
+ //! LANG_ADDON can only be sent by client in "PARTY", "RAID", "GUILD", "BATTLEGROUND", "WHISPER"
+ switch (type)
+ {
+ case CHAT_MSG_PARTY:
+ if (lang != LANG_ADDON)
+ TC_LOG_DEBUG("chat.log.party", "Player %s tells group with leader %s: %s",
+ player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
+ else
+ TC_LOG_DEBUG("chat.log.addon.party", "Player %s tells group with leader %s: %s",
+ player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
+ break;
+
+ case CHAT_MSG_PARTY_LEADER:
+ TC_LOG_DEBUG("chat.log.party", "Leader %s tells group: %s",
player->GetName().c_str(), msg.c_str());
- break;
-
- case CHAT_MSG_RAID:
- if (lang != LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_RAID))
- TC_LOG_DEBUG("chat.log", "[RAID] Player %s tells raid with leader %s: %s",
- player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
- else if (lang == LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- TC_LOG_DEBUG("chat.log", "[ADDON] Player %s tells raid with leader %s: %s",
- player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
- break;
-
- case CHAT_MSG_RAID_LEADER:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_RAID))
- TC_LOG_DEBUG("chat.log", "[RAID] Leader player %s tells raid: %s",
+ break;
+
+ case CHAT_MSG_RAID:
+ if (lang != LANG_ADDON)
+ TC_LOG_DEBUG("chat.log.raid", "Player %s tells raid with leader %s: %s",
+ player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
+ else
+ TC_LOG_DEBUG("chat.log.addon.raid", "Player %s tells raid with leader %s: %s",
+ player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
+ break;
+
+ case CHAT_MSG_RAID_LEADER:
+ TC_LOG_DEBUG("chat.log.raid", "Leader player %s tells raid: %s",
player->GetName().c_str(), msg.c_str());
- break;
+ break;
- case CHAT_MSG_RAID_WARNING:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_RAID))
- TC_LOG_DEBUG("chat.log", "[RAID] Leader player %s warns raid with: %s",
+ case CHAT_MSG_RAID_WARNING:
+ TC_LOG_DEBUG("chat.log.raid", "Leader player %s warns raid with: %s",
player->GetName().c_str(), msg.c_str());
- break;
-
- case CHAT_MSG_BATTLEGROUND:
- if (lang != LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_BGROUND))
- TC_LOG_DEBUG("chat.log", "[BATTLEGROUND] Player %s tells battleground with leader %s: %s",
- player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
- else if (lang == LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- TC_LOG_DEBUG("chat.log", "[ADDON] Player %s tells battleground with leader %s: %s",
- player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
- break;
-
- case CHAT_MSG_BATTLEGROUND_LEADER:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_BGROUND))
- TC_LOG_DEBUG("chat.log", "[BATTLEGROUND] Leader player %s tells battleground: %s",
+ break;
+
+ case CHAT_MSG_BATTLEGROUND:
+ if (lang != LANG_ADDON)
+ TC_LOG_DEBUG("chat.log.bg", "Player %s tells battleground with leader %s: %s",
+ player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
+ else
+ TC_LOG_DEBUG("chat.log.addon.bg", "Player %s tells battleground with leader %s: %s",
+ player->GetName().c_str(), group ? group->GetLeaderName() : "<unknown>", msg.c_str());
+ break;
+
+ case CHAT_MSG_BATTLEGROUND_LEADER:
+ TC_LOG_DEBUG("chat.log.bg", "Leader player %s tells battleground: %s",
player->GetName().c_str(), msg.c_str());
- break;
+ break;
+ }
}
- }
- void OnChat(Player* player, uint32 type, uint32 lang, std::string& msg, Guild* guild)
- {
- switch (type)
+ void OnChat(Player* player, uint32 type, uint32 lang, std::string& msg, Guild* guild) OVERRIDE
{
- case CHAT_MSG_GUILD:
- if (lang != LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_GUILD))
- TC_LOG_DEBUG("chat.log", "[GUILD] Player %s tells guild %s: %s",
- player->GetName().c_str(), guild ? guild->GetName().c_str() : "<unknown>", msg.c_str());
- else if (lang == LANG_ADDON && sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))
- TC_LOG_DEBUG("chat.log", "[ADDON] Player %s sends to guild %s: %s",
+ switch (type)
+ {
+ case CHAT_MSG_GUILD:
+ if (lang != LANG_ADDON)
+ TC_LOG_DEBUG("chat.log.guild", "Player %s tells guild %s: %s",
+ player->GetName().c_str(), guild ? guild->GetName().c_str() : "<unknown>", msg.c_str());
+ else
+ TC_LOG_DEBUG("chat.log.addon.guild", "Player %s sends to guild %s: %s",
+ player->GetName().c_str(), guild ? guild->GetName().c_str() : "<unknown>", msg.c_str());
+ break;
+
+ case CHAT_MSG_OFFICER:
+ TC_LOG_DEBUG("chat.log.guild.officer", "Player %s tells guild %s officers: %s",
player->GetName().c_str(), guild ? guild->GetName().c_str() : "<unknown>", msg.c_str());
- break;
+ break;
+ }
+ }
- case CHAT_MSG_OFFICER:
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_GUILD))
- TC_LOG_DEBUG("chat.log", "[OFFICER] Player %s tells guild %s officers: %s",
- player->GetName().c_str(), guild ? guild->GetName().c_str() : "<unknown>", msg.c_str());
- break;
+ void OnChat(Player* player, uint32 /*type*/, uint32 /*lang*/, std::string& msg, Channel* channel) OVERRIDE
+ {
+ bool isSystem = channel &&
+ (channel->HasFlag(CHANNEL_FLAG_TRADE) ||
+ channel->HasFlag(CHANNEL_FLAG_GENERAL) ||
+ channel->HasFlag(CHANNEL_FLAG_CITY) ||
+ channel->HasFlag(CHANNEL_FLAG_LFG));
+
+ if (isSystem)
+ TC_LOG_DEBUG("chat.log.system", "Player %s tells channel %s: %s",
+ player->GetName().c_str(), channel->GetName().c_str(), msg.c_str());
+ else
+ {
+ std::string channelName = channel ? channel->GetName() : "<unknown>";
+ TC_LOG_DEBUG("chat.log.channel." + channelName, "Player %s tells channel %s: %s",
+ player->GetName().c_str(), channelName.c_str(), msg.c_str());
+ }
}
- }
-
- void OnChat(Player* player, uint32 /*type*/, uint32 /*lang*/, std::string& msg, Channel* channel)
- {
- bool isSystem = channel &&
- (channel->HasFlag(CHANNEL_FLAG_TRADE) ||
- channel->HasFlag(CHANNEL_FLAG_GENERAL) ||
- channel->HasFlag(CHANNEL_FLAG_CITY) ||
- channel->HasFlag(CHANNEL_FLAG_LFG));
-
- if (sWorld->getBoolConfig(CONFIG_CHATLOG_SYSCHAN) && isSystem)
- TC_LOG_DEBUG("chat.log", "[SYSCHAN] Player %s tells channel %s: %s",
- player->GetName().c_str(), channel->GetName().c_str(), msg.c_str());
- else if (sWorld->getBoolConfig(CONFIG_CHATLOG_CHANNEL))
- TC_LOG_DEBUG("chat.log", "[CHANNEL] Player %s tells channel %s: %s",
- player->GetName().c_str(), channel ? channel->GetName().c_str() : "<unknown>", msg.c_str());
- }
};
void AddSC_chat_log()
diff --git a/src/server/shared/Debugging/WheatyExceptionReport.cpp b/src/server/shared/Debugging/WheatyExceptionReport.cpp
index 1afe688c942..3b6bd3d2cc8 100644
--- a/src/server/shared/Debugging/WheatyExceptionReport.cpp
+++ b/src/server/shared/Debugging/WheatyExceptionReport.cpp
@@ -29,15 +29,23 @@
inline LPTSTR ErrorMessage(DWORD dw)
{
LPVOID lpMsgBuf;
- FormatMessage(
- FORMAT_MESSAGE_ALLOCATE_BUFFER |
- FORMAT_MESSAGE_FROM_SYSTEM,
- NULL,
- dw,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPTSTR) &lpMsgBuf,
- 0, NULL);
- return (LPTSTR)lpMsgBuf;
+ DWORD formatResult = FormatMessage(
+ FORMAT_MESSAGE_ALLOCATE_BUFFER |
+ FORMAT_MESSAGE_FROM_SYSTEM,
+ NULL,
+ dw,
+ MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
+ (LPTSTR) &lpMsgBuf,
+ 0, NULL);
+ if (formatResult != 0)
+ return (LPTSTR)lpMsgBuf;
+ else
+ {
+ LPTSTR msgBuf = (LPTSTR)LocalAlloc(LPTR, 30);
+ sprintf(msgBuf, "Unknown error: %u", dw);
+ return msgBuf;
+ }
+
}
//============================== Global Variables =============================
diff --git a/src/server/shared/Logging/Log.cpp b/src/server/shared/Logging/Log.cpp
index d7d70e7d4ea..bc002668b3b 100644
--- a/src/server/shared/Logging/Log.cpp
+++ b/src/server/shared/Logging/Log.cpp
@@ -250,13 +250,13 @@ void Log::ReadLoggersFromConfig()
AppenderConsole* appender = new AppenderConsole(NextAppenderId(), "Console", LOG_LEVEL_DEBUG, APPENDER_FLAGS_NONE);
appenders[appender->getId()] = appender;
- Logger& logger = loggers[LOGGER_ROOT];
- logger.Create(LOGGER_ROOT, LOG_LEVEL_ERROR);
- logger.addAppender(appender->getId(), appender);
+ Logger& rootLogger = loggers[LOGGER_ROOT];
+ rootLogger.Create(LOGGER_ROOT, LOG_LEVEL_ERROR);
+ rootLogger.addAppender(appender->getId(), appender);
- logger = loggers["server"];
- logger.Create("server", LOG_LEVEL_ERROR);
- logger.addAppender(appender->getId(), appender);
+ Logger& serverLogger = loggers["server"];
+ serverLogger.Create("server", LOG_LEVEL_INFO);
+ serverLogger.addAppender(appender->getId(), appender);
}
}
diff --git a/src/server/shared/Logging/Log.h b/src/server/shared/Logging/Log.h
index dcac93e5a60..73c5601b95b 100644
--- a/src/server/shared/Logging/Log.h
+++ b/src/server/shared/Logging/Log.h
@@ -103,16 +103,12 @@ inline Logger const* Log::GetLoggerByType(std::string const& originalType)
}
while (!logger);
- cachedLoggers[type] = logger;
+ cachedLoggers[originalType] = logger;
return logger;
}
inline bool Log::ShouldLog(std::string const& type, LogLevel level)
{
- // TODO: Use cache to store "Type.sub1.sub2": "Type" equivalence, should
- // Speed up in cases where requesting "Type.sub1.sub2" but only configured
- // Logger "Type"
-
Logger const* logger = GetLoggerByType(type);
if (!logger)
return false;
diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist
index 5ab635c786b..4caaba48089 100644
--- a/src/server/worldserver/worldserver.conf.dist
+++ b/src/server/worldserver/worldserver.conf.dist
@@ -411,78 +411,6 @@ PidFile = ""
PacketLogFile = ""
-#
-# ChatLogs.Channel
-# Description: Log custom channel chat.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Channel = 0
-
-#
-# ChatLogs.Whisper
-# Description: Log whispers between players.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Whisper = 0
-
-#
-# ChatLogs.SysChan
-# Description: Log system channel messages.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.SysChan = 0
-
-#
-# ChatLogs.Party
-# Description: Log party chat.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Party = 0
-
-#
-# ChatLogs.Raid
-# Description: Log raid chat.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Raid = 0
-
-#
-# ChatLogs.Guild
-# Description: Log guild chat.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Guild = 0
-
-#
-# ChatLogs.Public
-# Description: Log public chat (say/yell/emote).
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Public = 0
-
-#
-# ChatLogs.Addon
-# Description: Log addon messages.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.Addon = 0
-
-#
-# ChatLogs.BattleGround
-# Description: Log battleground chat.
-# Default: 0 - (Disabled)
-# 1 - (Enabled)
-
-ChatLogs.BattleGround = 0
-
# Extended Logging system configuration moved to end of file (on purpose)
#
###################################################################################################