mafk (mafk) wrote in world_of_tanks,
mafk
mafk
world_of_tanks

парсер реплеев 0.7.1


Обещанный парсер для разбора реплеев для версии 0.7.1 находится по адресу: http://archive.wotreplays.ru/parser.py.txt

Некоторые замечания.
1. Парсер писался несколькими людьми. Если они захотят - отредактирую пост и добавлю ники/имена.

2. Поскольку всё это делалось на протяжении нескольких месяцев разными людьми - код реально трудно читаем (кривой) и требует переделки/оптимизации. Лично для меня это вторая в жизни попытка писать на питоне, поэтому за красоту и читабельность кода извиняйте :)

3. Переписывать некогда и лень. Если кто-то захочет причесать код в нормальный вид - могу помочь, рассказать откуда что берётся, почему и зачем. Пишите в личку. Будет время - возможно, перепишу сам. Но пока нет времени и нет мотивации на то чтобы это время выделить.

4. Посмотреть вывод скрипта можно по "секретной ссылке" на нашем сайте (вывод скрипта в html-комментариях):
view-source:http://archive.wotreplays.ru/cgi-bin/replay.cgi?n=95748
95748 - это айдишник реплея на нашем сайте.

5. Коды медалей (список "medals"):

34 Воин
35 Захватчик
36 Снайпер
37 Защитник
38 Стальная стена
39 Поддержка
40 Разведчик
49 Медаль Бёльтера
50 Медаль Орлика
51 Медаль Оськина
52 Медаль Халонена
53 Медаль Бурды
54 Медаль Бийота
55 Медаль Колобанова
56 Медаль Фадина
57 Эксперт
58 Стрелок
59 Неуязвимый
60 Живучий
61 Рейдер
62 Коса смерти
63 Бронебойщик
64 Камикадзе
66 Зверобой
67 Гроза Мышей

6. Список "kills" содержит информацию о том кто кого убивал в формате [[кого, кто, 0], [кого, кто, 0], ... ] в хронологическом порядке. Пример:
"kills": [[174097609, 174097602, 0], ... ]
Чиселки - это локальные айдишники игроков (см. ниже).

7. Локальный айдишник игрока (local_id), берётся из списка игроков. Структура списка игроков следующая:
"teams": {
"team1": [
{"tank": {"type": "heavyTank", "name": "T30", "weight": "145.00", "level": 10}, "name": "belyi123", "killed_by": 50198109, "nation": "usa", "local_id": 50198114, "frags": 1, "id": 899288},
...
],
"team2": [
...
]
}

8. "team1" - первый респ, "team2" - второй респ. Сам игрок, понятно, может находиться либо там, либо сям.

9. Вопросы - в комменты.

Tags: реплеи, техническое
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 

  • 11 comments