Здравствуйте! Есть одна проблема. Имеется комплект GCF-файлов и инсталятор от VENGEANCE.
Итак, как рекомендуется, создается папка C:\Program Files\Valve\Steam\SteamApps\ . Сюда ложатся все необходимые GCF-файлы:
half-life 2 content.gcf
platform.gcf
source engine.gcf
source materials.gcf
source models.gcf
source sounds.gcf
Далее, в реестр вносятся вот такие изменения для отработки патча Half_Life_2_Retail_Offline_Installer_VENGEANCE.tar (также закачал новый Half_Life_2_CDVersion_Upgrade.rar но не понял чем принципиально он отличается в конечном итоге?):
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Valve\Steam]
"InstallPath"="C:\\Program Files\\Valve\\Steam"
В папку с GCF-файлами копирую содержимое инсталятора от VENGEANCE:
client.dll
hl2install.exe
steam.dll
steamemu.ini
и запускаю установку hl2install.exe. Создается подкаталог дале по дереву C:\Program Files\Valve\Steam\SteamApps\User\Half-Life 2\ , куда ложится необходимый минимум файлов, берущийся, как я понимаю из файла platform.gcf. Распакованное содержимое занимает чуть более 30 Мег. Смело удаляем Valve.avi и получаем 20. На один уровень с hl2.exe ложится файл steamemu.ini.
Теперь самое интересное. Формат steamemu.ini. Нас интересует только путь к GCF-файлам:
[GCF]
; Directory Path in which the Steam GCFs (Game Cache Files) can be found
; If a path is not specified SteamApps if the game dir is used,
; as a last resort the Valve Steam Client SteamApps directory is used.
;BaseDir=SteamApps
BaseDir=[здесь полный путь где лежат файлы GCF]
... (далее не принципиально)
После этого все, что распаковалось в процессе инсталяции и лежит в ...\SteamApps\User\Half-Life 2\ можно ПЕРЕНОСИТЬ КУДА-УГОДНО. Сами GCF-файлы тоже можно переносить куда-угодно. Единственное, что необходимо, это редактирование пути к GCF-файлам в ini согласно текущему их положению (см. выше).
Лично я положил GCF-файлы на один уровень с hl2.exe и теперь путь в ini - это фактически путь к каталогу с игрой.
После этого для проверки полностью переставляется система во избежание влияния всяких записей в реестре и каком-нибудь файле где-то в системе. Если не меняется местонахождение GCF-файлов, все загружается и работает просто прекрасно! Если меняется - редактировать путь в ini.
Это все была типа прелюдия. А вот теперь проблема. Может кому покажется это смешно, но лично для меня это важно!
1. Все, что я описал выше, НЕ работает под Windows 98 SE (вышеизложенные операции проводились под Windows 2000 и XP). Делаю все тоже-самое под Windows 98 SE, что и ранее под Windows 2000, но отработка hl2install.exe заканчивается ошибкой с невозможностью найти клиента стим
2. Черт с ним! Беру уже готовый распакованный контент (фактически, уже готовый каталог со всем от предыдущих манипуляций под Windows 2000) и запускаю игру. Выдается ошибка: "SteamStartupp() failed: Failed to open GCF archive: , make sure its avialable and decrypted."
Но елки-палки, только что под Windows 2000 все работало! Сразу оговорюсь: системы ставились что называется по-умолчанию: Windows 98 SE и Windows 2000 безо всяких апдейтов, только необходимые драйвера устройств плюс DirectX 8.1, а потом сверху DirectX 9.0c. Никаких дополнительный программ: ни dotNetFX, ни GCFScape, ничего - только "голая" система!
Пробовал эту готовую версию, что у меня получилась, на других машинах под Windows 2000 (т.е. это чистые относительно Half-Life 2 системы, совершенно другое оборудование и т.д.) - поднимается и работает без затыков, даже без прописи в реестре "InstallPath"="C:\\Program Files\\Valve\\Steam". Под Windows 98 SE ну не хочет работать и все. Понятно, что дело все в механизме распаковки GCF-формата, поскольку вариант с полностью распакованными GCF прекрасно работает под Windows 98 SE. По-идее, получается, что распаковкой во время игры заведует механизм самого движка? Но каким боком сюда относится сама система? Я В НЕДОУМЕНИИ
Люди, помогите понять, пожалуйста!
Добавление от 02.12.2004 09:55:
Скорее всего не хватает какой-то службы или библиотеки, но какой?

Подумал, что может поможет установка InstMSI - не помогло

Какие идеи?