Master_Art (master_art) wrote in world_of_tanks,
Master_Art
master_art
world_of_tanks

Свой 1С с маджонгом и гейшами (вдогонку)

 Автор большой любитель онолитеги (профессиональная деформация), и решил поразмышлять, как, используя инструментарий ctocopok, построить свой Лас-Вегас с аналитикой и графиками.

 1. Нужна программа, отслеживающая фоном изменения файла статистики в кэше после каждого боя и прогоняющая его через скрипт ctocopok (желательно, без обращения в Интернет, т.к. сайт может упасть/закрыться при массовом обращении, ну и паранойя). Запрещать отслеживания со стороны WG противозаконно, т.к. антивирус мониторит все изменения.

2. Клиент, обнаружив изменение файла статистики, либо сворачивает окно WoT, либо оповещает звуковым сигналом о завершении боя, и, опционально, предлагает пользователю выбрать тип боя (рандом, рота, специальный) и карту, на которой проходил бой. Можно ещё указывать, какого уровня был бой (уровень техники в топе), т.к. можно проанализировать балансер и результаты игрока на разных уровнях. Танк и тип уничтоженной техники противника в конкретном бою определяется сравнением со «снимком» после предыдущего боя.

3. Также необходима опция «Премиум-аккаунт активен», т.к. влияет на опыт и доход. Определять доход и финансовый результат боя, не снимая данные из клиента (запрещено), довольно муторно – только ручками. Снимать скриншоты и снимать видео до сих пор не запрещали, что де юре означает возможность снятия скрина с деньгами после боя и сравнения с предыдущим боем, т.е. можно определять доходность техники с учётом успешности игрока. А вот брать стоимость выпущенных снарядов, ремонта и расходников без снятия логов (что запрещено) уже не выйдет. Либо вручную, либо плевать на раскрытие страшных тайн о доходности (всё равно дамаг по уровню уничтоженной техники не расписать).

4. Программа сохраняет выжимку по каждому бою в файл/файлы по типу танка с указанием даты и времени (а что, обеденные бои, вечерние бои, ночные бои, выходные или рабочие дни, только количество выпитого осталось учитывать) и, по желанию, комментарии игрока (дисконнект/клиент рухнул, калькулятор, пьяный, друг играл). Выдача в csv (чтоб в Excel загнать): можно вести сортировку, группировку и фильтрацию как душе угодно и строить от этого графики.

Подводные камни:

  1. Файл статистики обновляет время изменения дважды! В момент выхода из боя для игрока и окончания самого боя.   Статы изменились только после окончания боя. Механизм отслеживания мне тоже сложно предложить, чтоб антивирус не запаниковал. Видимо, нужна проверка на количество боёв и выведение ещё одного показателя – длительность боя полная (в файле только время жизни игрока).
  2. Бывают два-три боя одновременно, когда техника «застряла» в бою. По каждому завершённому бою надо указывать вручную тип боя и карту, что немного усложняет.
  3. Дисконнекты/падения клиента.
  4. Возможные проблемы со стороны WG, хотя де юре ни один пункт соглашения не нарушается. Дизассемблирование не ведётся, статистика игроку доступна, хотя и не в полном объёме. Снимать скриншоты, видео не запрещается. Остаётся только проблема копирования логов.
Ради интереса сделал файлик в прожорливом Excel 2003 с нужными мне данными, где на каждый бой подробно нужные мне данные. 100 листов (примерное количество танка) по 413 боёв: 26.5 Мб. В DB или даже xlsx будет заметно меньше. А если выкинуть расчётные столбцы, то можно ещё сократить.
Subscribe
  • Post a new comment

    Error

    Comments allowed for members only

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 66 comments