Но, я надеюсь, ты хочешь быть не просто игроком, но и ещё и полезным тестером, потому что от тебя пришло 90% логов в этой ветке. ;-)
Теперь к сути: отключенный HD+
не исправляет баги. Никакие, даже критические (хотя, по-моему это не справедливо, и, возможно, я несколько дезинформирую общественность). Таким образом, вылеты вероятнее всего будут и могут быть даже довольно часто. Выход есть: играть с HD+, а коли таковой возможности нет — не жаловаться. Потому что я уверен, что довольно большое количество логов содержит ошибки, которые уже были исправлены или хотя бы зафиксированы так, чтобы не вызывали краша игры.
На самом деле ничего сложного в структуре крашлога нет, достаточно лишь почитать немного, что пишут. Непонятное - пропускаем.
Теперь по структуре крашлога.
Собственно, первый блок после описания — версия мода. Если версия мода меньше, чем свежайшая,
лог присылать не следует. Это логично.
Следующий блок — время вылета. Ну, тут всё вроде бы понятно.
Блок Exception, собственно, самый важный, в нём содержится модуль, в котором появилась ошибка и, непосредственно, адрес этой ошибки.
В основном, наиважнейшей информацией в нём являются первые две строки.
Module — компонент мода (или игры, в случае исполняемого файла — *.exe), в котором появилась ошибка. Следует отдельно отметить, что здесь может появляться.
• mp3dec.asi или mss32.dll — вылет из-за устаревших музыкальных библиотек SoD. Вылечено HDmod-ом, параметр в ini-файле < NewerSoundLibraries > = 1. По-умолчанию включён, поэтому таких вылетов быть не должно.
• heroes3.exe (или любое другое име исполняемого файла, который был запущен при помощи мода) — вылет из-за бага SoD или некорректных правок (подобное не грозит, если не править код игры самостоятельно). Если *.exe не правился, следует прислать крашлог в случае если HD+ включён, т. к., возможно, ты обнаружил оригинальный баг игры.
• binkw32.dll или smackw32.dll — вылет из-за видео, скорее всего из-за багов в vid-файле (не грозит, если не лезть руками туда, куда не просят :-)).
• patcher_x86.dll — вылет, обычно, сразу при запуске игры, из-за некорректной установки правок. Если никакие dll-правки не подгружались (если не знать, как это делается, вероятность этого довольно мизерна), следует прислать сам крашлог, а так же patcher_x86 dump.txt и patcher_x86 log.txt, которые создаются в корневой папке игры, там же, где и крашлог.
• _HD3_.dll — вылет из-за ошибки в алгоритме HDmod. Это означает, что где-то в коде мода (не игры) была допущена ошибка, либо, недоработка. Помимо самого крашлога, следует прислать patcher_x86 dump.txt и patcher_x86 log.txt
• kernel32.dll - не дай Бог столкнуться с этим, т. к. это один из самых неприятных случаев вылета игры, связан с выделением или освобождением памяти.
Вторая строка блока — адрес, где была обнаружена ошибка. Данная информация будет иметь силу только для разработчика, посему не обращаем на неё внимание.
Блок Call Stack отлавливает обращения к адресу, указанному в предыдущем блоке и, так сказать, родственным адресам. Любая программа, любой код состоит из функций, которые переплетены между собой. Поэтому, если одна даёт сбой, значит за собой она потянет ещё несколько. Сall Stack помогает отследить первопричину вылета игры (если таковая не имеется по адресу, указанному в предыдущем блоке). В принципе — это и есть результат брейкпоинта, специально вызванного краша в определённой точке, чтобы отхватить обращения к ней или к функции, содержащей её. Ах, да, здесь информация только для разработчика.
Я поздно решил не объяснять блоки, которые не будут иметь силы для пользователя, поэтому пройдусь по оставшимся, пропустив некоторые.
Блок Main INI — фактически, твой ini-фаил. Порой, он помогает определить или выстроить предположение о причине краша. Например, в твоём крашлоге я увидел в нём строку, в которой сказано, что HD+ отключён. Из сего я и сделал вышеуказанный вывод.
Блок Some ingame values позволяет узнать дополнительную информацию об обстоятельствах вылета, например, в случае с ошибками карты (посерение города, скажем), разработчик увидит в данном логе имя карты, активного игрока на момент вылета и так далее (там в принципе по-английски написано полностью, так что при желании можно и перевести), что теоретически может помочь.
В общем-то всё. Если изучить структуру крашлога и некоторые обстоятельства вылетов, то количество присылаемых тобой,
Lider1, крашлогов, думаю, заметно уменьшится. Играй с HD+ и нормальной версией героев. )