Делал для себя, но буду рад, если это будет полезно для вас.
Внимание! Если вам нужно изредка запустить 1-2 реплея старых версий, то не обязательно использовать Wot Selector. Достаточно открыть папку с нужным клиентом и рядом папку с реплеями. Мышкой перетащите файл реплея на worldoftanks.exe и отпустите мышку.
Зачем нужен Wot Selector:
У многих накопились старые реплеи (делаете видео, анализируете бои или просто смотрите за чашечкой чая). С каждым патчем появляются реплеи, которые несовместимы со старыми версиями игры. И, если Вы просматриваете много реплеев и они разных версий, то хочу предложить относительно несложный способ автоматического запуска реплеев в нужной версии игры (наличие самих клиентов старых версий - обязательно).
Предисловие:
Выражаю глубокую благодарность Wizard2k за программирование. Ибо в этой версии моими были только идея, надзор, тестирование и написание этого текста.
И, да, исходники прилагаются.
Что и как работает.
Требуется:
игра "World of Tanks" версий 0.7.1.1, 0.7.2... 0.9.0 и так далее. Но можете ограничиться только теми версиями, реплеи которых хотите смотреть
архив WotSelector_2014-05-10.zip102,46К Отдельний ini-файл (стараюсь обновлять под текущие версии игры)wot_paths.zip Скачайте его и положите в папку с WotSelector.exe
Не забудьте подправить пути к клиентам "World Of Tanks".
Действия:
Скачиваем архив, распаковываем, кладём получившиеся файлы в любую папку, например в "C:\Games\WoTSelector"
Открываем файл "wot_paths.ini" и правим пути к тем версиям игры, которые есть на Вашем компьютере
Находим любой реплей, нажимаем правой клавишей мышки на нём:
Открыть с помощью
Выбрать программу
Обзор
ищем, куда был положен файл "WotSelector.exe"
щелкаем по нему 2 раза
ставим галочку на "Использовать выбранную программу для всех файлов такого типа"
нажимаем "ОК"
Всё.
Теперь при клике на файл реплея будет загружаться тот клиент игры, в котором может воспроизводиться реплей.
Если захотите вернуть запуск реплеев на последнюю версию игры, то проделайте всё в том же порядке с пункта 3,только укажите на "worldoftanks.exe", который находится в папке с игрой.
Программа предоставляется по принципу "As Is" - "Как есть".
С версии реплеев 0.8.7 не надо указывать дату обновления, достаточно указать версию клиента
До версии реплеев 0.8.7 WotSelector.exe анализирует содержимое файла реплея и извлекает из него дату боя.
Сравнивает дату боя с цифрами в "wot_paths.ini" и запускает соответствующий клиент игры.
Реплеи версий 0.7.0 - 0.7.1.1 в открытом виде дату боя не содержат, поэтому, если дата в файле не найдена, то считается, что реплей версии 0.7.1.1
Пример строки из "wot_paths.ini": 2012072612=d:\Games\World_of_Tanks_0.7.4\WorldOfTanks.exe
Цифра - это год, месяц, день и час, когда мог быть сыгран последний бой в версии игры, что стоит после знака "="
С версии 0.8.7 строка выглядит так:
0.9.0=c:\Games\World_of_Tanks\WorldOfTanks.exe
Примечание:
В именах реплеев и в пути до этих реплеев допускаются русские буквы и пробелы.
История:
25.04.2014 + добавил распознование версии на основе тэга "clientVersionFromXml".
18-04-2013 При запуске создается файл %tmp%\WotReplayVersion.txt в который пишется версия EXE файла + для отлова ошибок при запуске программа ведет журнал в %tmp%\WotSelector.log.txt
20-07-2012 + добавлен MANIFEST для совместимости с Vista/Win7 + Исходники встроены в EXE файл
19-07-2012 + программа переписана с PowerShell на Delphi + первый (закрытый) релиз
Чтобы достать исходные коды просто распакуйте "WotSelector.exe" как архив.
Исходные коды использовать... разрешается. :-)
Единственная просьба - указывайте кто над ними трудился.
Если у Вас есть полный инсталлятор клиента, то показ как правильно распаковать его не устанавливая - видео тут).
Ссылка на virustotal
Кто пользуется антивирусами Panda и Ikarus? Тут есть такие? :-) А если серьёзно, то просто ложное срабатывание на Delphi.
Антивирусы DrWeb, NOD32, AVP ничего не находят. Программа проверена. Вредоносных кодов не обнаружено. Kodoku.
(12.09.2013) Эх... а так хотелось в танчики поиграть этим вечером...
ВНИМАНИЕ!!! Информация для тех, кто смотрит реплеи ниже версии 0.8.8 (прицел смещается влево-вверх).
Я посидел тут немного и поразбирался с сим чудным эффектом.
К сожалению файлы с настройками preferences.xml теперь несовместим со старыми клиентами игры.
Описываю способ как надо немного доработать запуск реплеев, чтобы избежать подобного эффекта:
Spoiler
Файл preferences.xml в Windows 7 хранится по следующему пути: c:\Users\ИМЯ ВАШЕГО ПОЛЬЗОВАТЕЛЯ\AppData\Roaming\Wargaming.net\WorldOfTanks\preferences.xml 1. Для начала надо получить совместимый со старыми клиентами preferences.xml
заходим в папку c:\Users\ИМЯ ВАШЕГО ПОЛЬЗОВАТЕЛЯ\AppData\Roaming\Wargaming.net\WorldOfTanks\
переименовываем существующий файл preferences.xml в preferences_new.xml
берем реплей той версии игры, что у Вас есть, но чтобы версия была ниже 0.8.8 и копируем в папку с этой версией
перетягиваем в проводнике реплей на файл worldoftanks.exe и отпускаем
когда игра запустится, ставим воспроизведение на паузу (обычно пробелом), заходим в настройки, настраиваем графику
после того, как мы настроили всё как надо, выходим из игры
переименовываем новый файл preferences.xml в preferences_do_088.xml
Что получилось: preferences_new.xml - настройки, совместимые с реплеями с версии 0.8.8 preferences_do_088.xml- настройки, совместимые с реплейми до версии 0.8.8 2. Теперь модернизируем файл wot_paths.ini:
Вместо файла WorldOfTanks.exe прописываем файл WorldOfTanks.cmd
Например: Было:
# 0.8.7
2013091012=c:\Games\World_of_Tanks_0.8.7\WorldOfTanks.exe Стало:
# 0.8.7
2013091012=c:\Games\World_of_Tanks_0.8.7\WorldOfTanks.cmd 3. Далее:
Если у Вас клиент 0.8.7 стоит по другому пути, то измените в тексте выше путь.
Готово.
Теперь при запуске реплеев версии 0.8.7 основной файл настроек preferences.xml будет скопирован под именем preferences_new.xml, а вместо него появится файл со старыми настройками.
Запустится игра и воспроизведёт реплей на который кликала Ваша мышка.
После закрытия клиента основной файл настроек, совместимый с 0.8.8, будет скопирован на своё место.
Если у Вас несколько старых клиентов игры, то создайте файл WorldOfTanks.cmd для каждой из них, не забыв поменять путь к нужному клиенту игры.
Надеюсь, что я правильно во всём разобрался и Вам помог.
Сообщение отредактировал Alextt72: 06 мар 2018 - 10:41
Обновлён wot_paths.ini до 0.8.5
Спасибо, умыкнул в закрома ) Пока старых версий клиента нет на руках (в отпуске, не дома). Вернусь - найду в местной сети старые клиенты (должны быть точно), тогда и воспользуюсь. А то реплеев куча, познавательных, которые смотреть хочу, а % 40-50 уже не идут. Своих тоже есть чуток, так сказать "зе бест фром зе бед"
Спасибо, умыкнул в закрома ) Пока старых версий клиента нет на руках (в отпуске, не дома). Вернусь - найду в местной сети старые клиенты (должны быть точно), тогда и воспользуюсь.
Добавил в первое сообщение ссылки на старые клиенты (rutracker.org).