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

Что взорвалось на этот раз?

Карта может содержать цифровую подпись, для проверки которой варкрафт расчитывает хэш-сумму всего файла карты. Обычно, при таких операциях считывают блоки по несколько мегабайт и хешируют их, но разработчики решили не мудрить, а просто загрузить файл карты в память одним куском, независимо от её веса — хоть гигабайты готовы занять на это действие, что и приводит к аварийному завершению программы из-за нехватки памяти.
Этот мод решает проблему: он запрещает проверять подпись у карт, размер которых превышает ограничение в 8 МБ. Конечно, если найдется карта от разработчиков, имеющая такой размер, то её подпись будет проигнорирована, но я таких не видел.

Применение

Достаточно лишь кинуть приложеный MIX файл в папку с игрой, после чего можно безопасно играть.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
22
4 недели назад
0
Спасибо! Давно ждал это решение!

Отмечу. Что вылет при нажатии F9 на картах с большим весом, как правило, происходит после того, как игра была свернута-развернута. Сразу после запуска этот баг не воспроизводится стабильно.

А сразу ссылку на .mix не получится через xgm дать?
1
14
4 недели назад
1
Последние новости!
  • Добавил объяснение причин проблемы.
  • Поменял расширение файла с DLL на MIX.
1
22
3 недели назад
1
Похоже на то, что этот баг стабильно воспроизводиться только с модифицированным для онлайн хоста карт >8 МБ game.dll. На чистом клиенте у меня не получилось воспроизвести его.
Ответы (4)
1
14
3 недели назад
1
makkad, конечно, ведь выделить 8 МБ оперативной памяти — не проблема. А вот если потребуется цельный кусок в сотни мегабайт, то вероятность провала значительно повышается.
1
22
3 недели назад
Отредактирован makkad
1
IceFog, так речь про одиночную игру. Там можно запускать карты весом в сотни мегабайт. Я имел ввиду что запустил такую карту с чистым game.dll и проблема не выявилась.
Если запускать карты в варкрафте 1.26 с модифицированным game.dll, то вылет при нажатии F9 происходит.
2
14
3 недели назад
Отредактирован IceFog
2
makkad, когда я запускаю свою тестовую карту весом 774 МБ и, после того как она создает 1 500 000 объектов типа location, открываю меню заданий, то со 100% вероятностью получаю краш.
Варик был чистый, никаких модов или модифицированых game.dll. При попытке создать игру в локалке, игра отказала с сообщением: "Слишком большой размер файла. Выберите другую карту.".
1
22
3 недели назад
Отредактирован makkad
1
IceFog, да, такой результат ожидаемый. Но странно, что модификация game.dll для расширения лимита веса карт в локальной сети, уменьшает толерантность к этому багу. Возможно, тут есть что-нибудь любопытное.
Хотя может просто странное совпадение.
Я проверял на карте весом 250 МБ. С модифицированным game.dll вылетает после сворачивания-разворачивания окна. С чистым game.dll вылет не смог воспроизвести при данной конфигурации.
1
14
2 недели назад
1
Вышла новая версия! Прокрутить к ресурсу
  • Переименовал мод в "big_map_crash_fix".
  • Теперь исправляет вылет не только при открытии меню заданий, но также и при заходе в лобби и при загрузке сохранений.
Если кто-то качал мод после обновления ресурса, но до написания этого комментария, то лучше перекачайте, потому что по началу я залил сломаную версию.
1
14
2 недели назад
Отредактирован IceFog
1
Последние новости!
Пускай я и залил новую версию, при нажатии на кнопку "Скачать" всё равно выдает предыдущую версию с таким крашем:
Пока я не разобрался с проблемой, предлагаю качать обходным путем:
Загруженные файлы
Ответы (4)
1
37
2 недели назад
1
IceFog, я не знаю, как у тебя получилось вставить ссылку на temp, но она скоро потеряется
1
14
2 недели назад
Отредактирован IceFog
1
Эту ссылку можно получить в списке файлов меню редактирования.
На всякий случай залил архив с другим именем. Не знаю, что там за проблемы были с кешем браузера или клаудфлаера, но надеюсь, что теперь будет качаться актуальная версия.
0
3
1 неделю назад
0
IceFog, привет! Ссылка не работает, а по кнопке скачать все ещё выдает dll файл. Может зальёте на другой файлообменник (гугл диск, например) и скинете ссылку сюда? Буду очень признателен!
1
14
1 неделю назад
Отредактирован IceFog
1
John_Mori, у тебя скачивался файл big_map_crash_fix_v2.zip? Если да, то это и есть исправленая версия, а то, что внутри был .dll файл, так я забыл переименовать его в .mix перед заливкой на сайт.
Теперь в архиве снова .mix файл, так что можешь перекачать его или самостоятельно поменять расширение.
1
22
2 недели назад
Отредактирован makkad
1
А есть в теории возможность заодно добавить в этот mix поддержку хоста карт больше 8 МБ по локальной сети аналогично как здесь?
И исправляет ли этот mix иногда встречающийся баг с "бесконечной загрузкой" больших карт в лобби сетевой игры? (это когда у подключающийся к хосту игроков начинается загрузка карты, которая останавливается в самом начале, даже если у них уже есть заранее скаченный файл хостуемой карты).
Было бы удобно иметь единое решение со всеми проблемами от запуска больших карт в одном файлике, не боясь что разные решения будут конфликтовать друг с другом.
Ответы (1)
2
14
1 неделю назад
2
makkad, с отключением лимита на размер этот мод не должен конфликтовать. Да и не люблю я, когда вместо модульной системы лепят монолит. Хотя в данном случае объединение может быть уместно.
Насчёт бага с загрузкой, я тоже встречал подобное, но пока не находил времени на выяснение причины.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.