РазборCrash Doctor

Разбор вылета: почему важно, каким лаунчером вы запускаете игру

TOR падал при открытии инвентаря. Три часа логов показали: игру запускали через Launcher.Native.exe — на нём многие моды не проверены.

Коротко

  • В папке игры два лаунчера; Launcher.Native.exe запускает игру на .NET Core, где моды почти никто не тестирует
  • Запускайте через Steam, TaleWorlds.MountAndBlade.Launcher.exe или RickLauncher
  • Не отправляйте отчёт в TaleWorlds — отправка удаляет файлы вылета
  • Случай помог найти две ошибки в самом Crash Doctor

Человек написал в Discord: TOR вылетает. Начали разбираться — спустя три часа логов и отчётов нашли проблему. Дальше небольшой ликбез.

Игрок на Bannerlord 1.3.15 с The Old Realms пришёл с жалобой: игра вылетает, как только открываешь инвентарь или экран трофеев после боя. Вылетало и без Crash Doctor — мод он поставил, чтобы найти причину.

Что мы увидели в логах

  • версия игры правильная, порядок модов правильный, TOR и библиотеки (Harmony, ButterLib, UIExtenderEx, MCM) — под 1.3.15;
  • но игра запускалась через Launcher.Native.exe.

Два лаунчера в папке игры

  • TaleWorlds.MountAndBlade.Launcher.exe — обычный;
  • Launcher.Native.exe — «нативный».

Нативный запускает игру на другой среде .NET (.NET Core вместо .NET Framework). Для самой игры это штатный режим, а вот моды почти никто на нём не проверяет. Часть кода, который спокойно работает в обычном режиме, там падает.

Игрок запустил игру через обычный лаунчер — вылеты пропали.

✅ Рекомендации

  • Запускайте игру через Steam или через bin\Win64_Shipping_Client\TaleWorlds.MountAndBlade.Launcher.exe. А ещё лучше — через RickLauncher! Если у вас ярлык на Launcher.Native.exe — замените его.
  • Если игра вылетает в неожиданных местах (инвентарь, торговля, экран после боя), а версии модов и порядок в порядке — первым делом проверьте, чем запускаете.
  • Когда игра предлагает отправить отчёт в TaleWorlds — закройте окно без отправки: отправка удаляет файлы краша. Отчёт для нас берётся так: Crash Doctor → «Диагностика крашей» → выбрать вылет → «Экспорт».
  • Если вылет поймал Crash Doctor, вместе с report.txt пришлите файл Modules\CrashDoctor\crashdoctor.log — по нему этот случай и распутали.

Этот игрок помог нам найти и исправить две ошибки в самом Crash Doctor, которые проявлялись только в режиме .NET Core. Спасибо ему за терпение и логи 🙏 Исправления вошли в Crash Doctor 2.2.0.4.

Crash Doctor → Обсудить в Telegram