Анализ комбат-логов — это способ найти недостатки вашего рейда, посмотреть особенности тактик у других игроков, возможность оценить эффективность конкретного игрока. Применений можно найти много. Два года назад Nattfodd уже писал про сайты анализа combat-логов WoW. В сети существовало множество подобных ресурсов, но до наших дней дожили единицы. Например, WowMeterOnline, обладает меньшими возможностями и крепко оккупирован корейцами. World of Logs же является, на данный момент, самым популярным сайтом для анализа логов. В ру-оффе он, фактически, стал стандартом, и что странно, в сети очень мало публикаций раскрывающих возможности этого сайта. Я предпринял (не знаю, удачную ли?) попытку восполнить этот пробел
Содержание:
- Начало работы
- Клиент WoL
- Знакомство с интерфейсом страницы логов
- Инструмент Analyze
- Статистика по нанесенному урону и исцелению
- Страница персонажа
- Expression editor
Прежде всего, вам необходимо зарегистрировать аккаунт. В регистрации ничего особенного нет.
Сразу после первого логина вам будет предложено зарегистрировать свою гильдию или же присоединится к уже зарегистрированной. Обращаю ваше внимание на то, что WoL не проверяет реальное существование гильдии, поэтому, фактически, понятие "гильдия" здесь следует воспринимать как обозначение некого каталога логов загруженных одним или несколькими людьми. Указание таймзоны необходимо для отсчета времени в ваших логах по местному, а не серверному времени. Также вы можете указать ссылку на сайт гильдии и назначить режим показа логов по умолчанию. Логи могут быть публичные (Public), доступные только для участников гильдии (Private) и публичные, но публикуемые с недельной задержкой (Hidden)
После создания гильдии вам откроется окно пустого календаря с одним-единственным пунктом в меню
- Calendar — Календарь логов.
- Ranked players — Перечень игроков из ваших логов попавших в топ200
- Raids by character — Страница посещаемости рейдом каждым игроком. Удобно для оценки аттенданса.
- Lists of report — Управление загруженными логами. Здесь вы можете добавить комментарии к логам, изменить настройки приватности для отдельного лога. Здесь же хочу добавить, что WoL для free-аккаунтов показывает рекламу и хранит логи ровно 1 месяц. Хотите хранить логи дольше? Платите 5-10$
- Manage Guild — Настройки гильдии. Здесь вы можете отредактировать гильдейскую информацию, сменить лидера гильдии, посмотреть состояние ваших подписок и лог вносимых изменений
- Widgets — Конструктор виджетов для вашего сайта.
- Request Leadership — Запрос лидерства у текущего лидера гильдии.
Далее вам нужно скачать клиент WoL. Клиент представляет собой JavaWS-приложение и для своей работы требует установленного Java Runtime Enviroment. На этом же сайте можно проверить статус установленной версии. После запуска вам нужно будет ввести логин/пароль и нажать Test account settings. Введенные данные будут проверены и сохранены.
Собственно окно клиента состоит из трех кнопок. Первые две по смыслу одинаковы, они открывают лог из файла (разница в том, что первая кнопка даст выбрать файл, вторая откроет файл по умолчанию).
Третья кнопка откроет режим записи лога "на лету". Этот режим удобен в том случае, если вы хотите быстро анализировать ситуации между траями. Вы просто нажимаете Sync Now и обновляете страницу лога в браузере.
Открытый файл выглядит как-то так. Небольшая статистика по продолжительности боя и объемности лога и кнопка загрузки файла на сервер. После загрузки лог будет автоматически открыт в вашем браузере.
Посмотрим на окно лога сразу после загрузки.
<!--<a href=""><img src="http://mmoboom.ru/media/images/thumb/86abb5a25a0da1c1.jpg"></a>-->
Перед нами некий забег в LFR на одного босса, главная страница (т.н. Dashboard) полученного лога доступна на скриншоте.
Тут отображаются: график дпс-а за весь рейд, список траев/киллов, более детальные графики нанесенного урона, полученного урона + отхила и некоторая финальная статистика по источникам урона. Например, можно увидеть, что больше всего по рейду пробивал босс (85.9% от общего полученного урона) своей абилкой Топот (45.7%)
В верхней части окна расположено меню из 4-х выпадающих списков. Первый список позволяет выбрать различные инструменты, содержит пункты:
- Dashboard — главное окно логов
- Compare Fights — Позволяет построить графики сравнения разных боёв/траев с последним логом. Графики строятся по нанесенному и полученному урону и по исцелению. .
- Analyze — позволяет быстро посмотреть урон/отхил по источнику, цели или заклинанию.
- Damage Done, Damage Taken, Healing Done, Healing Taken — страницы обзора нанесенного урона, полученного урона и исходящего/входящего исцеления.
- Friendly Fire — показывает урон нанесенный союзникам. В текущем контенте, где нет боёв с жестким контролем игроков это вряд ли пригодится.
- Deaths overview — хронологический список смертей с указанием трёх финальных ударов по игроку (пример)
- Survivability — статистика выживаемости рейда. Например. В этой таблице показывается на каком %% хп босса умер каждый игрок. В случае если персонаж умирал дважды — будет показано только первое значение. В последней колонке показано среднее значение.
- Log Browser — текст лога боя с возможностью создания простых фильтров
- Expression Editor — почти то же самое что и Log Browser, только запросы пишутся в ручную (возможности этого редактора превосходят возможности log browser)
- Ranking Info — отображает статистику рейда относительно попадания в топ200. Наиболее любопытны графы Rank Limit и % of limit, показывающие какой должен быть дпс/хпс для попадания в топ и сколько %% от него набрали вы.
Следующий список позволяет выбрать бой для рассмотрения.
- Bosses — выбор всех логов по конкретному боссу
- Kills — выбор успешных траев по конкретному боссу
- Wipes — логи вайпов
- Trash — логи на треше
- Full report — список всех логов данного сеанса. Показывается по умолчанию.
Списки Players и Creatures позволяют перейти к страницам обзора статистики конкретного игрока или моба/босса. Так же доступны со страниц отчетов за бой.
С навигацией разобрались, переходим к более интересным моментам
Для примера я взял логи одной десятки с Вечной песни, да простят меня эти люди
К сожалению, на момент написания данных строк WoL выключил графики, но, думаю, смысл данного инструмента будет понятен и без них. По-умолчанию показывается общий дамаг рейда.
Для того, чтобы узнать кто сколько "влил" по конкретному мобу нужно выбрать пункт by source и в списке Target найти нужную цель. Например, посмотрим статитику урона по сухожилию на спине Смертокрыла.Наглядно виден не только нанесенный урон, но и время за которое он был нанесен.
Пункт by target выводит статистику урона игрока по разным мобам в рамках выбранного участка лога (см. описание второго пункта меню) . В данном логе посмотрим на урон ШП. Пункт by spell является объединением первых двух, ничего особенного там нет
Рассмотрим отчет по нанесенному урону.
В верхней части страницы можно видеть графики. По умолчанию рисуются 4 линии: Total + топ3 дамагеров. Отображаемые графики выбираются галочками в списке персонажей. На графиках вертикальными линиями обозначены смерти и воскрешения песонажей, сдача героизма и т.п. Включаются/отключаются блоком из 5 кнопок справа от графиков.
В нижней части расположена сводная таблица нанесенного урона. Если в процессе боя персонаж вызывает "помощника", то в списке напротив его имени будет показана стрелка. Для наглядности это показано на скриншоте. Т.е. видно, что некий лок суммарно нанес 6.9% урона боссу, из них 5.87% собственноручно, 1.01% демоном и 0.02% бонусом 4т12. Наведение мышки на имя персонажа показывает всплывающее окно с топ-листом способностей. Колонка DPS показывает "сырой" дпс, т.е. урон нанесенный за время активности персонаа. Колонка Active time в теории должна отображать время боя в которое персонаж что-то делал (=кастовал). На практике она частенько врёт у дотеров/хотеров (особенно это видно по рестор-друидам и холи-пристам). DPS(e) это эффективный дпс, т.е. дпс с учетом эффективности, т.е. урон нанесенный за время всего боя. Зачем это нужно? Ну, например некий условный дд-шер слакал весь бой и в самом конце под герой в экзекьюте вжарил все кд и накрутил себе omg-дпс. Эта накрутка будет видна в DPS, в то время как DPS(e) будет существенно меньше. Вобщем, на этот параметр следует смотреть только с учетом механики класса и боя
Ещё раз, отдельно:
DPS(e) = Damage done / Totals time
Графики также используются для более точного рассмотрения временных интервалов боя. Выделите мышкой участок на графике и нажмите правую кнопку мыши. Вы увидите подобное меню. Первые два пункта просто изменят масштаб картинки, а вот третий увеличит выбранный участок графиков и пересчитает отчет по урону. Таким образом можно детальнее изучить бурстовый урон или же ткнуть слакера мордой в факты.
Вышесказанное относится к наиболее популярным инструментам WoL. Перейдем к более экзотическим, но очень мощным функциям
Доступна по клику на имени игрока (демонстрируется на примере одного лога с Владыкоймысли) практически на все страницах разнообразных отчетов. Представляет собой набор вкладок:
- Graph — графики входящего/исходящего урона/исцеления для данного персонажа.
- Damage/healing by spell — полная статистика по способностям
- Damage by actor — цели которые атаковал игрок и цели атаковавшие игрока.
- Healing by actor — аналогично по исцелению
- Buffs gained/Buffs cast — получение и касты баффов/дебаффов (см.ниже)
- Deaths — обзор смертей персонажа.
Рассмотрим некоторые из них более подробно.
Урон по заклинаниям.
Что тут можно увидеть. Во-первых, персонаж носит триньку "Вулкан", чьи проки нанесли аж 19397 дамага. Тринька прокнула 6 раз, из них дважды кританула, но цели достигли только 5 проков. Статистика по числу тиков полезного несет мало, а вот наличие цифр в графе Miss говорит о том, что игрок не собрал кап меткости.
Баффы/дебаффы. Одна из самых полезных фич WoL.
Эти вкладки позволяют не только узнать сколько раз накладывался тот или иной баф, но и вывести их на временную шкалу (для показа нужно нажать на "#" в строке с нужным баффом). Проанализируем нашего Владыку. Нам будут интересны аптайм дот и использование классовых кд.
Мы видим совершенно необъяснимый провал в самом начале боя. Также видно, что игрок хорошо держит Всепожирающую чуму и имеет провалы на Слове Тьмы: Боль и Прикосновении вампира. Эти два факта достаточно интересны, сложно представить как можно потерять самообновляемую доту и пропустить обновление самой сильной доты, при этом поддерживая почти 100% аптайм у самой слабой.
4я и 5я строки показывают прок сфер (с ним явно не везёт) и аптайм бафа от этих самых сфер. Видно две прболемы: нет определености в том когда и сколько сфер разряжать. Игрок то гасит 2 сферы, то долго держит 3, при этом регулярно теряя баф.
6я и 7я строки показывают, что игрок сумел истратить Темного архангела аккурат перед героизмом. Вряд ли были большие проблемы с маной, можно было бы и потерпеть.
Данный инструмент позволяет получить необходимую информацию путем составления текстовых запросов. Запросы представляют собой наборы условий объединенных логическими операторами. Условия записываются как "идентификатор условие значение". В качестве знаков условий выступают = > < !=. Если нужно указать несколько значений, то пишут так: "идентификатор in (значение1, значение2, ...)". Большинство идентификаторов принимают численные значения, поэтому для удобства чтения разработчики WoL ввели константы. Например, ты можем писать type = 3 или type = TYPE_HEAL. Согласитесь, второй вариант нагляднее. Логические операторы используются стандартные: NOT, OR, AND. Для изменения порядка вычисления условий допустимо использовать скобки.
Event (События)
type = число. Тип события
fullType = число. Полный тип
missType = число. Тип промаха
Числовые константы различных типов событий
EVENT TYPE
TYPE_DAMAGE = 1 / прямой урон
TYPE_MISS = 2 / промах
TYPE_HEAL = 3 / исцеление
TYPE_AURA = 4 / наложение эффекта
TYPE_DEATH = 5 / смерть
TYPE_CAST = 6 / начало каста
TYPE_DISPEL = 7 / диспелл
TYPE_GAIN = 8 / получение эффекта
FULL EVENT TYPES
SWING_DAMAGE = 101 / урон с размаха
RANGE_DAMAGE = 102 / урон с расстояния
SPELL_DAMAGE = 103 / урон заклинанием
SPELL_PERIODIC_DAMAGE = 104 / урон от ДоТы
DAMAGE_SPLIT = 105 / разделение урона
SWING_MISSED = 201 / аналогично, промахи.
RANGE_MISSED = 202
SPELL_MISSED = 203
SPELL_PERIODIC_MISSED = 204
SPELL_HEAL = 301 / прямое исцеление
SPELL_PERIODIC_HEAL = 302 / исцеление ХоТами
SPELL_CAST_START = 601 / события начала/успешности/провала каста заклинания
SPELL_CAST_SUCCESS = 602
SPELL_CAST_FAILED = 603
SPELL_INTERRUPT = 701 / прерывание
SPELL_DISPEL = 702 / диспелл
SPELL_DISPEL_FAILED = 703 / провал диспелла
SPELL_STOLEN = 704 / похищение
MISS TYPES / Типы промахов/неудач
MISS_ABSORB = 1 / поглощение
MISS_DODGE = 4 / уворачивание
MISS_IMMUNE = 6 / иммунитет
MISS_PARRY = 8 / парирование
MISS_RESIST = 9 / сопротивление
MISS_REFLECT = 10 /отражение
powerType = число. Тип ресурса
Константы для ресурсов
POWER_HEALTH = -2 / Хп
POWER_MANA = 0 / Мана
POWER_RAGE = 1 / Ярость
POWER_FOCUS = 2 / Фокус
POWER_ENERGY = 3 / Энергия
POWER_RUNES = 5 / Руны
POWER_RUNIC_POWER = 6 / Сила рун
POWER_SOUL_SHARDS = 7 / Осколки душ
POWER_POWER_ECLIPSE = 8 / Сила затмений
POWER_HOLY_POWER = 9 / Сила света
isCritical = Boolean: Флаг критичного значения
isCrushing = Boolean: Флаг дробящего удара
isGlancing = Boolean: Флаг скользящего удара
spellId = Число: ID заклинания
spell = Строка: Название заклинания
school = Число: Школа заклинания
Константы школ
PHYSICAL = 1 / физический урон
HOLY = 2 / Свет
FIRE = 4 / Огонь
NATURE = 8 / Природа
FROST = 16 / Лёд
SHADOW = 32 / Тень
ARCANE = 64 / Тайная магия
Количественные характеристики
amount = количество
absorbed = поглощенный урон
blocked = заблокированный урон
resisted = сопротивление
overheal = избыточное исцеление
overkill = смерти
healingDone = Эффективное исцеление (amount — overheal + absorbed)
damageTaken = Полученный урон (amount + absorbed)
Участники событий
sourceName = Строка. Имя источника (игрока, босса)
targetName = Строка. Имя цели
sourceType = Строка. Тип тип источника
targetType = Строка. Тип цели
Константы типов участников
"Player" — игрок
"Creature" — существо
"Pet" — питомец
"Vehicle" — транспортное средство
"Unknown" — тип неизвестен
sourceIcon = Число: Рейдовая иконка источника
targetIcon = Число: Рейдовая иконка цели
Константы для редойвых иконок
ICON_STAR = 1 / Звезда
ICON_CIRCLE = 2 / Круг
ICON_DIAMOND = 4 / Ромб
ICON_TRIANGLE = 8 / Треугольник
ICON_MOON = 16 / Полумесяц
ICON_SQUARE = 32 / Квадрат
ICON_CROSS = 64 / Крест
ICON_SKULL = 128 / Череп
Разберем несколько примеров использования этого редактора.
Бейлрок нормал. Допустим, нам интересно как друид набирает стаки искры в начале боя.
Нам нужно указать заклинание (spell="Целительная искра") и имя друида (sourcename="Ниита"). Т.к. нужно одновременное выполнение условий, свяжем их логическим оператором AND. В результате получим:
Цитата
[23:05:53.331] Ниита gains Целительная искра from Ниита
[23:05:54.505] Ниита gains Целительная искра (2) from Ниита
[23:05:55.711] Ниита gains Целительная искра (4) from Ниита
[23:05:56.522] Ниита gains Целительная искра (6) from Ниита
[23:05:57.718] Ниита gains Целительная искра (8) from Ниита
[23:05:58.909] Ниита gains Целительная искра (11) from Ниита
[23:05:59.761] Ниита gains Целительная искра (14) from Ниита
[23:06:00.926] Ниита gains Целительная искра (17) from Ниита
[23:06:02.133] Ниита gains Целительная искра (21) from Ниита
sourcename="Ниита" and (spell="Целительная искра" or fulltype=SPELL_HEAL), а результат таким:
Цитата
[23:05:52.926] Ниита Восстановление Волчонка +*0* (O: 25980)
[23:05:53.331] Ниита gains Целительная искра from Ниита
[23:05:54.120] Ниита Восстановление Волчонка +*0* (O: 25899)
[23:05:54.505] Ниита gains Целительная искра (2) from Ниита
[23:05:55.339] Ниита Восстановление Волчонка +*0* (O: 25205)
[23:05:55.711] Ниита gains Целительная искра (4) from Ниита
[23:05:56.132] Ниита Восстановление Волчонка +*0* (O: 25110)
[23:05:56.522] Ниита gains Целительная искра (6) from Ниита
[23:05:57.368] Ниита Восстановление Волчонка +5567 (O: 7322)
[23:05:57.718] Ниита gains Целительная искра (8) from Ниита
[23:05:58.550] Ниита Восстановление Волчонка +0 (O: 12358)
[23:05:58.909] Ниита gains Целительная искра (11) from Ниита
Второй пример. Посмотрим, был ли за время боя магический удар на 100к со стороны босса?
Простой объединение трех условий даст нам: sourcetype="Creature" and fulltype=SPELL_DAMAGE and amount>100000
Цитата
[23:06:15.541] Осколок мучений Мучение Волчонка 160219 (O: 15214, R: 53748)
[23:07:56.690] Бейлрок Крушащая атака Старыйхрофт 625045
За кадром данного опуса остались как минимум Log Browser и рассмотрение хилеров. Log Browser это смесь Analyze и Expression Editor, разобравшись с этими двумя — вы легко разберетесь и с браузером. Ну а оценки хилеров полностью идентичны ДД.
Пожалуй на этом обзор возможностей WoL можно закрыть. Надеюсь кому-нибудь данная заметка будет полезна. Спасибо за внимание
комментарии (17)