Скрипт для проверки файлов клиента WoW (Cataclysm/Wrath of the Lich King)
Просьба модераторам не закрывать тему.
http://savepic.org/4129111.png |
Скрипт проверяет содержимое важных файлов игрового клиента.
Это реализовано через вычисление хэшсумм (CRC32) для каждого файла из корневой папки игры, папок Data, и Data\ruRU, и последующее сравнение с предопределенными хэшами.
Предопределенные - высчитаны из содержимого установки официального дистрибутива WoW (в клиент Cataclysm, контент загружен на 100%).
Содержимое MPQ-архивов проверяется по CRC32 и MD5, с использованием контрольных сумм в самих архивах.
В скрипт занесены хэши файлов WowCircle.
Для реалмлиста, хэши только от официальных реалмлистов, и реалмлистов WowCircle.
Скачать скрипт (2.0)
(Работает в Windows XP ServicePack 3, и выше). |
Как проверить свой клиент:
- Скачать скрипт по ссылке выше;
- Распаковать из архива папку WoW_Check (а не файлы в ней) в директорию игры;
- Убедиться в том что клиент игры не запущен;
- Запустить wow_check.exe и выполнить проверку (никаких действий кроме нажатия эникея, от пользователя не требуется).
Результат выводится в консоль скрипта, и в лог. Этот лог вы можете использовать в качестве диагностической информации: например, при обращении в ветку техподдержки данного форума.
Проверка занимает длительное время, т.к. требуется проверить более 15ГБ информации, да еще и в сжатом виде.
На моем далеко не топовом компьютере (i5@4.4Ghz/2x8GB RAM@1.6Ghz/WD Blue 7200rpm), проверка клиента WotLK занимает 14 минут, а клиента Cataclysm - 30 минут. С клиентом на более производительном накопителе, проверка пройдет ощутимо быстрее :)
При скачивании скрипта/исходников, не верьте дате загрузки файла сообщаемой ЯндексДиском (июнь 2013): это время первоначальной загрузки. Когда файлы обновляются, дата загрузки не меняется. Возможно, Яндекс изменит этот баг(?) в будущем.
Расшифровка результатов
Если не хочется вникать, то легко ориентироваться по цветам шрифта:
белый (или серый) означает нормальное состояние;
желтый - неизвестные файлы;
красный - несоответствие;
зеленый - соответствие ("все ОК").
(Для файлов внутри MPQ-архивов) расшифровка загадочных слов под именем файла:
Обозначение |
Описание |
Цветовая индикация |
Open |
Статус открытия файла |
Открыт успешно, Ошибка |
Read |
Статус доступности файла на чтение |
Считан успешно, Ошибка |
Sector CRC |
Контрольная сумма CRC32 для секторов файла (?) |
Отсутствует, Имеется и верна, Имеется и неверна |
CRC |
Контрольная сумма CRC32 для файла |
Отсутствует, Имеется и верна, Имеется и неверна |
MD5 |
Контрольная сумма MD5 для файла |
Отсутствует, Имеется и верна, Имеется и неверна |
Raw MD5 |
Контрольная сумма для "raw-данных" файла (?) |
Отсутствует, Имеется и верна, Имеется и неверна |
Обозначения статусов в логе:
Y - (Yes) успешно; имеется и соответствует. Аналогично "
зеленому" в таблице выше
N - (No) отсутствует. Аналогично "
белому" в таблице выше
E - (Error) ошибка; имеется и неверна . Аналогично "
красному" в таблице выше
[свернуть]
Malware-Free, Spyware-Free, безопасность данных - прежде всего
Скрипт не собирает какую-либо персональную информацию (данные аккаунта, данные о системе, и т.п.).
Скрипт не повреждает данные клиента: все операции с файлами производятся в режиме доступа Read-Only (Только чтение).
Отчет VirScan.org (0/36).
Доступен исходный код (
скачать). Если вы не доверяете бинарникам, то можете самостоятельно собрать скрипт из исходников.
[свернуть]
Дополнительная и техническая информация
Файлы размещены на моем яндух.диске, и я настоятельно рекомендую скачивать скрипт только оттуда (во избежание заражений при обмене с другими пользователями). Ссылки всегда ведут на последние версии.
Скрипт написан на
Python, с использованием версии
3.3.
Портативность обеспечена
cx_Freeze.
Взаимодействие с MoPaQ-архивами производится через открытую библиотеку
StormLib
В архив включена библиотека
Microsoft Visual C++ 2010 из распространяемого пакета для WindowsXP (для обеспечения работоспособности в этой версии винды.
Дальнейшее развитие скрипта вероятно, но не обещается.
Скрипт (первая версия) написан менее чем за день, и может содержать быдлокод. Гурманы-программисты, минздрав вас предупреждает.
[свернуть]
Последнее обновление: 21.08.2013
[21.08.2013] Скрипт обновлен до версии 2.0 (все ссылки обновлены)
Изменения:
* Реализована проверка содержимого MoPaQ-архивов по CRC, SectorCRC, MD5, и RawMD5
* Более детальный вывод результатов для сбойных файлов (по сравнению с 2.0beta1)
* Исправлена ошибка с "заползанием" текста ошибки на поле результата проверки
* В список исключений по расширению добавлены .bat и .zip
[07.08.2013] Скрипт обновлен до версии 1.1 (все ссылки обновлены)
Изменения:
* Реализован вывод возможных ошибок (исключений) в лог и консоль;
* Перенос хэшей файлов ijl15.dll и unicows.dll из таблицы WotLK в таблицу General: т.к. они встречаются в некоторых установках Cataclysm (вероятно, патченных с лича, а не из дистрибутива версии 4.*).
[свернуть]
Версия 2.0 в публичном доступе
freddie-epic-win |
Закрытое тестирование бета-версии 2.0beta1 окончено, релиз 2.0 выпущен, топик обновлен.
Реализована проверка файлов внутри MPQ-архивов, а прочие файлы проверяются по CRC32 (как и в версиях 1.*).
На данный момент, достоверность результатов должна быть максимальной. |
Хэшсуммы MPQ оставил в модуле: пусть они больше и не используются для проверки - кушать не просят, и производительность не снижают.
Забавный факт... в процессе тестирования, оказалось что у моего клиента каты поврежден листфайл архива \Data\Sound.mpq :)