Ru/Installing and Debugging the Source Code: Difference between revisions
< Ru
		
		
		
		Jump to navigation
		Jump to search
		| m (Title) | m (obsolete language category) | ||
| (12 intermediate revisions by 7 users not shown) | |||
| Line 1: | Line 1: | ||
| {{ | {{LanguageBar}} | ||
| }} | |||
| В этой статье рассматриваются основные шаги по установке и отладке исходного кода. | В этой статье рассматриваются основные шаги по установке и отладке исходного кода. | ||
| == Шаг За Шагом == | ==Шаг За Шагом== | ||
| === Запуск мастера 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. | ||
| === Компиляция Исходного Кода === | ===Компиляция Исходного Кода=== | ||
| Общая информация о компиляции находится здесь:  | Общая информация о компиляции находится здесь: {{L|Compiler Choices|Выбор Компилятора}} | ||
| более конкретно: | более конкретно: | ||
| *  | * {{L|Compiling under VS2003|Компиляция под VS2003}} | ||
| *  | * {{L|Compiling under VS2005|Компиляция под VS2005}} | ||
| *  | * {{L|Compiling under VS2008|Компиляция под VS2008}} | ||
| * {{L|Compiling under VS2010|Компиляция под VS2010}} | |||
| {{ | {{Note|По умолчанию включен режим отладки. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать '''Properties''', затем '''Set Launch Options...''' и добавить ''-allowdebug'' в конец того, что возможно, уже там введено (разделяя параметры пробелами). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.}} | ||
| В настоящее время, код лучше собирается под VS2005.  | В настоящее время, код лучше собирается под 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.}} | |||
| {{ | |||
| # В '''окне Solution Explorer,''' правый клик на текущем проекте (он отмечен жирным) и выберите '''Properties'''. | # В '''окне 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). | ||
| # Далее, в '''Command Arguments''', введите <code>-dev -sw -game "C:\Steam\SteamApps\SourceMods\MyMod"</code> (где '''MyMod''' это название вашего мода,  | # Далее, в '''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|Если вы используете 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|Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера: <code>"C:\Steam\SteamApps\'''Username'''\team fortress 2\hl2.exe"</code> и т.п. Всё ''может'' работать и без них, но так же, это один из источников возникающих проблем.}} | ||
| {{ | {{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 ошибки, при запуске в режиме отладки.'' | ||
| # Правый клик на проекте, над которым вы работаете, перейдите в его свойства, и выберите 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|для большего комфорта, вы можете запустить приложение в оконном режиме: добавьте опцию "-window" в ваш run_mod.bat}} | ||
| Хороший шаг после выполнения  | ==Ссылки== | ||
| Хороший шаг после выполнения этой статьи, взглянуть на статью {{L|Your First Entity|Ваша Первая Энтити}}, в котором вы будете вносить изменения в исходный код. | |||
| Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью  | Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью {{L|Using Source Control with the Source SDK|Использование Source Control с Source SDK}}. | ||
| {{ACategory|Programming}} | |||
| {{ACategory|Modding}} | |||
Latest revision as of 03:50, 22 August 2024
В этой статье рассматриваются основные шаги по установке и отладке исходного кода.
Шаг За Шагом
Запуск мастера 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.
Компиляция Исходного Кода
Общая информация о компиляции находится здесь: Выбор Компилятора
более конкретно:
 Примечание:По умолчанию включен режим отладки. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать Properties, затем Set Launch Options... и добавить -allowdebug в конец того, что возможно, уже там введено (разделяя параметры пробелами). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.
Примечание:По умолчанию включен режим отладки. Для запуска мода с отладочным DLL, вы должны правой кнопкой нажать на мод в Steam, выбрать Properties, затем Set Launch Options... и добавить -allowdebug в конец того, что возможно, уже там введено (разделяя параметры пробелами). Вы можете перейти в режим Релиза (для распространения мода) в менеджере конфигурации.В настоящее время, код лучше собирается под VS2005. Хотя Visual Studio 2010 это лучший выбор для Source.
VCE2005 пользователям необходимо скачать Windows SDK (Windows 2000 пользователи: Platform SDK). Для Visual Studio и VCE2008 этого не требуется.
Отладка
Настройка параметров отладки
 Примечание:Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.
Примечание:Это будет работать, только если у вас установлен и единожды запущен Source SDK Base.- В окне 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.
 Примечание:Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем gameinfo.txt. Если AppID стоит в значении 440, вам необходимо изменить "Command" и "Working Directory" для указания на директорию "team fortress 2". (так же известную, как
Примечание:Если вы используете OB код-базу, и у вас возникают проблемы с Visual Studio, посмотрите в вашем 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) Примечание:Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера:
Примечание:Если в ваших путях есть пробелы, не забудьте заключить их в кавычки. Для примера: "C:\Steam\SteamApps\Username\team fortress 2\hl2.exe" и т.п. Всё может работать и без них, но так же, это один из источников возникающих проблем. Примечание:Если у вас возникают ошибки, наподобие
Примечание:Если у вас возникают ошибки, наподобие 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 проекты.Запуск в отладчике
- Важно: в случае обновления 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 с названием вашего мода
 Совет:для большего комфорта, вы можете запустить приложение в оконном режиме: добавьте опцию "-window" в ваш run_mod.bat
Совет:для большего комфорта, вы можете запустить приложение в оконном режиме: добавьте опцию "-window" в ваш run_mod.batСсылки
Хороший шаг после выполнения этой статьи, взглянуть на статью Ваша Первая Энтити, в котором вы будете вносить изменения в исходный код.
Если вы планируете интегрировать обновления кода от Valve, и если вы хотите иметь резервную копию кода и историю ревизий, взгляните на статью Использование Source Control с Source SDK.

























