Ru/Game directory
Крайне важно создать перед работой над модификацией и контентом для движка Source подходящую среду для игровой разработки. В создании этой среды важнее всего определить расположение директории игры. Этот документ объясняет, что из себя представляет директория игры и как ее использовать.
Что из себя представляет директория игры и зачем она нужна?
Директория игры это та папка, к которой обращается инструментарий, когда ищет на компьютере контент игры. К примеру, Hammer Editor'у нужно знать, где искать ваши материалы, чтобы он мог их отобразить. Studiomdl
скомпилирует вашу модель, но он должен знать, куда следует записать скомпилированные файлы. Программа Vrad.exe
рассчитывает освещение уровня, а для этого она должен знать, где можно взять модели prop'ов, чтобы загрузить их и определить, как они заслоняют свет от источников на уровне. Ни один инструмент из SDK не запустится, если не найдет вашу директорию игры.
Примеры папок с игрой для основных Source-игр:
Half-Life 2 | C:\Program Files\Valve\Steam\SteamApps\username\half-life 2\hl2
|
Counter-Strike: Source | C:\Program Files\Valve\Steam\SteamApps\username\counter-strike source\cstrike
|
Half-Life 2: Deathmatch | C:\Program Files\Valve\Steam\SteamApps\username\half-life 2 deathmatch\hl2mp
|
В последующих примерах мы будем упоминать игровую директорию как C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\Blasters
. Такой она будет, если выбрать в SDK-launcher'е опцию Create a Mod, и вести в качестве директории C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod
, а в качестве имени мода — Blasters
.
Один из способов определить игровую директорию вашей игры — найти файл GameInfo.txt
. Папка, в которой он лежит, и есть директория игры. В примере выше, если создать C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\Blasters
, в этой папке на вашем жестком диске будет файл C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\Blasters\GameInfo.txt
. Как только вы нашли директорию, нужно указать инструментам SDK, где она находится.
За информацией по поводу того, как можно создать GameInfo.txt
для своего мода, и как используется содержимое этого файла, обратитесь к статье Структура файла GameInfo.txt.
Настройка текущей директории игры
В SDK указывается директория активной игры, чтобы все инструменты смогли находить контент без необходимости каждый раз указывать, где находится игра. Выпадающий список Current Game в Source SDK Launcher — основной способ прописать директорию активной игры.
Как указать игровую директорию с помощью Source SDK Launcher
Чтобы в Source SDK Launcher настроить директорию активной игры:
- Кликните дважды на Source SDK в меню Play Games в STEAM.
- Далее вам нужно выбрать правильно текущую игру (выпадающий список Current Game) в Source SDK Launcher.
- Теперь можно запустить какой-нибудь из инструментов SDK tools, например Hammer Editor, дважды кликнув на его названии.
Как указать игровую директорию с помощью VConfig
Приложение VConfig также может быть использовано, чтобы выставить директорию активной игры. В нем есть функция, похожая на настройку Current Game в SDK Launcher.
Сам файл приложения vconfig.exe
находится в папке \sourcesdk\bin
.
К примеру, если бы вы установили Steam в папку C:\Program Files\Valve\Steam
, то VConfig находился бы здесь :
C:\Program Files\Valve\Steam\SteamApps\username\sourcesdk\bin\vconfig.exe
Чтобы указать директорию активной игры через VConfig:
- Запустите
vconfig.exe
двойный кликом. - Выберите текущую игру (Current Game) из выпадающего списка.
- Нажите OK.
- Теперь запустите один из инструментов SDK tools, например Hammer Editor, двойным кликом по названию.
Есть другой вариант: с помощью него можно указать нужную папку, не запуская по-настоящему VConfig и не выбирая игру из списка. Для этого запустите VConfig с параметром в командной строке -game [нужная директория]
. Такой способ может быть оказаться особенно полезным, если понадобиться настроить директорию игры с помощью командного файла или какого-то другого автоматизированного процесса.
Например, следующая команда проставит в качестве директории папку установки Half-Life 2 по умолчанию, причем без необходимости реально запускать VConfig:
vconfig -game "C:\Program Files\Valve\Steam\SteamApps\username\half-life 2"
Specifying the game directory on the command line
An alternative method to set the current game directory is to directly specify the directory location on the command line when running each SDK tool. All of the SDK tools support the -game <directory>
command line parameter. The advantage to specifying the game directory on the command line is that you are being explicit about where your game's content is to be found.
Here are some examples of running tools where you specify the game directory explicitly:
%sourcesdk%\bin\studiomdl -game C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\Blasters mymodel.qc
%sourcesdk%\bin\vrad -game C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\Blasters mymap
%sourcesdk%\bin\hammer -game C:\Program Files\Valve\Steam\SteamApps\SourceMods\MyMod\Blasters

%sourcesdk%\bin\hammer -game "C:\Program Files\Valve\Steam\SteamApps\username\counter-strike source\cstrike"
%sourcesdk%\bin\vrad -game "C:\Program Files\Valve\Steam\SteamApps\username\counter-strike source\cstrike" MyCstrikeMap
Using the -game
command-line parameter to specify the current game directory gives you the advantage of being able to work on multiple games or MODs at once, and change you configurations for each. This can be easily done by making shortcuts to tools such as vtex with the -game parameter built-into the shortcut. When doing this, make sure to add quotes around the game directory path, if the path contains spaces.
Template:Otherlang:ru Template:Otherlang:ru:en, Template:Otherlang:ru:es, Template:Otherlang:ru:pl