Временное решение проблемы "Нехватки файла подкачки" на лицензии
Многие столкнулись с тем, что при попытке запустить игру появляется сообщение о нехватке файла подкачки, а после его увеличения ничего не изменялось.
После долгих поисков решение было найдено.
Заранее извиняюсь, буду писать очень подробно, чтобы вопросов не возникло ни у кого.
Установите размер файла подкачки больше 2 ГБ.
Нам понадобится бесплатная программа WinAPIOverride32_v3.0 размером около 3 МБ (скачать её можно с сайта http://www.cracklab.ru/ ссылка СКАЧАТЬ, раздел МОНИТОРЫ И ШПИОНЫ, или с домашнего сайта http://jacquelin.potier.free.fr/winapioverride32/, я взял с Cracklab)
распаковываем куда-нибудь WinAPIOverride32_v3.0.zip,
создаем текстовый файл stalker.txt (имя может быть любым, главное содержание), открываем его и вставляем вот такую строчку (Именно строчку, это одна строка и в файле должна быть только она, копировать/вставить должно сработать)
kernel32.dll|BOOL GlobalMemoryStatusEx( LPMEMORYSTATUSEX lpBuffer)|BreakAfterCall
сохраняем
Запускаем WinAPIOverride32.exe, ставим отметку напротив "Attach at application startup",
и в поле "Application Path" вводим полный путь к нашему "XR_3DA.exe"
Кнопка с тремя точками справа от поля для ввода пути обычная кнопка "Обзор"
Нажимаем самую левую кнопку в панели инструментов (зеленая стрелка, похожа на PLAY Winamp)
Видим как пошла проверка DVD-Roma и... появляется окно с заголовком "Information" и примерно таким содержанием
Application XR_3DA.exe () Ready to be Hooked in paused State и так далее. НЕ НАЖИМАЙТЕ OK!!!!
В окне "WinAPIOverride32" видим поле "API Monitoring Configuration" и вводим туда путь к stalker.txt
Чуть ниже нажимаем "Load". Вот теперь жмем Ok в окне "Information"
Теперь спустя несколько секунд появится окно с заголовком "Break"
Внизу окна жмем кнопку "Registers", в появившемся окне "Registers"
исправляем значение EAX 0x00000001 на 0x00000000
жмем "Apply", "Continue", И пока загружется игра, закрываем WinAPIOverride32.
Если окно "Break" появится снова, просто жмите "Continue".
К сожалению все это нужно делать каждый раз, когда хотите поиграть.
Способ абсолютно рабочий и глюков или тормозов (если успели закрыть (а не успели - не страшно))игре не добавляет.
Для интересующихся КАК это работает:
Вставленная строчка говорит программе, что после вызова игрой функции GlobalMemoryStatusEx (определяется доступный объем оперативной памяти + файл подкачки),
но перед получением результатов нужно сделать остановку. Потом мы изменяем результат и передаем его в игру, и игра верит, что памяти для неё достаточно.
Могут возникнуть вопросы:
1. На какую версию кидать файл, каждый патч его меняет (итого 4 версии).
2. В лицензии файл шифрованый, и пропатчить его просто-так не получится, просто нет информации для патча, если снять дамп памяти и восстановить все вызовы функций (что очень геморройно), инфы для патча опять нет, и я никогда не занимался взломом Star-Force.
3. Можно пропатчить NO-DVD типа fixed exe, но последнюю версию я видел только под первый патч (может быть плохо искал, действительно плохо, нашел под 1.0003).
4. Я не доверяю NO-DVD, которые правят (или дешифруют) основной файл игры, я кстати и стал искать способ для обхода ограничения по объему памяти из-за глюков NO-DVD.
А чем хорош способ с программой WinAPIOverride32, никаких изменений в файле, и как следствие никаких посторонних глюков, только родные (а это уже лучше)
Для тех кто играет с NO-DVD выкладываю патч, который правит XR_3DA.exe и убирает сообщение о нехватке файла подкачки. На лицензии не работает.
http://ifolder.ru/2065783
(45 кб) Инструкция внутри архива.
От версии игры не зависит (проверял на 3 разных No-DVD под разные версии), если патчить отказался, смотрите выше.
Спасибо
random_hard за материал. Благодаря ему, был составлен этот пост.