Ваша первая модификация
Этот учебник научит вас создавать, настраивать и собирать вашу первую простую модификацию (мод) для движка 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 статьи, которые помогут вам добавить модели в ваш мод.