Ru/Installing and Debugging the Source Code: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
(update/correcting)
m (obsolete language category)
 
(18 intermediate revisions by 11 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:Установка и Отладка Исходного Кода}}{{otherlang2|
{{LanguageBar}}
| jp = Installing and Debugging the Source Code:jp
| es = Installing and Debugging the Source Code:es
| fr = Installing and Debugging the Source Code:fr
| en = Installing and Debugging the Source Code}}


В этой статье рассматриваются основные шаги по установке и отладке исходного кода.
В этой статье рассматриваются основные шаги по установке и отладке исходного кода.


== Шаг За Шагом ==
==Шаг За Шагом==
=== Запуск мастера Create a Mod ===
===Запуск мастера Create a Mod===
 
# Запустите Source SDK через Steam и выберите пункт '''Create a Mod'''.
# Запустите 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 не закончит.
# Подождите завершение работы Mod Wizard.


=== Компиляция Исходного Кода ===
===Компиляция Исходного Кода===
Общая информация о компиляции находится здесь: [[Compiler Choices:ru|Выбор Компилятора]]
Общая информация о компиляции находится здесь: {{L|Compiler Choices|Выбор Компилятора}}


более конкретно:
более конкретно:
* [[Compiling under VS2003:ru|Компиляция под VS2003]]
* {{L|Compiling under VS2003|Компиляция под VS2003}}
* [[Compiling under VS2005:ru|Компиляция под VS2005]]
* {{L|Compiling under VS2005|Компиляция под VS2005}}
* [[Compiling under VS2008:ru|Компиляция под VS2008]]
* {{L|Compiling under VS2008|Компиляция под VS2008}}
* {{L|Compiling under VS2010|Компиляция под VS2010}}


{{note:ru|По умолчанию включена отладочная компиляция. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать '''Properties''', затем '''Set Launch Options...''' и добавить ''-allowdebug'' в конец того, что возможно, уже там введено (заключая в кавычки). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.}}
{{Note|По умолчанию включен режим отладки. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать '''Properties''', затем '''Set Launch Options...''' и добавить ''-allowdebug'' в конец того, что возможно, уже там введено (разделяя параметры пробелами). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.}}


В настоящее время, код лучше собирается под VS2005. Вы можете скачать его [http://www.microsoft.com/express/2005/ здесь].
В настоящее время, код лучше собирается под VS2005. Хотя Visual Studio 2010 это лучший выбор для Source.


VCE2005 пользователям необходимо скачать [http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&DisplayLang=en Windows SDK] (Windows 2000 пользователи: [http://www.microsoft.com/downloads/details.aspx?familyid=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en Platform SDK]). Visual Studio и VCE2008 этого не требуется.
VCE2005 пользователям необходимо скачать [http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&DisplayLang=en Windows SDK] (Windows 2000 пользователи: [http://www.microsoft.com/downloads/details.aspx?familyid=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en Platform SDK]). Для Visual Studio и VCE2008 этого не требуется.


===Отладка===
===Отладка===
==== Настройка параметров отладки ====
====Настройка параметров отладки====
 
{{Note|Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.}}
{{note:ru|Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.}}
# В '''окне Solution Explorer,''' правый клик на текущем проекте (он отмечен жирным) и выберите '''Properties'''.
# В '''Solution Explorer window,''' правый клик на текущем проекте (он отмечен жирным) и выберите '''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).
# Далее, в '''Command Arguments''', введите <code>-dev -sw -game "C:\Steam\SteamApps\SourceMods\MyMod"</code> (где '''MyMod''' это название вашего мода, введенное в диалоге ''Create a Mod'').
# Далее, в '''Command Arguments''', введите <code>-dev -sw -game "C:\Steam\SteamApps\SourceMods\MyMod"</code> (где '''MyMod''' это название вашего мода, введённое в диалоге ''Create a Mod'').
# Далее, в '''Working Directory''', введите <code>C:\Steam\SteamApps\'''Username'''\source sdk base 2007</code> (корректировка пути, к вашему собственному Steam).
# Далее, в '''Working Directory''', введите <code>C:\Steam\SteamApps\'''Username'''\source sdk base 2007</code> (корректировка пути, к вашему собственному Steam).
# Нажмите на кнопку '''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|Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем {{L|Gameinfo.txt|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|Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера: <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|Если у вас возникают ошибки, наподобие <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 проекты.}}


==== Запуск в отладчике ====
====Запуск в отладчике====
# ''Важно: в случае обновления SDK, перед запуском в отладчике, вы должны один раз запустить игру, которую вы редактируете (это требуется только один раз). Если этого не сделать, будут возникать Steam ошибки, при запуске в режиме отладки.''
# ''Важно: в случае обновления SDK, перед запуском в отладчике, вы должны один раз запустить игру, которую вы редактируете (это требуется только один раз). Если этого не сделать, будут возникать Steam ошибки, при запуске в режиме отладкиI.''
# Правый клик на проекте, над которым вы работаете, перейдите в его свойства, и выберите 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), игнорируйте это.
# Теперь запустите Half-Life 2 и ваш код. Вы можете сейчас внести изменение в код, пересобрать его, и вернутся в игру с вашими изменениями!
# Теперь запустите Half-Life 2 и ваш код. Вы можете сейчас внести изменение в код, пересобрать его, и вернуться в игру с вашими изменениями!
 
==== Альтернатива: интеграция во время выполнения  ====


====Альтернатива: интеграция во время выполнения====
# Запустите мод через Steam
# Запустите мод через Steam
# В Visual Studio, Main Menu > Debug > Attach to Process...
# В Visual Studio, Main Menu > Debug > Attach to Process...
# Выберите процесс hl2.exe с названием вашего мода
# Выберите процесс hl2.exe с названием вашего мода
{{tip:ru|вы можете запустить приложение в оконном режиме, для большего конфорта: добавьте опцию "-window" в ваш run_mod.bat}}
{{Tip|для большего комфорта, вы можете запустить приложение в оконном режиме: добавьте опцию "-window" в ваш run_mod.bat}}
 
== Ссылки ==


Хороший шаг для после выполнения этого документа, взглянуть на статью [[Your First Entity:ru|Ваша Первая Энтити]], в котором вы будите вносить изменения в исходный код.
==Ссылки==
Хороший шаг после выполнения этой статьи, взглянуть на статью {{L|Your First Entity|Ваша Первая Энтити}}, в котором вы будете вносить изменения в исходный код.


Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, Взгляните на статью [[Using Source Control with the Source SDK:ru|Использование Source Control с Source SDK]].
Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью {{L|Using Source Control with the Source SDK|Использование Source Control с Source SDK}}.


[[Category:Programming:ru]]
{{ACategory|Programming}}
[[Category:Modding:ru]]
{{ACategory|Modding}}
[[Category:Russian]]

Latest revision as of 03:50, 22 August 2024

English (en)Deutsch (de)Español (es)Français (fr)Italiano (it)日本語 (ja)Polski (pl)Русский (ru)中文 (zh)Translate (Translate)

В этой статье рассматриваются основные шаги по установке и отладке исходного кода.

Шаг За Шагом

Запуск мастера Create a Mod

  1. Запустите Source SDK через Steam и выберите пункт Create a Mod.
  2. Обычно вы можете выбрать любой тип мода, но в целях данного руководства, выберите вариант Modify Half-Life 2 Single Player и нажмите Next.
  3. В верхнем поле следующего диалога, введите директорию, куда вы хотите распаковать мод. Это руководство предполагает, что введено C:\MyMod.
  4. В нижнем поле, введите любое название вашего мода. Это станет подкаталогом в вашей SteamInstallPath\SteamApps\SourceMods директории. В этом примере предполагается, что вы ввели MyMod.
  5. Нажмите на кнопку Next и исходный код будет распакован на ваш жёсткий диск.
  6. Подождите завершение работы Mod Wizard.

Компиляция Исходного Кода

Общая информация о компиляции находится здесь: Выбор Компилятора(en)

более конкретно:

Note.pngПримечание:По умолчанию включен режим отладки. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать Properties, затем Set Launch Options... и добавить -allowdebug в конец того, что возможно, уже там введено (разделяя параметры пробелами). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.

В настоящее время, код лучше собирается под VS2005. Хотя Visual Studio 2010 это лучший выбор для Source.

VCE2005 пользователям необходимо скачать Windows SDK (Windows 2000 пользователи: Platform SDK). Для Visual Studio и VCE2008 этого не требуется.

Отладка

Настройка параметров отладки

Note.pngПримечание:Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.
  1. В окне Solution Explorer, правый клик на текущем проекте (он отмечен жирным) и выберите Properties.
  2. В появившимся диалоге Property Pages, с левой стороны выберите пункт Debugging.
  3. По правую сторону, в текстовом поле Command, введите C:\Steam\SteamApps\Username\source sdk base 2007\hl2.exe (корректировка пути, к вашему собственному Steam).
  4. Далее, в Command Arguments, введите -dev -sw -game "C:\Steam\SteamApps\SourceMods\MyMod" (где MyMod это название вашего мода, введённое в диалоге Create a Mod).
  5. Далее, в Working Directory, введите C:\Steam\SteamApps\Username\source sdk base 2007 (корректировка пути, к вашему собственному Steam).
  6. Нажмите на кнопку OK.
Note.pngПримечание:Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем gameinfo.txt(en). Если AppID стоит в значении 440, вам необходимо изменить "Command" и "Working Directory" для указания на директорию "team fortress 2". (так же известную, как C:\Steam\SteamApps\Username\team fortress 2\hl2.exe и C:\Steam\SteamApps\Username\team fortress 2)
Note.pngПримечание:Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера: "C:\Steam\SteamApps\Username\team fortress 2\hl2.exe" и т.п. Всё может работать и без них, но так же, это один из источников возникающих проблем.
Note.pngПримечание:Если у вас возникают ошибки, наподобие fatal error LNK1169: one or more multiply defined symbols found или error LNK2005: __malloc_dbg already defined in memoverride.obj, это может быть исправлено добавлением "/FORCE:MULTIPLE" (без кавычек) в свойства проекта/configuration properties/linker/command line/additional options. Это будет работать более хорошо, если вы добавите это в server и client проекты.

Запуск в отладчике

  1. Важно: в случае обновления SDK, перед запуском в отладчике, вы должны один раз запустить игру, которую вы редактируете (это требуется только один раз). Если этого не сделать, будут возникать Steam ошибки, при запуске в режиме отладки.
  2. Правый клик на проекте, над которым вы работаете, перейдите в его свойства, и выберите Debug->Start New Instance.
  3. Если вы получаете предупреждение, что hl2.exe не имеет отладочной информации (hl2.exe has no debugging information), игнорируйте это.
  4. Теперь запустите Half-Life 2 и ваш код. Вы можете сейчас внести изменение в код, пересобрать его, и вернуться в игру с вашими изменениями!

Альтернатива: интеграция во время выполнения

  1. Запустите мод через Steam
  2. В Visual Studio, Main Menu > Debug > Attach to Process...
  3. Выберите процесс hl2.exe с названием вашего мода
Tip.pngСовет:для большего комфорта, вы можете запустить приложение в оконном режиме: добавьте опцию "-window" в ваш run_mod.bat

Ссылки

Хороший шаг после выполнения этой статьи, взглянуть на статью Ваша Первая Энтити(en), в котором вы будете вносить изменения в исходный код.

Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью Использование Source Control с Source SDK(en).