diff options
| -rw-r--r-- | src/server/game/Battlegrounds/Battleground.cpp | 12 | ||||
| -rw-r--r-- | src/server/game/World/World.cpp | 1 | ||||
| -rw-r--r-- | src/server/game/World/World.h | 1 | ||||
| -rw-r--r-- | src/server/worldserver/worldserver.conf.dist | 6 |
4 files changed, 19 insertions, 1 deletions
diff --git a/src/server/game/Battlegrounds/Battleground.cpp b/src/server/game/Battlegrounds/Battleground.cpp index 81d93357ec9..7bb11fb36b5 100644 --- a/src/server/game/Battlegrounds/Battleground.cpp +++ b/src/server/game/Battlegrounds/Battleground.cpp @@ -738,7 +738,17 @@ void Battleground::EndBattleground(uint32 winner) SetArenaTeamRatingChangeForTeam(GetOtherTeam(winner), loser_change); SetArenaMatchmakerRating(winner, winner_matchmaker_rating); SetArenaMatchmakerRating(GetOtherTeam(winner), loser_matchmaker_rating); - sLog.outArena("Arena match Type: %u for Team1Id: %u - Team2Id: %u ended. WinnerTeamId: %u. RatingChange: %i.", m_ArenaType, m_ArenaTeamIds[BG_TEAM_ALLIANCE], m_ArenaTeamIds[BG_TEAM_HORDE], winner_arena_team->GetId(), winner_change); + sLog.outArena("Arena match Type: %u for Team1Id: %u - Team2Id: %u ended. WinnerTeamId: %u. Winner rating: +%d, Loser rating: %d", m_ArenaType, m_ArenaTeamIds[BG_TEAM_ALLIANCE], m_ArenaTeamIds[BG_TEAM_HORDE], winner_arena_team->GetId(), winner_change, loser_change); + if (sWorld.getBoolConfig(CONFIG_ARENA_LOG_EXTENDED_INFO)) + for (Battleground::BattlegroundScoreMap::const_iterator itr = GetPlayerScoresBegin(); itr != GetPlayerScoresEnd(); itr++) + if (Player* player = sObjectMgr.GetPlayer(itr->first)) + { + std::string last_ip = "<unknown>"; + QueryResult_AutoPtr result = LoginDatabase.PQuery("SELECT last_ip FROM account WHERE id = %u", player->GetSession()->GetAccountId()); + if (result) + last_ip = (result->Fetch())[0].GetCppString(); + sLog.outArena("Statistics for %s (GUID: %llu, Team: %d, IP: %s): %u damage, %u healing, %u killing blows", player->GetName(), itr->first, player->GetArenaTeamId(m_ArenaType == 5 ? 2 : m_ArenaType == 3), last_ip.c_str(), itr->second->DamageDone, itr->second->HealingDone, itr->second->KillingBlows); + } } else { diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp index b1884facc42..aa9d24aaeae 100644 --- a/src/server/game/World/World.cpp +++ b/src/server/game/World/World.cpp @@ -1045,6 +1045,7 @@ void World::LoadConfigSettings(bool reload) m_int_configs[CONFIG_ARENA_START_RATING] = sConfig.GetIntDefault ("Arena.ArenaStartRating", 0); m_int_configs[CONFIG_ARENA_START_PERSONAL_RATING] = sConfig.GetIntDefault ("Arena.ArenaStartPersonalRating", 0); m_bool_configs[CONFIG_ARENA_SEASON_IN_PROGRESS] = sConfig.GetBoolDefault("Arena.ArenaSeason.InProgress", true); + m_bool_configs[CONFIG_ARENA_LOG_EXTENDED_INFO] = sConfig.GetBoolDefault("ArenaLog.ExtendedInfo", false); m_bool_configs[CONFIG_OFFHAND_CHECK_AT_SPELL_UNLEARN] = sConfig.GetBoolDefault("OffhandCheckAtSpellUnlearn", true); diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h index 09ad3e88d4b..b3272e096c8 100644 --- a/src/server/game/World/World.h +++ b/src/server/game/World/World.h @@ -141,6 +141,7 @@ enum WorldBoolConfigs CONFIG_ARENA_QUEUE_ANNOUNCER_ENABLE, CONFIG_ARENA_QUEUE_ANNOUNCER_PLAYERONLY, CONFIG_ARENA_SEASON_IN_PROGRESS, + CONFIG_ARENA_LOG_EXTENDED_INFO, CONFIG_OFFHAND_CHECK_AT_SPELL_UNLEARN, CONFIG_VMAP_INDOOR_CHECK, CONFIG_PET_LOS, diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist index 9b9782751d1..4b6e435db4a 100644 --- a/src/server/worldserver/worldserver.conf.dist +++ b/src/server/worldserver/worldserver.conf.dist @@ -412,6 +412,11 @@ CleanCharacterDB = 0 # Log file of arena fights and arena team creations # Default: "" - do not create arena log file # +# ArenaLog.ExtendedInfo +# Include extended info for each player after rated arena (guid, name, team, IP, healing/damage done, killing blows) +# Default: 0 - disabled +# 1 - enabled +# # SQLDriverLogFile # Log file of SQL driver events. # For effective query logging you need to build in debug configuration. @@ -545,6 +550,7 @@ GmLogTimestamp = 0 GmLogPerAccount = 0 RaLogFile = "ra_commands.log" ArenaLogFile = "" +ArenaLog.ExtendedInfo = 0 SQLDriverLogFile = "" LogColors = "" EnableLogDB = 0 |
