- Как настроить half life sdk
- Как настроить half life sdk
- Source Modding — Часть 1 — Основы основ
- Вступление
- Немножко терминов
- Так почему же именно Source?!
- Что нам необходимо?
- Введение в сурс дела
- Репозиторий
- Выбор ветки
- Стиль кода
- Структура кода
- Генерация проектов
- Исключение HL2
- Другие скрипты
- Первичная сборка и запуск
- Сборка
- Запуск — Способ 1 — Steam
- Запуск — Способ 2 — Visual Studio
- Первая модификация в коде
- Функции семейства Msg()
- Говорящий пистолет!
- Заключение
- Чему мы научились?
- Что дальше?
Как настроить half life sdk
| 4,677 | уникальных посетителей |
| 128 | добавили в избранное |
Хотите научиться делать карты, но не знаете, как настроить программу? Вы нашли ответ на свой вопрос. Теперь программу Source SDK не нужно настраивать, в Steam есть упрощённая версия Source SDK встроена почти в каждую игру от Valve. Инструменты Source SDK разделены по частям, их вы сможете найти вот в этих папках:
Вот список игр и их директории, которые содержат инструменты SourceSDK + Hammer Editor:
Team Fortress 2: Steam → SteamApps → common → Team Fortress 2 → bin.
Half-Life 2: Steam → SteamApps → common → Half-Life 2 → bin.
Half-Life 2 Deathmatch: Steam → SteamApps → common → Half-Life 2 Deathmatch → bin.
Day of Defeat Source: Steam → SteamApps → common → Day of Defeat Source → bin.
Counter-Strike Source: Steam → SteamApps → common → Counter-Strike Source → bin.
Portal: Steam → SteamApps → common → Portal → bin.
Fistful of Frags: Steam → SteamApps → common → Fistful of Frags → sdk → bin.
Codename CURE: Steam → SteamApps → common → Codename CURE → bin.
Synergy: Steam → SteamApps → common → Synergy → bin.
Garry’s Mod: Steam → SteamApps → common → GarrysMod → bin.
Перейдите по этим папкам и вы найдёте встроенные инструменты SDK. Кстати говоря, Hammer Editor там уже настроен, можно смело запускать и создавать карты.
Теперь нужно только запустить редактор, кликните по ярлычку Hammer.exe для запуска редактора карт. И смело можете создавать или редактировать карты, которые пожелаете. Ну, а ежели вам понадобятся другие инструменты типа Model Viewer, то в этой же папке bin ищите ярлыки запуска инструментов SDK и смело запускайте их. В некоторых играх от Valve уже вложены базовые инструменты. Типа, просмотр моделей, создатель карт и так далее.
Что бы создавать карты для таких игр как Left 4 Dead 2 или Counter-Strike: Global Offensive вам потребуется навести курсор на слово Библиотека в Steam, найти похожее название SDK для игры и установить его. К примеру, для Counter-Strike: Global Offensive, вам понадобится инструмент Counter-Strike: Global Offencive – SDK. Аналогично для Left 4 Dead 2 вам понадобится инструмент под названием Left 4 Dead 2 Authoring Tools в общем я думаю вы поняли и разберётесь самостоятельно.
Вы так же можете попробовать установить и поработать со следующими бесплатными инструментами:
— Source SDK
— Source SDK Base 2006
— Source SDK Base 2007
— Source SDK Base 2013 Dedicated Server
— Source SDK Base 2013 Multiplayer
— Source SDK Base 2013 Singleplayer
Для пользователей, любящих старый движок игры — GoldSource тоже есть SDK:
— Half-Life SDK
— Sven Co-op SDK
Рекомендую попробовать другие SDK инструменты в Steam:
— Alien Swarm — SDK
Другие инструменты SDK вы получите при покупке игр в Магазине Steam. Например, купив игру Rust, вам в комплекте с ним дадут инструмент под названием Rust — SDK. Без покупки игры вы не сможете установить этот инструмент, сначала вам нужно будет приобрести игру в Магазине Steam, а затем устанавливать этот самый инструмент.
Смотрите видео-уроки по созданию карт или модов через SourceSDK на YouTube, устанавливайте инструменты через Библиотека → Инструменты.
Всем начинающим создателям карт желаю удачи!
1. Нажмите: Win+R и введите следующую команду:
2. Нажмите: Enter — После нажатия настройки Hammer Editor сброситься до заводских.
3. Запустите редактор со сброшенными до заводских настроек и настройте его под себя.
Использование RegEdit для восстановления настроек Hammer:
- Закройте Hammer если он запущен в данный момент.
- Из Меню пуск, Выберите Выполнить. (или используйте комбинацию клавиш win+R).
- Введите regedit и нажмите OK.
- Перейдите к началу древа.
- Пройдите по пути HKEY_CURRENT_USER\Software\Valve\Hammer.
- Сделайте резервное копирование настроек Hammer, щёлкните правой кнопкой мыши на на элемент Hammer И выберите пункт меню Экспортировать.
- Напишите имя файла (например hammer_settings.reg) и сохраните на ваш рабочий стол.
- Кликните правой кнопкой мыши на элемент Hammer и выберите пункт Удалить.
- Нажмите Да для подтверждения.
- Закройте Regedit и запустите Hammer для восстановления настроек.
Совет: Проверьте, есть ли проблемы с интерфейсом Hammer перед удалением резервной копии настроек файлов с рабочего стола. Если хотите восстановить настройки обратно, то щёлкните дважды по файлу на рабочем столе с сохранёнными настройками, и подтвердите добавление.
Зайдите в папку bin и там найдите файл с именем CmdSeq.wc и удалите его.
Перезапустите Hammer и теперь ваши настройки компиляции по умолчанию были восстановлены.
Источник
Как настроить half life sdk
A guide for setting up Hammer editor.
Jack is a more recent editor that can do many more things than hammer, you might be better off using it instead of hammer.
| 1,289 | уникальных посетителей |
| 40 | добавили в избранное |
Lets start by downloading the tools we need.
Start steam
Mouse over the Libary tab, and click on tools.
Find «Half-life SDK» right click and install.
Depending on your connection this might take a while to download.
The sdk tools are old so you will need to download the newer versions.
Download Hammer 3.5 from here
Download the new FGD fromm here
Download either the 32 or 64 bit version of the compilers, if your not sure use the 32 bit version.
Once the `Half-life SDK` has downloaded we need to update these tools.
The new version of hammer renders models which makes it easy to add and position models in our maps.
First replace the old hammer editor with a new version.
- Open folder C:\Program Files (x86)\Steam\SteamApps\common\Half-Life SDK\Hammer Editor
rename hammer.exe to hammer-34.exe
For the models to show in hammer we need to use a new FGD.
- Place the halflife-35.fgd file to the following folder.
The sdk compilers are very old and as these do all the hard work we need to update them. we will be using Zhlt because they are much easier to use.
- Open the folder C:\Program Files (x86)\Steam\SteamApps\common\Half-Life SDK\Hammer Editor
Add a new directory called ZHLT
These settings are for 64 bit, you will need to adjust them for 32bit windows
Start hammer either by making a shourt cut to the hammer.exe or double clicking Half-life SDK in your steam libary tab.
Hammer will ask if you need help setting it up, click no.
You should now have the main settings menu for hammer, click the Game configurations tab
- Press the top Edit button, next to the Configuration
- Click ok, and then click close
Click the Add button next to Game Data files
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Hammer Editor\fgd\half-life
- Set Game Executable Directory C:\Program Files (x86)\Steam
Set Mod directory to C:\Program Files (x86)\Steam\SteamApps\common\Half-Life\valve
set Game directory to C:\Program Files (x86)\Steam\SteamApps\common\Half-Life
set Rmf directory to C:\Program Files (x86)\Steam\SteamApps\common\Half-Life SDK\Map Files
These settings are for 64 bit, you will need to adjust them for 32bit windows
Click the Build Programs tab
Make sure configuration is set to half-life zhlt
In Game executable type
steam.exe
Use the following paths for 64bit windows.
Set Csg executable to:-
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Hammer Editor\tools\zhlt\hlcsg.exe
Set Bsp executable to:-
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Hammer Editor\tools\zhlt\hlbsp.exe
Set Vis executable to:-
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Hammer Editor\tools\zhlt\hlvis.exe
Set Rad executable to:-
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Hammer Editor\tools\zhlt\hlrad.exe
Set Place compiled maps to:-
C:\Program Files (x86)\Steam\steamapps\common\Half-Life\valve_downloads\maps
(valve_downloads\maps folder will not exist unless you have played online, so either create them or set above to C:\Program Files (x86)\Steam\steamapps\common\Half-Life\valve\maps )
Before you start you need to add a few textures, we will just add a couple of common wads.
- Click the Textures tab
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Texture Wad Files
Open the file menu (top left) and select open
Select c1a0.rmf from this folder:-
C:\Program Files (x86)\Steam\steamapps\common\Half-Life SDK\Map Files
Save it as test.rmf
Click the compile button
If your menu looks different to the pic click the expert button
Highlight the $game_exe in the compile/run options and paste this into the Parameters box
-applaunch 70 +map $file -dev -console
Your map should now start compiling(this might take a few mins), if everything is setup right half-life should open with your map.
Don`t worry if the map stops when you run though the corridor, it would work fine if we renamed it c1a0.bsp and placed it in C:\Program Files (x86)\Steam\steamapps\common\Half-Life\valve\maps.
Источник
Source Modding — Часть 1 — Основы основ
В мире существует множество игровых движков, но нет ни одного движка, похожего на Source своей историей и особенностями.
В этом (пилотном) уроке мы разберем простейшие действия с исходными кодами SDK, а также внесем наше первое изменение в код Half-Life 2.
Вступление
Немножко терминов
Сам по себе Source SDK — набор утилит и программ, помогающих в разработке собственных уровней и модификаций для игры, а также исходные коды Half-Life 2 и эпизодов.
Игра/Мод (Для сурса нет никакой разницы, игра это или мод :p) — скомпилированные исходные коды SDK.
Так почему же именно Source?!
Что нам необходимо?
Введение в сурс дела
Репозиторий
Исходный код SDK находится в репозитории на GitHub. Склонируйте его в любое удобное для вас место:
Выбор ветки
Если вы хотите написать свой первый мод для Half-Life 2/Episode 1/2, то используйте директорию sp/ и Source SDK Base 2013 Singleplayer.
Если же вы извращенец и хотите написать свой первый мод для Half-Life 2: Deathmatch, то используйте директорию mp/ и Source SDK Base 2013 Multiplayer.
ВАЖНО: Туториал будет рассматривать программирование под ветку SP, поэтому пути, содержащие hl2 в пересчете на MP могут содержать hl2mp вместо hl2 .
Стиль кода
Клиентские (client.dll) классы именуются с префиксом C_ , а серверные (server.dll) — с префиксом C :
Поля класса именуются с префиксом m_, использование венгерской нотации рекомендуется (на то есть свои причины, которые здесь обсуждать нет смысла):
Структура кода
SDK, так же как и движок, разделён на несколько частей.
- client.dll
Клиентская часть игры.
Отвечает за рендеринг, предсказания и ввод.
Расположена: src/game/client/ - server.dll
Серверная часть игры.
Отвечает за игровую логику, ИИ и т.д.
Расположена: src/game/server/ - tier1.lib
Библиотека, содержащая в себе множество полезных фич, например UTL («валвовская» версия STL), interface convention и т.д.
Расположена: src/tier1/ - raytrace.lib
Библиотека, внезапно содержащая в себе функции и типы, предназначенные для рейтрейсинга. Честно говоря, я так и не понял, что библиотека для компиляторов делает здесь.
Используется компилятором vrad и, судя по утечкам исходных кодов, редактором уровней Valve Hammer Editor.
Расположена: src/raytrace/ - mathlib.lib
Библиотека, содержащая в себе множество типов и функций, используемых в «повседневной» математике Source.
Расположена: src/mathlib/ - vgui_controls.lib
Библиотека, содержащая в себе реализации разных элементов (кнопки, панели) VGUI2.
Используется почти повсеместно.
Расположена: src/vgui2/vgui_controls/
Source SDK имеет свой генератор проектов (sln, Makefile, etc.) с блэкджеком и… кхм…
Называется он Valve Project Creator и находится в src/devtools/bin .
Проекты генерируются автоматически с использованием специальных .VPC файлов. Синтаксис этих файлов прост до безобразия — простой набор пар ключ-значение.
Вот пути до некоторых таких файлов:
ВАЖНО: При внесении ЛЮБЫХ изменений в VPC файл решение должно быть заново перегенерировано!
Генерация проектов
Проекты генерируются вызовом скрипта, расположенного в директории src/ .
В самом простом случае — достаточно просто открыть src/creategameprojects.bat .
После генерации в src/ будет находиться games.sln.
Исключение HL2
SDK имеет внутри себя также разделение на HL2 и Episodic. Использование второго позволит нам иметь некоторые фичи, например отдельную от стамины шкалу заряда фонарика.
И поэтому, чтобы не компилировать лишний код, мы можем просто исключить HL2 из скриптов:
- Откройте src/creategameprojects.bat в любом текстовом редакторе.
- Удалите из командной строки часть /hl2
- Сохраните файл и сгенерируйте проект.
Другие скрипты
Рядом с creategameprojects.bat также лежит его клон для bash а также два интересных файла — createallprojects.bat и его клон для bash.
Эти два скрипта заставляют VPC создавать проекты не только для чистых библиотек мода, но и для различных утилит, таких как vrad (Radiosity!) или height2normal.
Сейчас использовать я его вам настоятельно не рекомендую, так как свои собственные компиляторы карт нам пока не нужны.
Первичная сборка и запуск
Сборка
Чтобы удостовериться, что вы всё сделали правильно, необходимо собрать всё сгенерированное решение. Итак, собираем (вы же ведь открыли решение в IDE?):
- Переключите конфигурацию в Release.
ВАЖНО: При сборке в Debug мод крайне нестабилен. - Соберите ВСЁ решение (F6)
- Если сборка закончилась с ошибками, повторите шаг 2.
- Если ошибки повторяются, пересоздайте проекты (creategameprojects) и повторите все шаги начиная с 1.
После сборки в папке game/mod_hl2/bin/ или game/mod_episodic/bin/ должны появится наши клиентская и серверная библиотеки!
Запуск — Способ 1 — Steam
Запуск — Способ 2 — Visual Studio
Я рекомендую использовать именно этот способ — не копировать же бинарники мода каждый раз после сборки!
- Заходим в свойства проекта (не решения. ) во вкладку Debugging
- В поле Command вписываем:
- В поле Working Directory вписываем:
- В поле Command Arguments вписываем:
- Сохраняем, запускаем (F5)!
- Запускаем, в консоли запускаем карту sdk_vehicles (SP) или dm_lockdown (MP)
Если карта загрузилась и вы можете передвигаться и двигать камеру мышью — сборка успешна!
Первая модификация в коде
Функции семейства Msg()
Функции Msg() , DevMsg() , Warning() , DevWarning() и ConColorMsg() являются чем-то вроде классического printf() , но в мире программирования под Source SDK. Эти функции так или иначе выводят какой-то текст в консоль разработчика и debug output.
Говорящий пистолет!
Давайте научим пистолет писать сообщение с количеством патронов в магазине:
- Откройте src/game/server/hl2/weapon_pistol.cpp ( Server (Episodic/HL2)/HL2 DLL/weapon_pistol.cpp )
- Найдите там метод void CWeaponPistol::PrimaryAttack( void ) (Где-то вокруг строки 255)
- Аккурат после строчки BaseClass::PrimaryAttack(); добавьте какое-нибудь сообщение, например:
- Соберите мод, запустите и откройте карту
- Поскольку мы писали в аргументы -dev , чит-команды включены по умолчанию, поэтому пишите в консоль пресловутый impulse 101 и пробуйте стрелять из пистолета!
Заключение
Чему мы научились?
[Я надеюсь, что] из данного урока мы выяснили:
- Что вообще такое Source SDK и с чем его едят
- Как генерировать проекты используя VPC
- Как печатать что-то в консоль разработчика
Что дальше?
Во второй части мы разберем систему сущностей Source SDK.
Источник