Ru/My First Mod: Difference between revisions
No edit summary |
m (obsolete language category) |
||
(8 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{lang|My First Mod|title=Ваша первая модификация}} | ||
|title=Ваша первая модификация | |||
}} | |||
Этот учебник научит вас создавать, настраивать и собирать вашу первую простую модификацию (мод) для движка Source. В ней мы изменим скорость, с которой в | Этот учебник научит вас создавать, настраивать и собирать вашу первую простую модификацию (мод) для движка {{Source|4}}. В ней мы изменим скорость, с которой в {{hl2|4}} ракеты будут путешествовать по миру. | ||
== Создание проекта == | == Создание проекта == | ||
Line 15: | Line 7: | ||
Для ясности в этом учебнике мы назовём наш первый мод "MyMod". Когда Вы создаете Ваш собственный мод, Вы можете назвать его как хотите (например "QuickMod", "TreasureTroll" и т.д.) | Для ясности в этом учебнике мы назовём наш первый мод "MyMod". Когда Вы создаете Ваш собственный мод, Вы можете назвать его как хотите (например "QuickMod", "TreasureTroll" и т.д.) | ||
{{ | {{Note|Чтобы получить последний исходный код необходимо {{L|Refresh SDK Content|обновить содержимое SDK}}}} | ||
Для создания проекта мода: | Для создания проекта мода: | ||
Line 22: | Line 14: | ||
# Выберите '''Modify Half-Life 2 single-player''' или '''Modify Half-Life 2 Multiplayer'''. | # Выберите '''Modify Half-Life 2 single-player''' или '''Modify Half-Life 2 Multiplayer'''. | ||
# Укажите, куда вы хотите разместить ваш проект мода (например <code>C:\MyMod</code>). | # Укажите, куда вы хотите разместить ваш проект мода (например <code>C:\MyMod</code>). | ||
# Введите имя вашего мода. В этом примере мы используем | # Введите имя вашего мода. В этом примере мы используем "MyMod". | ||
# Vista может потребовать дополнительных шагов в зависимости от ваших параметров настройки безопасности. (см. известные проблемы ниже) | # Vista может потребовать дополнительных шагов в зависимости от ваших параметров настройки безопасности. (см. известные проблемы ниже) | ||
Line 29: | Line 21: | ||
== Подготавливаем решение == | == Подготавливаем решение == | ||
# Внимательно следуйте инструкциям | # Внимательно следуйте инструкциям {{L|Compiling under VS2008|Компиляции в VS2008}} / {{L|Compiling under VS2005|2005}} / {{L|Compiling under VS2010|2010}}. | ||
# Внимательно следуйте инструкциям | # Внимательно следуйте инструкциям {{L|Launching from Visual Studio|Запуска из Visual Studio}}. | ||
== Изменяем скорость ракет == | == Изменяем скорость ракет == | ||
Line 46: | Line 38: | ||
Изменяя это число, мы говорим ракете перемещаться со скоростью 400 юнитов в секунду (примерно 7 - 8 метров в секунду). Раньше ракета перемещалась со скоростью 1500 юнитов в секунду (около 30 метров в секунду). Разница в скорости будет очень заметна когда вы скомпилируете и запустите мод. | Изменяя это число, мы говорим ракете перемещаться со скоростью 400 юнитов в секунду (примерно 7 - 8 метров в секунду). Раньше ракета перемещалась со скоростью 1500 юнитов в секунду (около 30 метров в секунду). Разница в скорости будет очень заметна когда вы скомпилируете и запустите мод. | ||
{{note| Измерения ведутся в системе unit'ов редактора: для уровня и объектов 16 юнитов <nowiki>=</nowiki> 1 фут, для персонажей 12 юнитов <nowiki>=</nowiki> 1 фут. Подробнее | {{note| Измерения ведутся в системе unit'ов редактора: для уровня и объектов 16 юнитов <nowiki>=</nowiki> 1 фут, для персонажей 12 юнитов <nowiki>=</nowiki> 1 фут. Подробнее {{L|Unit|здесь}}. }} | ||
== Выбор активной конфигурации == | == Выбор активной конфигурации == | ||
Нам нужно установить активную ''configuration'' в | Нам нужно установить активную ''configuration'' в "Release HL2". | ||
Чтобы сделать это: | Чтобы сделать это: | ||
# Выберите '''Build->Configuration Manager'''. | # Выберите '''Build->Configuration Manager'''. | ||
# Измените '''Active Solution Configuration''' в выпадающем списке в значение | # Измените '''Active Solution Configuration''' в выпадающем списке в значение "Release HL2" | ||
# Нажмите '''Close'''. | # Нажмите '''Close'''. | ||
Line 60: | Line 52: | ||
# Выберите Project -> Properties (последний пункт в меню) | # Выберите Project -> Properties (последний пункт в меню) | ||
# Нажмите кнопку Configuration Manager (в правом верхнем углу) | # Нажмите кнопку Configuration Manager (в правом верхнем углу) | ||
# В выпадающем списке '''Active Solution Configuration''' проставьте опцию | # В выпадающем списке '''Active Solution Configuration''' проставьте опцию "Release" | ||
== Компиляция проекта == | == Компиляция проекта == | ||
Line 67: | Line 59: | ||
== Запуск мода == | == Запуск мода == | ||
Прежде чем запустить мод, надо убедиться, что есть что запускать. К примеру, новые моды используют AppId 215 (Ep1) или 218 (Orange Box). Он загружает правильную версию | Прежде чем запустить мод, надо убедиться, что есть что запускать. К примеру, новые моды используют AppId 215 (Ep1) или 218 (Orange Box). Он загружает правильную версию {{L|Source SDK Base}}, который доступен почти каждому вместе с играми Valve и, в случае с 218/Orange Box, поддерживает последнюю версию движка. Вы можете оставить или изменить свой AppId в {{L|Gameinfo.txt|файле GameInfo.txt}}. | ||
SDK Base обеспечивает только общим контентом Half-Life 2. Если Вы хотите использовать контент из других игр, или карт HL2, Вам нужно сменить AppId | SDK Base обеспечивает только общим контентом Half-Life 2. Если Вы хотите использовать контент из других игр, или карт HL2, Вам нужно сменить AppId {{L|Steam Application IDs|на ту игру, из которой Вы хотите загружать}}. Если Вы хотите 'монтировать' более одной игры, {{L|Mounting Other Content|Вы можете так сделать}}, но Вы должны избежать этого метода, если Вам действительно этого не надо по причине, описанной на этой странице. | ||
В директории, в которой Вы создали мод, есть командный файл под названием <code>run_mod.bat</code>. Не используйте bat файл для запуска Вашего мода, пока он не обновлён для SDK Base. Лучший путь для запуска Вашего мода - перезапуск Steam и запуск из Вашего Games list (где он, будем надеяться, появится - если нет, проверьте свой AppId) или через опцию наладки в vis (читайте как наладить код source). | В директории, в которой Вы создали мод, есть командный файл под названием <code>run_mod.bat</code>. Не используйте bat файл для запуска Вашего мода, пока он не обновлён для SDK Base. Лучший путь для запуска Вашего мода - перезапуск Steam и запуск из Вашего Games list (где он, будем надеяться, появится - если нет, проверьте свой AppId) или через опцию наладки в vis (читайте как наладить код source). | ||
Line 75: | Line 67: | ||
Теперь, когда контент загружен, запускайте игру. Когда движок загружен, Вам покажется главный экран. Если вас предупредят об отсутствующих файлах, таких как <code>maplist.txt</code>, игнорируйте это. | Теперь, когда контент загружен, запускайте игру. Когда движок загружен, Вам покажется главный экран. Если вас предупредят об отсутствующих файлах, таких как <code>maplist.txt</code>, игнорируйте это. | ||
В "Опции", "Клавиатура", "Дополнительно", включите Консоль Разработчика. Нажмите тильду ( | В "Опции", "Клавиатура", "Дополнительно", включите Консоль Разработчика. Нажмите тильду ('''~'''), чтобы открыть {{L|Developer_Console|Консоль Разработчика}}. Эта консоль предоставляет Вам множество инструментов, помогающих Вам создавать контент для движка Source. | ||
В Вашем одиночном моде нет карт, так что скопируйте карту из карт HL2 с | В Вашем одиночном моде нет карт, так что скопируйте карту из карт HL2 с {{L|GCFScape}} в папку Вашего мода /maps/ в SteamApps/SourceMods. Загрузите карту, набрав "map " (включая пробел) в консоли и выберите из списка (например "<code>map d1_canals_01</code>"), затем введите "<code>impulse 101</code>", чтобы дать себе гору оружия. | ||
{{ | {{Note|Разрешите читы в игре, введя "<code>sv_cheats 1</code>" в консоле (~), чтобы команда "<code>impulse 101</code>" работала}} | ||
Выберите и выстрелите из RPG, чтобы посмотреть на Ваши изменения. | Выберите и выстрелите из RPG, чтобы посмотреть на Ваши изменения. | ||
Line 86: | Line 78: | ||
Теперь вы установили и компилировали свой первый мод. | Теперь вы установили и компилировали свой первый мод. | ||
* Смотрите в | * Смотрите в {{LCategory|Modding}} статьи, которые помогут Вам добавить больше возможностей в Ваш мод. | ||
* Смотрите в | * Смотрите в {{LCategory|Programming}} список документации для программистов. | ||
* Смотрите в | * Смотрите в {{LCategory|Level_Design}} статьи по созданию уровней для вашего мода. | ||
* Смотрите в | * Смотрите в {{LCategory|Modeling}} статьи, которые помогут вам добавить модели в ваш мод. | ||
{{ACategory|Programming}} | |||
{{ACategory|Tutorials}} | |||
{{ACategory|Modding}} | |||
Latest revision as of 03:53, 22 August 2024
Этот учебник научит вас создавать, настраивать и собирать вашу первую простую модификацию (мод) для движка Source. В ней мы изменим скорость, с которой в
Half-Life 2 ракеты будут путешествовать по миру.
Создание проекта
Для ясности в этом учебнике мы назовём наш первый мод "MyMod". Когда Вы создаете Ваш собственный мод, Вы можете назвать его как хотите (например "QuickMod", "TreasureTroll" и т.д.)

Для создания проекта мода:
- Откройте Source SDK из меню Инструменты Steam'a.
- Откройте Create A Mod из группы Utilities.
- Выберите Modify Half-Life 2 single-player или Modify Half-Life 2 Multiplayer.
- Укажите, куда вы хотите разместить ваш проект мода (например
C:\MyMod
). - Введите имя вашего мода. В этом примере мы используем "MyMod".
- Vista может потребовать дополнительных шагов в зависимости от ваших параметров настройки безопасности. (см. известные проблемы ниже)
Steam скопирует все важные файлы в указанный Вами целевой каталог. Теперь у вас есть копия исходного кода Half-Life 2, который вы можете изменять.
Подготавливаем решение
- Внимательно следуйте инструкциям Компиляции в VS2008 / 2005 / 2010 .
- Внимательно следуйте инструкциям Запуска из Visual Studio .
Изменяем скорость ракет
Если вы редактируете Half-life Single-player, откройте файл hl2_dll/weapon_rpg.cpp
. В противном случае откройте hl2mp_dll/weapon_rpg.cpp
.
В начале файла найдите строку:
#define RPG_SPEED 1500
Измените эту строку так:
#define RPG_SPEED 400
Изменяя это число, мы говорим ракете перемещаться со скоростью 400 юнитов в секунду (примерно 7 - 8 метров в секунду). Раньше ракета перемещалась со скоростью 1500 юнитов в секунду (около 30 метров в секунду). Разница в скорости будет очень заметна когда вы скомпилируете и запустите мод.

Выбор активной конфигурации
Нам нужно установить активную configuration в "Release HL2".
Чтобы сделать это:
- Выберите Build->Configuration Manager.
- Измените Active Solution Configuration в выпадающем списке в значение "Release HL2"
- Нажмите Close.
Для пользователей Visual Studio 2005/2008:
- Выберите Project -> Properties (последний пункт в меню)
- Нажмите кнопку Configuration Manager (в правом верхнем углу)
- В выпадающем списке Active Solution Configuration проставьте опцию "Release"
Компиляция проекта
Теперь вы готовы скомпилировать solution. Выберите Build->Build Solution для начала. Когда запрошенная компиляция будет завершена появится файл server.dll
и client.dll
в директории MyMod/bin
(например C:\MyMod\MyMod\Bin)
. Это ваши серверная и клиентская DLL для вашего мода и это часть того что вы должны распространять конечным пользователям.
Запуск мода
Прежде чем запустить мод, надо убедиться, что есть что запускать. К примеру, новые моды используют AppId 215 (Ep1) или 218 (Orange Box). Он загружает правильную версию Source SDK Base , который доступен почти каждому вместе с играми Valve и, в случае с 218/Orange Box, поддерживает последнюю версию движка. Вы можете оставить или изменить свой AppId в файле GameInfo.txt .
SDK Base обеспечивает только общим контентом Half-Life 2. Если Вы хотите использовать контент из других игр, или карт HL2, Вам нужно сменить AppId на ту игру, из которой Вы хотите загружать . Если Вы хотите 'монтировать' более одной игры, Вы можете так сделать , но Вы должны избежать этого метода, если Вам действительно этого не надо по причине, описанной на этой странице.
В директории, в которой Вы создали мод, есть командный файл под названием run_mod.bat
. Не используйте bat файл для запуска Вашего мода, пока он не обновлён для SDK Base. Лучший путь для запуска Вашего мода - перезапуск Steam и запуск из Вашего Games list (где он, будем надеяться, появится - если нет, проверьте свой AppId) или через опцию наладки в vis (читайте как наладить код source).
Теперь, когда контент загружен, запускайте игру. Когда движок загружен, Вам покажется главный экран. Если вас предупредят об отсутствующих файлах, таких как maplist.txt
, игнорируйте это.
В "Опции", "Клавиатура", "Дополнительно", включите Консоль Разработчика. Нажмите тильду (~), чтобы открыть Консоль Разработчика . Эта консоль предоставляет Вам множество инструментов, помогающих Вам создавать контент для движка Source.
В Вашем одиночном моде нет карт, так что скопируйте карту из карт HL2 с GCFScape в папку Вашего мода /maps/ в SteamApps/SourceMods. Загрузите карту, набрав "map " (включая пробел) в консоли и выберите из списка (например "map d1_canals_01
"), затем введите "impulse 101
", чтобы дать себе гору оружия.

sv_cheats 1
" в консоле (~), чтобы команда "impulse 101
" работалаВыберите и выстрелите из RPG, чтобы посмотреть на Ваши изменения.
Вы создали свой первый мод
Теперь вы установили и компилировали свой первый мод.
- Смотрите в Category:Modding статьи, которые помогут Вам добавить больше возможностей в Ваш мод.
- Смотрите в Category:Programming список документации для программистов.
- Смотрите в Category:Level_Design статьи по созданию уровней для вашего мода.
- Смотрите в Category:Modeling статьи, которые помогут вам добавить модели в ваш мод.