Ru/Installing and Debugging the Source Code: Difference between revisions
 (update/correcting)  | 
				m (correcting)  | 
				||
| Line 10: | Line 10: | ||
=== Запуск мастера Create a Mod ===  | === Запуск мастера Create a Mod ===  | ||
# Запустите Source SDK   | # Запустите Source SDK через Steam и выберите пункт '''Create a Mod'''.  | ||
# Обычно вы можете выбрать любой тип мода, но в целях данного руководства, выберите вариант '''Modify Half-Life 2 Single Player''' и нажмите '''Next'''.  | # Обычно вы можете выбрать любой тип мода, но в целях данного руководства, выберите вариант '''Modify Half-Life 2 Single Player''' и нажмите '''Next'''.  | ||
# В верхнем поле следующего диалога, введите директорию, куда вы хотите распаковать мод. Это руководство предполагает, что введено '''C:\MyMod'''.  | # В верхнем поле следующего диалога, введите директорию, куда вы хотите распаковать мод. Это руководство предполагает, что введено '''C:\MyMod'''.  | ||
# В нижнем поле, введите любое название вашего мода. Это станет подкаталогом в вашей '''''SteamInstallPath'''\SteamApps\SourceMods'' директории. В этом примере предполагается, что вы ввели '''MyMod'''.  | # В нижнем поле, введите любое название вашего мода. Это станет подкаталогом в вашей '''''SteamInstallPath'''\SteamApps\SourceMods'' директории. В этом примере предполагается, что вы ввели '''MyMod'''.  | ||
# Нажмите на кнопку '''Next''' и исходный код будет распакован на ваш жесткий диск.  | # Нажмите на кнопку '''Next''' и исходный код будет распакован на ваш жесткий диск.  | ||
# Подождите  | # Подождите завершение работы Mod Wizard.  | ||
=== Компиляция Исходного Кода ===  | === Компиляция Исходного Кода ===  | ||
| Line 25: | Line 25: | ||
* [[Compiling under VS2008:ru|Компиляция под VS2008]]  | * [[Compiling under VS2008:ru|Компиляция под VS2008]]  | ||
{{note:ru|По умолчанию   | {{note:ru|По умолчанию включен режим отладки. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать '''Properties''', затем '''Set Launch Options...''' и добавить ''-allowdebug'' в конец того, что возможно, уже там введено (разделяя параметры пробелами). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.}}  | ||
В настоящее время, код лучше собирается под VS2005. Вы можете скачать его [http://www.microsoft.com/express/2005/ здесь].  | В настоящее время, код лучше собирается под VS2005. Вы можете скачать его [http://www.microsoft.com/express/2005/ здесь].  | ||
| Line 35: | Line 35: | ||
{{note:ru|Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.}}  | {{note:ru|Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.}}  | ||
# В '''Solution Explorer   | # В '''окне Solution Explorer,''' правый клик на текущем проекте (он отмечен жирным) и выберите '''Properties'''.  | ||
# В появившимся диалоге Property Pages, с левой стороны выберите пункт Debugging.  | # В появившимся диалоге Property Pages, с левой стороны выберите пункт Debugging.  | ||
# По правую сторону, в текстовом поле '''Command''', введите <code>C:\Steam\SteamApps\'''Username'''\source sdk base 2007\hl2.exe</code> (корректировка пути, к вашему собственному Steam).  | # По правую сторону, в текстовом поле '''Command''', введите <code>C:\Steam\SteamApps\'''Username'''\source sdk base 2007\hl2.exe</code> (корректировка пути, к вашему собственному Steam).  | ||
| Line 42: | Line 42: | ||
# Нажмите на кнопку '''OK'''.  | # Нажмите на кнопку '''OK'''.  | ||
{{note:ru|Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем [[gameinfo.txt:ru|gameinfo.txt]. Если AppID стоит в значении 440, вам необходимо изменить "Command" и "Working Directory" для указания на директорию "team fortress 2". (так же известную, как <code>C:\Steam\SteamApps\'''Username'''\team fortress 2\hl2.exe</code> и <code>C:\Steam\SteamApps\'''Username'''\team fortress 2</code>}}  | {{note:ru|Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем [[gameinfo.txt:ru|gameinfo.txt]. Если AppID стоит в значении 440, вам необходимо изменить "Command" и "Working Directory" для указания на директорию "team fortress 2". (так же известную, как <code>C:\Steam\SteamApps\'''Username'''\team fortress 2\hl2.exe</code> и <code>C:\Steam\SteamApps\'''Username'''\team fortress 2</code>)}}  | ||
{{note:ru|Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера: <code>"C:\Steam\SteamApps\'''Username'''\team fortress 2\hl2.exe"</code> и т.п.   | {{note:ru|Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера: <code>"C:\Steam\SteamApps\'''Username'''\team fortress 2\hl2.exe"</code> и т.п. Это МОЖЕТ работать без них, но так же, это один из источников возникающих проблем.}}  | ||
{{note:ru|Если у вас возникают ошибки, наподобие <code>fatal error LNK1169: one or more multiply defined symbols found</code> или <code>error LNK2005: __malloc_dbg already defined in memoverride.obj</code>, это может быть исправлено добавлением "/FORCE:MULTIPLE" (без кавычек) в свойства проекта/configuration properties/linker/command line/additional options. Это будет работать более хорошо, если вы добавите это в server и client проекты.}}  | {{note:ru|Если у вас возникают ошибки, наподобие <code>fatal error LNK1169: one or more multiply defined symbols found</code> или <code>error LNK2005: __malloc_dbg already defined in memoverride.obj</code>, это может быть исправлено добавлением "/FORCE:MULTIPLE" (без кавычек) в свойства проекта/configuration properties/linker/command line/additional options. Это будет работать более хорошо, если вы добавите это в server и client проекты.}}  | ||
| Line 50: | Line 50: | ||
==== Запуск в отладчике ====	    | ==== Запуск в отладчике ====	    | ||
# ''Важно: в случае обновления SDK, перед запуском в отладчике, вы должны один раз запустить игру, которую вы редактируете (это требуется только один раз). Если этого не сделать, будут возникать Steam ошибки, при запуске в режиме   | # ''Важно: в случае обновления SDK, перед запуском в отладчике, вы должны один раз запустить игру, которую вы редактируете (это требуется только один раз). Если этого не сделать, будут возникать Steam ошибки, при запуске в режиме отладки.''  | ||
# Правый клик на проекте, над которым вы работаете, перейдите в его свойства, и выберите Debug->Start New Instance.  | # Правый клик на проекте, над которым вы работаете, перейдите в его свойства, и выберите Debug->Start New Instance.  | ||
# Если вы получаете предупреждение, что <code>hl2.exe</code> не имеет отладочной информации (hl2.exe has no debugging information), игнорируйте это.  | # Если вы получаете предупреждение, что <code>hl2.exe</code> не имеет отладочной информации (hl2.exe has no debugging information), игнорируйте это.  | ||
| Line 64: | Line 64: | ||
== Ссылки ==  | == Ссылки ==  | ||
Хороший шаг   | Хороший шаг после выполнения этого документа, взглянуть на статью [[Your First Entity:ru|Ваша Первая Энтити]], в котором вы будите вносить изменения в исходный код.  | ||
Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий,   | Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью [[Using Source Control with the Source SDK:ru|Использование Source Control с Source SDK]].  | ||
[[Category:Programming:ru]]  | [[Category:Programming:ru]]  | ||
[[Category:Modding:ru]]  | [[Category:Modding:ru]]  | ||
[[Category:Russian]]  | [[Category:Russian]]  | ||
Revision as of 22:21, 18 January 2010
В этой статье рассматриваются основные шаги по установке и отладке исходного кода.
Шаг За Шагом
Запуск мастера Create a Mod
- Запустите Source SDK через Steam и выберите пункт Create a Mod.
 - Обычно вы можете выбрать любой тип мода, но в целях данного руководства, выберите вариант Modify Half-Life 2 Single Player и нажмите Next.
 - В верхнем поле следующего диалога, введите директорию, куда вы хотите распаковать мод. Это руководство предполагает, что введено C:\MyMod.
 - В нижнем поле, введите любое название вашего мода. Это станет подкаталогом в вашей SteamInstallPath\SteamApps\SourceMods директории. В этом примере предполагается, что вы ввели MyMod.
 - Нажмите на кнопку Next и исходный код будет распакован на ваш жесткий диск.
 - Подождите завершение работы Mod Wizard.
 
Компиляция Исходного Кода
Общая информация о компиляции находится здесь: Выбор Компилятора
более конкретно:
В настоящее время, код лучше собирается под VS2005. Вы можете скачать его здесь.
VCE2005 пользователям необходимо скачать Windows SDK (Windows 2000 пользователи: Platform SDK). Visual Studio и VCE2008 этого не требуется.
Отладка
Настройка параметров отладки
- В окне Solution Explorer, правый клик на текущем проекте (он отмечен жирным) и выберите Properties.
 - В появившимся диалоге Property Pages, с левой стороны выберите пункт Debugging.
 - По правую сторону, в текстовом поле Command, введите 
C:\Steam\SteamApps\Username\source sdk base 2007\hl2.exe(корректировка пути, к вашему собственному Steam). - Далее, в Command Arguments, введите 
-dev -sw -game "C:\Steam\SteamApps\SourceMods\MyMod"(где MyMod это название вашего мода, введенное в диалоге Create a Mod). - Далее, в Working Directory, введите 
C:\Steam\SteamApps\Username\source sdk base 2007(корректировка пути, к вашему собственному Steam). - Нажмите на кнопку OK.
 
{{note:ru|Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем [[gameinfo.txt:ru|gameinfo.txt]. Если AppID стоит в значении 440, вам необходимо изменить "Command" и "Working Directory" для указания на директорию "team fortress 2". (так же известную, как C:\Steam\SteamApps\Username\team fortress 2\hl2.exe и C:\Steam\SteamApps\Username\team fortress 2)}}
Запуск в отладчике
- Важно: в случае обновления SDK, перед запуском в отладчике, вы должны один раз запустить игру, которую вы редактируете (это требуется только один раз). Если этого не сделать, будут возникать Steam ошибки, при запуске в режиме отладки.
 - Правый клик на проекте, над которым вы работаете, перейдите в его свойства, и выберите Debug->Start New Instance.
 - Если вы получаете предупреждение, что 
hl2.exeне имеет отладочной информации (hl2.exe has no debugging information), игнорируйте это. - Теперь запустите Half-Life 2 и ваш код. Вы можете сейчас внести изменение в код, пересобрать его, и вернутся в игру с вашими изменениями!
 
Альтернатива: интеграция во время выполнения
- Запустите мод через Steam
 - В Visual Studio, Main Menu > Debug > Attach to Process...
 - Выберите процесс hl2.exe с названием вашего мода
 
Ссылки
Хороший шаг после выполнения этого документа, взглянуть на статью Ваша Первая Энтити, в котором вы будите вносить изменения в исходный код.
Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью Использование Source Control с Source SDK.