Проблема с запуском Half-Life

dangerr

Пишу именно про древний первый Half-Life. Поиграть захотелось именно в него.
Установка проходит гладко, однако при запуске выдается такое сообщение:
Ситема у меня сейчас win2008 x64, однако на win2003 х64 наблюдалось то же самое. Попробовал поставить win2008 x32 под VirtualBox. Зараборало. Даже прошел таким образом Half-Life:BlueShift :)
Так что видимо проблема в битности системы (ну или железе, что вряд ли а не в самой ОС.
З.Ы. Другие игры идут без проблем. (То есть все графические ускорения и директиксы, которые в "серверных" виндах отключены по дефолту, я включил).

kruzer25

Оперативной памяти у тебя сколько, чудо? 3.5ГБ, поди?

dangerr

4096 Мб.

kruzer25

Разве из того сообщения об ошибке, которое выдала игра, непонятно, в чём дело?
Этот твой халф-лайф проверяет количество оперативной памяти - и видит, что у тебя её -1.5ГБ (кстати, странно - если тебе верить, то её должно быть -2ГБ). А халф-лайфу нужно 16МБ, то есть, больше, чем он видит.
Способ решения - виртуальная машина, вынуть лишнюю память, или, наоборот, поставить ещё пару гигабайт.
UPD: Что-то я неправильно в уме посчитал - всё правильно, сообщение об ошибке - именно то, которое должно быть. Решение, как я уже сказал - вынуть лишнюю память (2ГБ или больше или поставить ещё (совсем чуть-чуть, меньше 2ГБ или виртуальная машина.

kruzer25

Ещё, возможно, существует какой-нибудь патч к халф-лайфу, который меняет int32 на uint32. Но я бы на это не надеялся.

dangerr

Куда их ставить-то? И так все слоты заняты :)
Вариантом с виртуалкой я, как сказал ранее, уже пользовался, однако это вариант через одно место.
Вынимать оперативу - это не то чтоб через жопу... это я даже не знаю как назвать. :confused:
Думаю, должны быть софтверные способы заставить винду говорить, что у нее столько-то оперативы.

kruzer25

Думаю, должны быть софтверные способы заставить винду говорить, что у нее столько-то оперативы.
Сомневаюсь.
Разве что - попробуй игру запустить в режиме совместимости с чем-нибудь древним, например, Win95. Может быть, и получится.

dangerr

Как раз только что возникла такая идея. Завпустил в режиме совместимости с XPsp2 и все заработало!

dangerr

Блин, вот хрень, оно теперь постоянно вылетает.... причем на одном и том же месте - после первого перехода с одной карты на другую, когда надпись загрузка появляется, вернее после того как я делаю пару шагов после загрузки новой карты. :(

dgaf

>оно теперь постоянно вылетает
совместимость

dangerr

Не, все оказалось банальнее. Надо было запустить из-под рута просто. Теперь все работает. утром можно будет погамать. :)

kruzer25

Оно, поди, какой-нибудь файл в неправильное место (вроде C:\) записать пытается?

dgaf

>Надо было запустить из-под рута просто.
:shocked: :shocked: :shocked:
а должно хватать членства в группе games

dangerr

Я думаю, оно пытается писать в свою собственную директорию. Наверное, когда писали Half-Life не предполагали, что когда-то это будет нельзя. :)

dgaf

аналога strace/truss/.. разве нету?

kruzer25

В собственную директорию оно должно мочь писать без проблем - виртуализация, как-никак.
На худой конец можешь попробовать дать себе права на Full Access к её папке. Всё-таки, запускать какой-то левый софт от рута, когда тебе не нужно явно выполнить какое-то административное действие - сомнительное удовольствие.

kruzer25

Хотя нет, вру - если в её директории уже есть файл, который она пытается изменить, и этот файл был создан не ей самой, запущенной с простыми правами (т.е. находится в настоящих ProgramFiles, а не в VirtualStore) - то да, ей этого делать не дадут.
Остаётся только понять, что это за файл, и выставить на него соответствующие права.

dangerr

Да ладно, зачем заморачиваться? Программа не слушает порты и лезет в сеть сама => безопасна.
А файл тогда по-хорошему надо как раз в VirtualStore перенести, а не права выставлять.

dgaf

>Остаётся только понять, что это за файл
как обычно, гаданием на кофейной гуще?

kruzer25

А файл тогда по-хорошему надо как раз в VirtualStore перенести, а не права выставлять
Да, или так.
Программа не слушает порты и лезет в сеть сама => безопасна
В программе может быть какой-нибудь баг/бэкдор, который может привести к печальным последствиям. Надо сводить к минимуму запуски чего-либо с административными привилегиями.

dangerr

В программе может быть какой-нибудь баг/бэкдор, который может привести к печальным последствиям. Надо сводить к минимуму запуски чего-либо с административными привилегиями.
Кстати, а что если вообще всю директорию программы перенести в VirtualStore?
Оставить комментарий
Имя или ник:
Комментарий: