ЧТО ТАКОЕ XVM

ЧТО ТАКОЕ XVM World of Tanks

XVM — сборник модификаций для World of Tanks
позволяющий кастомизировать интерфейс под нужды пользователя. Этот мод включает в себя расширенную командную статистику, изменение прицела, упрощение миникарты и многое другое. Сейчас мы расскажем как установить XVM и подробно разберем его функционал.

ЧТО ТАКОЕ XVM

Сетевые сервисы XVM
 — это дополнительные возможности модификации, требующие доступа к серверу XVM, такие как:

  • Статистика игроков
  • Обмен данными с союзниками (XMQP)
  • Заметки и переименование контактов
  • Иконки кланов
  • Флаги игроков

Активация сетевых сервисов

Для использования сетевых сервисов XVM необходимо активировать их в личном кабинете на официальном сайте XVM: ModXVM.com

ЧТО ТАКОЕ XVM

После входа нажмите на кнопку «Активировать сервисы» в разделе настроек:

ЧТО ТАКОЕ XVM

Теперь вы увидите срок действия вашего доступа к сетевым сервисам. Вы можете бесплатно продлить его в любой момент:

ЧТО ТАКОЕ XVM

Чтобы завершить активацию, зайдите в игру с того же аккаунта, для которого вы активировали сервисы.

На данный момент доступны следующие сетевые сервисы:

Обмен информацией с союзниками (XMQP)

XMQP — это удобный и очень полезный интерактивный сервис, обеспечивающий обмен дополнительной информацией с союзниками.

Например, благодаря XMQP можно рисовать на мини-карте, увидеть статус перевернувшегося союзника, которому нужна ваша помощь, или узнавать о срабатывании навыка «шестое чувство» товарища по команде.

Комментарии и переименование контактов

Сервис позволяет добавлять произвольные заметки к игрокам, разделять контакты по группам и изменять отображаемый ник.

comments_and_groups_contacts_list
Пример отображения комментария и изменённого ника в списке контактов
Окно-контактов-#3
Пример сортировки контакт-листа по группам (концепция из процесса разработки)

SmakKiller

Сколько мне не объясняли я так и не понял что такое XVM. Скажите с чем его едят и как его использовать, где взять? Нужно ли это вообще новичку мира танков? Буду очень рад подробному объяснению. На большинство своих вопросов я не получаю достойного ответа. Лузеры не надо отвечать одной фразой. Необходима инфа от знающего человека.

Аватар

Аватар

Привет XVM это мод в игре что бы вы могли видеть вашу статиску как в бою так и после и так же вы видите статистику всех игроков. перейдите вот на этот официальный сайт и авторизуйтесь http://www.modxvm.com/

Аватар

ХВМ это простыми словами мод дающий кучу в себе мелких модов. Но игроки используют его в одном для основной цели, это показ статистики игрока в реальном времени в бою, какой он, по цветовой гамме можно определить скилл игрока, к примеру красный – игрок плохо играющий, бирюзовый – игрок тащит половину боев на спине к победе, если с кустика не постреливает. Как поставить и настроить долго писать, зайдите на официальный сайт хвм там есть понятная инструкция

Аватар

Нужен он в основном для того, чтобы видеть статистику других игроков. Процент побед и рейтинг (ВарГейминга или WN8) прямо в бою. Соответственно определять кто из игроков «статист», а кто «рак».

Аватар

XVM-это мод,показывающий статистику игроков в бою,т.е. ты заходишь в бой и видишь какой винрейт,вн8,кпд и количество боёв у твоих союзников и противников. Установить можно на сайте xvmУдачи на полях сражений и в жизни!

В этой статье мы расскажем вам как установить XVM и настроить его.

Можно выбрать как автоматический установщик, так и архив для ручной установки.

  • Если вы скачали автоматический установщик, запустите его и следуйте инструкциям.
  • Если вы скачали zip-архив, откройте его и распакуйте файлы из папки, соответствующей вашему игровому клиенту в папку с игрой:
    • lesta
      для игроков региона RU (Россия)
    • wg
      для игроков регионов NA (Америка), EU (Европа), ASIA (Азия)

Готово! Модификация установлена и готова к работе со встроенными настройками.

Возможно вам захочется настроить XVM «под себя» или включить дополнительные возможности мода.

Включение сетевых сервисов (статистика и другие)

Включение статистики и остальных сетевых сервисов XVM подробно описано в статье « Сетевые сервисы XVM
».

Подключение редактируемых настроек

Чтобы самостоятельно настраивать свежеустановленный XVM, в папке /res_mods/configs/xvm/
переименуйте файл xvm.xc.sample
в xvm.xc
.

Если файл xvm.xc
отсутствует, будут использоваться стандартные настройки, встроенные в мод.

Чтобы ваши настройки не перезаписывались с каждым обновлением XVM, переименуйте папку default
в любое другое удобное для вас имя и обновите путь, указанный в файле xvm.xc
. Например, если вы переименовали папку в MyConfig
, в файле xvm.xc
замените строку

   ${"default/@xvm.xc":"."}  
  
   ${"MyConfig/@xvm.xc":"."}  
  

Теперь файлы настроек в вашей новой папке MyConfig
можно редактировать.

Инструкции находятся в комментариях внутри файлов настроек.

Если у вас возникли вопросы в процессе настройки, смело задавайте их на форуме поддержки в разделе « Вопросы о настройке XVM
».

Также не забывайте делиться своими крутыми и удобными настройками с другими пользователями! Опубликуйте их в разделе « Готовые настройки XVM
», и многие другие пользователи будут вам благодарны 🤗

Также вы можете воспользоваться готовыми настройками от активных пользователей мода. Такие настройки публикуются и обновляются в специальном разделе форума поддержки: « Готовые настройки XVM
».

Если у вас возникли дополнительные вопросы о моде XVM, ознакомьтесь с ответами на часто задаваемые вопросы
и смело обращайтесь официальный форум поддержки пользователей XVM
. Перед созданием тем с вопросами прочтите эту тему
. Она поможет вам разобраться в том, как правильно оформлять свои вопросы, чтобы максимально быстро получить ответы на них.

XVM
— это самый популярный мод для Мира Танков (World of Tanks) с многолетней историей и множеством возможностей для тонкой и гибкой настройки игры.

Принять участие в разработке мода может каждый. Присоединяйтесь
!

Также вы можете поддержать проект
и поспособствовать его стабильной поддержке.

С момента создания XVM активно развивается не только как мод для Мира Танков, но и как многофункциональный онлайн-сервис.

Длительная кропотливая разработка привнесла в XVM широкое разнообразие настроек и удобств.

Вот лишь некоторые из них.

Маркеры над танками

OTM в XVM
Маркеры над танками в XVM

Маркеры над танками в XVM
очень легко и гибко настраиваются.

Широкий набор настроек, поддержка HTML и CSS в текстовых полях, обширный выбор предустановленных макросов стилей и данных — все эти возможности помогут сделать ваши собственные настройки маркеров максимально информативными и удобными именно для вас.


Логи урона

xvm hitlog
Пример настройки лога нанесённого урона

Лог наносимого и полученного урона в реальном времени — одна востребованных функций мода.

Почти с самого момента появления игры World of Tanks пользователи запрашивали такую возможность. Теперь, благодаря XVM, она доступна для всех.

Возможности тонкой настройки при помощи набора макросов и поддержки HTML и CSS позволяют оформить лог в неповторимом, подходящем именно для вас стиле.

Попробуйте и убедитесь сами 😉


Замена лампочки навыка «шестое чувство»

Шестое чувство
Примеры пользовательских «лампочек» для Мира Танков

С помощью XVM вы можете легко заменить стандартное изображение лампочки навыка «шестое чувство» на более подходящую и привлекательную иконку.

Особенно такая возможность пригодится тем, кто часто не замечает стандартный вариант из-за недостаточной яркости и не самого удобного положения в интерфейсе.

Процесс добавления предельно прост: для использования собственного изображения «лампочки» необходимо просто разместить его по следующему пути:

  res_mods/mods/shared_resources/xvm/res/SixthSense.png  

Обратите внимание, что файл обязательно должен быть в формате PNG.

Про WoT:  Большие бесплатные ящики к 2022 и какие танки будут в новогодних ящиках 2022 в WoT и вероятность их выпадения. Новые имбы для рандома

Панели игроков, таблицы статистики и экран загрузки

Уши и экран загрузки в XVM
Пример панели игроков и экрана загрузки в XVM. Пользовательские конфигурации.

Экран загрузки боя в XVM помогает оценить обстановку предстоящего сражения и придумать план действий ещё до начала раунда.

XVM расширяет информативность и полезность экрана загрузки. Отображение статистики игроков позволяет быстро и точно оценить соотношение сил и принять правильное решение в начале боя.

Также информацию о статистике игроков вы можете выводить и в боевых списках игроков: в так называемых «ушах» (боковых панелях) и в таблице боевой статистики, которая открывается по нажатию клавиши Tab ↹
.

По умолчанию статистика игроков в моде окрашивается в соответствии с регулярно обновляемыми цветовыми границами
.

В случае необходимости все значения статистики, а также ники игроков и название техники могут быть окрашены с использованием ваших собственных настраиваемых цветовых градаций.

В кругу неопытных пользователей мод XVM широко известен под названиями « оленемер
», « оленеметр
», « пользомер
», « пользометр
», « нубометр
».

Эти «народные» названия описывают всего лишь одну из множества возможностей мода, поэтому для ясности мы рекомендуем использовать официальное название мода — XVM.


Иконки кланов и игроков

Иконки кланов и игроков в XVM: пример использования
Иконки кланов и игроков в XVM: пример использования

С XVM вы можете не только использовать картинки в текстовых полях с поддержкой HTML, но и назначать собственные иконки конкретным кланам и игрокам.

Например, таким образом можно отметить друзей, кланы союзников, противников, или самые известные кланы игры.

Использовать иконки очень просто.

Достаточно разместить иконку в формате png с ником игрока или тегом клана в названии в специальную папку:

  \res_mods\mods\shared_resources\xvm\res\clanicons\  <регион>  
\  <тип_иконки>  
  

Вместо <регион>
необходимо выбрать папку с именем вашего регионального кластера.

Вместо <тип_иконки>
— папку с типом привязки (по клану или по нику).


Улучшенные индикаторы захвата базы

Мод полосы захвата в XVM
Индикаторы захвата баз в XVM могут отображать количество захватчиков и ориентировочное оставшееся время захвата.

Полоса захвата в XVM также подверглась изменениям. Благодаря моду стало возможным отображение количества захватчиков и ориентировочного времени до окончания захвата с учётом текущей скорости.

Визуальная часть отображаемой информации настраивается при помощи HTML-разметки, аналогично другим текстовым полям в XVM. Вы сможете полностью изменить выводимую информацию и тонко настроить стиль отображения так, как будет удобно именно вам.


Улучшенная миникарта

Minimap mod in XVM
Миникарта в XVM умеет отображать название техники, ники игроков, иконки пропавших из засвета танков, настраивать отображение , луча направления орудия, радиусов обзора и других элементов миникарты.

Мод миникарты в XVM завоевал огромную популярность ещё в тестовой версии мода, до его появления в официальном релизе.

Широкие возможности кастомизации миникарты позволяют настроить её максимально удобно.

Благодаря XVM миникарта не ограничена в своих размерах: пользователи экранов с различными разрешениями могут масштабировать её по своим предпочтениям не упираясь в стандартные ограничения игрового интерфейса.

Круги дальности засвета помогут вам более точно выбирать позицию и быстрее ориентироваться в бою учитывая не только боевую ситуацию, но и характеристики обзора вашей машины. Полезной для многих игроков и просто незаменимой для командиров стала возможность использовать названия танков и укороченные ники игроков рядом с иконками техники.

Иконки последнего местонахождения противника в момент его ухода из засвета помогут держать в голове более полную картину боевых действий.

И конечно же, в любых текстовых полях миникарты вы можете использовать не только стандартные макросы и текст, но и встраивать изображения с помощью тега <img>

Время на прочтение

ЧТО ТАКОЕ XVM


ЧТО ТАКОЕ XVM

Приветствуем, уважаемое хабрасообщество! По случаю старта конкурса
от Wargaming мы решили, во-первых, в нем поучаствовать, а, во-вторых, написать серию статей о том, как мы докатились до создания одной из самых популярных модификаций World of Tanks и как хобби с парой строк говнокода за вечер переросло в то, что мы имеем. В статьях описаны все встреченные (и опробованные на себе) грабли. Еще одним поводом для написания статьи было зарытие топора войны между XVM и Wargaming и выходом наших отношений на новый уровень — мы рады, что эта статья опубликована именно в блоге WG. Надеемся, что само чтиво вышло интересным, а другие конкурсанты смогут почерпнуть для себя что-нибудь полезное.


Когда я только начинал играть в World of Tanks в начале 2011 года, то, естественно, не заморачивался по поводу модов. Я даже не знал о том, что они существуют. Но есть у меня такая привычка: если какая-то игра мне нравится (то есть, не удаляется после первой же игровой сессии), то я стараюсь узнать об этой игре как можно больше, для чего лезу на тематические форумы. На этом самом
форуме я узнал о существовании модов и решил попробовать. Неделю перебирал все эти прицелы, шкурки, иконки техники, разные озвучки и все больше и больше мне это не нравилось. Вроде бы все неплохо, но чего-то не хватает, хочется подкрутить. Почти все моды удалялись после первого же тестового боя. Но как-то раз я наткнулся на мод под незатейливым названием OTM.

OTM

Он же — Over Target Markers. Эта штука заменяла стандартные маркеры танков на свои (маркеры — это те самые полосочки HP, класс техники и другие, находящиеся над всеми танками).

ЧТО ТАКОЕ XVM

Самой главной фишкой на тот момент было то, что OTM добавлял эти самые полоски ХП, которых в стандартных маркерах не было. При использовании стандартных маркеров единственной возможностью узнать количество ХП вражеской и союзной техники было наведение курсора мыши на нее и чтение хинта. Найти «подранка», по которому следует сосредоточить огонь, было проблематично: приходилось водить мышью по полю боя, вместо того чтобы сосредоточиться на стрельбе и маневрировании. С OTM же ситуация на поле боя была буквально как на ладони. Но и это еще не все: у мода был конфиг в виде файла OTMData.xml, позволявший настраивать внешний вид и поведение маркеров! От версии к версии количество настраиваемых элементов росло. Конфигом можно было поделиться, чем народ активно занимался на тематических ресурсах. Мод стоял у многих танковых ютуберов, что немало способствовало его популярности.

В общем, это был первый мод, который я не удалил после первого боя. Вместо этого я за пару вечеров настроил его именно так, как мне того хотелось, и играл с удовольствием до следующей заинтересовавшей меня штуки.

Оленемер

Итак, запоминайте (а лучше — записывайте!), что было нужно для установки (близкая к оригиналу инструкция
):

  1. Скачать и распаковать архив.
  2. Содержимое одной из директорий архива скопировать с заменой в папку клиента игры. ( Тут надо упомянуть, что на тот момент это было обычным делом для всех модов, так как папки res_mods и, соответственно, поддержки модов со стороны разработчиков игры еще не было.)
  3. Установить какую-нибудь WAMP сборку. ( Да-да, это где Apache, MySQL и PHP. Вообще-то MySQL тут был не нужен, но ставить сборку явно проще.)
  4. В корень веб-сервера нужно было положить скриптик из другой директории архива. Скриптик представлял собой WebDAV сервер с небольшими изменениями.
  5. Создать в Windows сетевой диск и подключить его к созданному на предыдущем шаге серверу командой

    > net use t: localhost/local_server/server.php

    либо через мастер.

  6. Установить штуку под названием Dokan (аналог FUSE для Windows).
  7. С помощью утилиты mirror.exe из комплекта Dokan выполнить зеркалирование диска t: в r: Это приводило к появлению в системе еще одного диска — точной копии сетевого из шага 5, но который система считала локальным.
  8. В каталоге res\gui\flash клиента WoT создать символьную ссылку с именем stat, показывающую на каталог r:\user командой

    > mklink /D c:\games\World_of_Tanks\res\gui\flash\stat r:\user\

  9. На этом пункте наконец можно было запустить клиент и насладиться работой мода.

ЧТО ТАКОЕ XVM

Сам мод этот показывал ни много ни мало процент побед сокомандников и противников. Причем прямо в бою и прямо в ушах («уши» — это панельки по бокам экрана со списком игроков), применяя самую настоящую цветовую дифференциацию. Честно говоря, первой реакцией, когда я воочию увидел работу мода, была отвисшая челюсть: неужели это все вообще работает?! Еще ниже челюсть отвисла, когда я бой за боем наблюдал количество тех самых представителей фауны, давших название моду.

Хотя стоп. Вы себе представляете, чтобы типичная ЦА «танков» сумела выполнить первые восемь пунктов установки мода без ошибок? Ожидаемо, тема с этим модом на официальном форуме была одной из самых быстрорастущих.

Объяснив нескольким товарищам, как же это все настроить, я понял, что это тупик, и надо все как-то упрощать. Первая мысль была избавиться от WAMP. Тут я подумал, что от PHP, по сути, требуется только WebDAV-сервер, который явно можно сделать много чем.

Пару слов о том, для чего был нужен этот диск. Пользовательский интерфейс World of Tanks сделан на Action Script. Идея мода — взять нужный AS-файл, декомпилировать его, изменить то, что хочется, скомпилировать и залить обратно. Оленемер был сделан так же — раскрашивал строки ушей в цвета, соответствующие статистике игрока. Вопрос только, как эту статистику получить с сервера мода? Самый очевидный ответ: запросить по http! Да, но есть одно «но»: AS работает в песочнице (причем этих песочниц несколько — для разных частей интерфейса), и у этой песочницы заблокирован выход в сеть. Зато есть доступ к файловой системе по относительным путям. И из-за этого пришлось городить огород с дисками, серверами и линками.

Работа выглядела так:

  1. AS скрипт получает список игроков, которых надо нарисовать в ушах.
  2. Для каждого игрока читается файл stat\<ник игрока>
  3. Так как stat — это линк, то реально читается R:\user\<ник игрока>
  4. . NET приложение получает запрос на чтение файла, формирует http-запрос на сервер мода (о котором в следующей статье).
  5. Получив ответ, выдает его в виде «контента файла» AS-скрипту.

Это нехитрое усовершенствование увеличило число пользователей нового мода на порядок. В оригинальной теме, если задавался вопрос об установке, чаще всего отправляли в мою тему с «упрощенной установкой».

Сбор команды и XVM

Тем временем количество пользователей мода росло, а на скорую руку написанный сервер, хостящийся на дешевом VPS, стал не справляться с нагрузкой.

ЧТО ТАКОЕ XVM

Как раз в то самое время я для собственных нужд арендовал в Hetzner самый дешевый «выделенный» сервер (EQ4: Intel Core i7-920, 8 GB DDR3, 2x 750 GB SATA II HDD). Видя такое безобразие с понравившимся мне модом, связался с камрадом bkon
и предложил посильную помощь с хостингом.

Через несколько дней сервер был благополучно установлен, и на некоторое время пользователи получили относительно безглючную работу мода.

В феврале-маре 2012, одновременно с этим был сделан форум на том же самом сервере для технической поддержки и обмена конфигами.

Небольшой исторический экскурс. Изначально идея и первые реализации OTM принадлежат Nicolas Siver
. В ноябре 2011 года ему это дело, похоже, поднадоело, и эстафету подхватили камрады sirmax
и bkon
, выпустив OTM для клиента танков версии 0.6.7. У них же возникла идея оленемера. Sirmax
( sirmax2
) по сей день является основным разработчиком клиентской части XVM.

В январе 2012 к команде присоединился и я: сначала в качестве хостера, чуть позже — в качестве разработчика серверной части, а затем — и вспомогательных систем (к примеру, виджет активации статистики).

В середине 2012 из команды как-то незаметно ушел bkon
, зато появились: Mr 13
( Wayfarer
) — CEO и PR, XlebniDizele4ku
( ilit
) — разработчик клиентской части, Mr A
— помощь в разработке клиентской части и сборка релизов, Mixaill
( Mixaill
) — организация непрерывной интеграции (ночные сборки), взаимодействие с переводчиками клиентской части, q4x2
— *nix специалист и разработчик серверной части.

И пару слов о том, почему, собственно, были удалены темы с описанием модификаций на официальном форуме. С ростом популярности мода росло и число прецедентов, так сказать, неспортивного использования: оскорбления игроков с низкой статистикой, либо, наоборот, со слишком высокой. Оскорбленные игроки шли на тот же официальный форум и плакались/требовали/угрожали и всяческими способами добивались запрета этого «обидевшего» их мода. Спустя некоторое время «без объявления войны» (то есть, без какого-либо предварительного контакта с разработчиками мода) все темы, относящиеся к оленемеру и XVM были удалены, а в правила форума был внесет запрет на публикацию ссылок на любые моды, отображающие статистику. Официальная причина таких запретов: моды создают дополнительную нагрузку на серверы WG. Любая попытка как-то урегулировать конфликт и снять запрет наталкивалась на синдром вахтера у модераторов (сказано удалять — мы удаляем), или отписки менеджеров.

Мы предлагали различные компромиссные варианты: ограничить частоту запросов до заданной величины. Ввести расписание, когда мы будем слать запросы — все упиралось в глухую стену. Подолбившись в нее пару месяцев мы оставили эти попытки, и просто разделили XVM на XVM-full и XVM-light. В light-версии было вырезано все, что относится к отображению статистики. Этим самым, мы формально не попадали под запрет (с лайт версией, разумеется): вахтеры нас особо не трогали, и канал привлечения новых пользователей через официальный форум снова заработал.

Конфиг и редактор

Как уже было сказано выше, у OTM и, соответственно, XVM был конфиг-файл. Сперва он был в формате XML: OTMData.xml. Настроек было немного, и хватало ручных правок в любом редакторе. Со временем количество настроек росло, как и популярность, и стали очевидны две вещи:

  1. XML не слишком удобен для ручных правок.
  2. Какой бы формат мы ни выбрали, нужен WYSIWYG-редактор.

С редакторами история получилась такая: времени на них вечно не хватало (да и сейчас не хватает), потому они часто не успевают за последними фичами в самом моде. Самый первый редактор был сделан на Adobe Air все тем же Nikolas Siver
. Когда эстафета перешла к нашей команде, редактор мы достаточно долго не трогали, и он, по сути, перестал представлять собой серьезную ценность, так как не содержал в себе большого количества актуальных настроек. В какой-то момент я даже попытался сделать редактор на HTML/JS, но ничего интересного из этого не получилось.

Не забыли мы и про обратную совместимость. Во-первых, клиент при отсутствии конфига нового формата искал и загружал старый OTMData.xml (причем эту фичу выпилили совсем недавно, так что времени на миграцию было более чем достаточно). Во-вторых, в онлайн-редакторе до недавнего времени можно было открыть конфиг старого формата, а сохранить уже в новом.

Весной 2013 года назрела еще одна необходимость: из-за увеличения количества настраиваемых фич конфиг с каждой версией разрастался и разрастался. В результате ориентироваться в нем стало проблематично, плюс стало проблематично находить ошибки типа пропущенных запятых или скобок. Напрашивалось разделение файла с конфигом на несколько отдельных файлов, но формат JSON, в отличие от XML, не позволяет делать ссылки между файлами. Решением стало расширение формата JSON, которое мы назвали JSONx.

Собственно, изменение было только одно — в качестве значения можно указать ссылку на произвольный объект в этом или в другом файле. Есть два варианта записи: короткий и расширенный:

короткий —

   “name”: ${“file”:”path”}
  
  
   “name”: { “$ref”: { “file”: “<filename>”, “path”: “<path-to-value>” }, [overrides] }
  
  

Короткий формат является частным случаем расширенного. Расширенный формат добавляет возможность переопределения значений, унаследованных из подстановки. Параметр “file” не обязательный: если он не указан, значение будет искаться в текущем файле. Параметр “path” указывает путь к значению по иерархии документа, разделенный точками.

Можно рассмотреть это на примере:

root.xc:

   {
  "configVersion": "5.1.0",
  "colors": ${"colors.xc":"colors"},
  "colors2": {
    "$ref": { "path": "colors" },
    "ally_dead": "0x009900",
    "enemy_dead": "0x840500"
  }
}
  
  
   {
  "def": {
    "al": "0x96FF00", // союзник
    "en": "0xF50800" // противник
  },
  "colors": {
    "ally_alive": ${"def.al"},
    "ally_dead": ${"def.al"},
    "enemy_alive": ${"def.en"},
    "enemy_dead": ${"def.en"}
  }
}
  
  

Здесь получается следующее:

  1. Начинает грузиться root.xc.
  2. Параметр «colors» файла root.xc ссылается на файл colors.xc, и подставляет из него объект “colors”.
  3. Параметры в секции «colors» файла colors.xc ссылаются на значения “def.al” и “def.en” того же файла.
  4. Параметр «colors2» файла root.xc ссылается на объект “colors”, копирует его значение и переопределяет значения «ally_dead» и “enemy_dead» другими.

В результате получается валидный JSON, который парсится по стандартным правилам:

   {
  "configVersion": "5.1.0",
  "colors": {
    "ally_alive": "0x96FF00",
    "ally_dead": "0x96FF00",
    "enemy_alive": "0xF50800",
    "enemy_dead": "0xF50800"
  },
  "colors2": {
    "ally_alive": "0x96FF00",
    "ally_dead": "0x009900",
    "enemy_alive": "0xF50800",
    "enemy_dead": "0x840500"
  }
}
  
  

Расширение файлов конфига было изменено на .xc (от «xvm config»), и загрузочный файл конфига стал называться xvm.xc. Отдельные файлы и папки с говорящими названиями отвечают за отдельные элементы интерфейса. Это так же позволяет довольно легко собрать свой собственный конфиг, используя отдельные понравившиеся элементы.

Поддержка пользователей

Мы изначально понимали, что XVM несколько сложнее в установке, чем основная масса модов (это даже породило мем «Оленемер начинает работу уже в процессе установки»), и что без поддержки много аудитории мы не соберем.

Для уменьшения нагрузки на поддержку мы даже разделили XVM на XVM-full и XVM-light. В light-версии было вырезано все, что относится к отображению статистики. Соответственно, этим игрокам не нужно было ставить ни Dokan, ни . NET-приложение, что серьезно упрощало установку.

Самая первая поддержка осуществлялась на официальном форуме World of Tanks. Это было не очень удобно — как минимум, у нас не было возможности модерации и закрепления тем, темы перемешивались с другими, не имеющими к нам никакого отношения. Поэтому почти одновременно с переездом на первый выделенный сервер (январь 2012) на нем же был установлен первый форум техподдержки. Самый обычный phpBB «из коробки». Тем не менее, он выполнял свою функцию до одного ЧП.

ЧП заключалось в том, что нам понадобилось отресайзить разделы в файловой системе. Зачем — никто уже и не помнит, но было нужно. Спецов у нас тогда не было, решили обойтись своими силами. Результатом сего действа был разваленный рейд при (сюрприз!) отсутствии актуального бекапа.

ЧТО ТАКОЕ XVM

Положительным моментом этого инцидента стало появление в нашей команде Mr 13
(он делает бекапы!), который по совместительству является владельцем форума Korean Random
, на базе которого сейчас и находится главный ресурс поддержки XVM.

Осенью 2012 у мода появилось лицо в виде собственного сайта http://www.modxvm.com/
. На сайте размещен джентельменский набор любого ресурса: описание, ссылки, новости, FAQ. Туда же переехал онлайн-редактор конфигураций. Со временем сайт был переведен на английский, немецкий, французский и украинский языки. Также сайт помог снизить затраты личных средств на развитие XVM, так как пожертвования добровольцев не могли окупить и малой части затрат на поддержание и развитие проекта. Но была тут некоторая нестыковка. Мы по своим метрикам видели, что число уникальных пользователей XVM каждый месяц увеличивается, в какой-то момент оно перевалило за миллион, а число уников в месяц на сайте было меньше 100К.

Причину мы и так знали — модпаки. Модпаки — это продвигаемые разными личностями сборки модов имени себя. Сам XVM в эти сборки включали охотно, но только не ссылки на него. Доходило даже до того, что надпись на экране загрузки боя со ссылкой на наш сайт заменяли на свою. Нас это паразитирование не устаивало, и мы сделали добровольно-принудительную активацию модуля статистики на нашем сайте.

Происходит это так:

  1. Пользователь заходит на сайт XVM.
  2. Логинится, используя Wargaming.net ID (OpenID).
  3. Благодаря этому мы узнаем игровой ник и ID пользователя и проставляем для него признак «запрошен токен».
  4. После этого пользователь запускает игровой клиент с установленным XVM. Мод при старте отправляет запрос в метод /checkToken
    . В ответ пользователю со статусом «запрошен токен» отправляется собственно токен (GUID), иначе только статус «активен» либо «не активен» — в зависимости от того, есть ли у этого клиента активные токены или нет. Полученные токены сохраняются клиентом в \res_mods\xvm\db\tokens.xdb
    .
  5. Далее при каждом запросе к нашему API клиент также отправляет этот токен.
  6. Если токен отсутствует или просрочен (а срок его действия составляет две недели) — данные не отдаются, а клиент показывает сообщение об ошибке с предложением зайти на сайт мода и активировать статистику.
  7. Клиент может получить до пяти токенов, если играет своим аккаунтом на нескольких ПК.

Активация дала нам как минимум два эффекта:

  1. Посещаемость сайта сравнялась с количеством пользователей мода.
  2. Примерно на 30% упала нагрузка на сервер статистики.

По второму пункту у нас такое мнение: части пользователей все тех же модпаков статистика была не нужна, но они ей пользовались только потому, что она была включена по умолчанию в большинстве этих самых паков.

На этом мы завершаем первую часть нашей статьи. Впереди вас ждет подробный рассказ о нелегком пути нашего многострадального сервера (во второй части), и развитии собственно клиентской части (в третьей, заключительной части).

Установка

  1. Откройте скачанный файл, нажмите «‎Далее»‎ до входа в настройки XVM.

Функционал XVM

Переключатель статистики — позволяет игроку выбрать любой из доступных в мод-паке дизайн панели статистики;

  1. Включить миникарту — эта функция расширяет стандартный функционал миникарты: последние места нахождения противника, круги обзора, прицел для АРТ-САУ и многое другое;

  2. Индикатор засвета в ушах — активирует индикатор обнаружения, отображаемый на командной панели; 

  3. Развернутый формат ушей команды — позволяет выбрать размеры и вид командной панели;

  4. Маркеры XVM над техникой — позволяет заменить стандартные маркеры техники на предложенные в модпаке;

  5. Лог урона и полоска HP в ушах — активирует калькулятор урона в бою и полоску очков прочности в списках команд;

  6. Заменить значок Шестое чувство — заменяет базовый индикатор обнаружения, на один из вариантов модпака;

  7. Включить карусель танков — позволяет включить сортировку танков в три ряда в ангаре;

  8. Статистика игрока в ангаре — отображает полную статистику игрока в ангаре;

  9. После того как выбрали все необходимое, пролистываем в конец и нажимаем кнопку установить.

На этом все, удачи в боях и до новых встреч.

Про WoT:  Об. 263 — Советский пт-сау X уровня
Оцените статью
TankMod's
Добавить комментарий