Как настроить Hammer для работы с Portal 2.
И так, нам понадобится:
Alien Swarm
Alien Swarm SDK
Source SDK
и собственно сам Portal 2
Далее, нам ещё понадобится последний GCFScape.
Начнём, первым делом устанавливаем GCFScape. После установки, идём в корневой каталог игры Portal 2 (для тех кто не понимает о чём я, то это то, куда вы установили игру, т.е. >>steam/steamapps/common/portal 2), в нём заходим в папку portal2, в ней ищем (внизу) и открываем с помощью GCFScape файл pak01_dir.vpk. Далее, в этом файле вы найдёте кучу папок, нам понадобятся только две из них, а именно materials и models, и вот тут идёт в ход Alien Swarm, их (эти две папки) мы распаковываем в папку >>steam/steamapps/common/alien swarm/swarm, подтверждаем замены папок и файлов если потребует и всё, фактически всё готово! В Alien Swarm SDK теперь есть модели и текстуры от второго портала, НО...
Всегда есть одно "но", и на этот раз оно довольно таки важное.
Но это ещё не всё! Вроде вот, мы уже можем ставить модели из P2, красить стены её текстурками, создовать тестовые камеры, а как вы спросите меня нам поставить например световой мост из игры, лазер, транспортную воронку и прочие крутые примочки? Для этого нам нужен файл с кодовым названием portal2.fgd, скачав этот файл, мы должны поместить его догадайтесь куда не догадались? А ладно, пихаем сюда >>steam/steamapps/название вашего аккаунта/sourcesdk/bin/orangebox/bin. Вы спросите, зачем нам прятать его так далеко от всех глаз, а я скажу зачем, затем, что рядом с ним (с файлом portal2.fgd) должен находится тотже файл, но отвечающий за Half-Life 2. После всех процедур, нам надо подключить этот файл к самому редактору карт.
И так, запускаем Alien Swarm SDK и нет, не спешим запускать Hammer World Editor, в блоке Utilities выбираем пункт Edit Game Configurations, в появившемся окне нажимаем на кнопку Add, в очередном появившемся окне вводим название игры и указываем к ней путь, т.е. >>steam/steamapps/common/portal 2/portal2, не перепутайте. Далее жмём ОК, выбираем нашу игру в списке и снова жмём ОК, после всех процедур перезапускаем SDK. И вот теперь мы можем открыть Hammer World Editor. После запуска, обратите внимание на консоль (для тех кто не знает, это такое окошко с названием Messages находящееся внизу редактора), в ней должны быть две строчки (не считая кучи дефисов (-)), а именно:
Search Path (GAME): путь к папке со стимом\steamapps\common\portal2\
Search Path (GAME): путь к папке со стимом\steamapps\common\platform\
Если у вас всё так же, то радуйтесь, у вас всё работает (почти), если же нет, то читайте этот текст заного и вникайте в мои слова, что-то вы делаете не правильно. После этой маленькой проверки мы идём в Tools>Options. И вот, в открывшемся окне настроек ищем переменную Configutarion, рядом со списком жмём на кнопку Edit, в открывшемся окне жмём на кнопку Add, воодим название игры и жмём ОК, закрываем окошко Edit Game Configurations кнопкой Close. Теперь выбираем созданную нами игру в списке. Ниже, в переменной Game Data files удаляем уже находящийся там файл Alien Swarm кнопкой Remove, далее жмём на кнопку Add и указываем *.fgd файл второго портала, кто забыл куда мы его спрятали, напоминаю >>steam/steamapps/название вашего аккаунта/sourcesdk/bin/orangebox/bin/portal2.fgd. Далее в переменную Default Point Entity class ставим info_player_start, а в соседнюю переменную Default Solid Entity class ставим func_detail. Всё остальное так, как указано ниже:
Game Executable Dicertory - $SteamUserDir\alien swarm
Game Directoty - $SteamUserDir\portal 2\portal2
Hammer VMF Directory - $SteamUserDir\portal 2\content\portal2\mapsrc (вообще сюда можно забить любой путь, т.к. по этому пути у вас будут сохраняться исходники карт сделанные в хаммере)
Prefab Directory - $SteamUserDir\alien swarm\bin\Prefabs
Далее на вкладке Build Programs выбираем созданную нами игровую конфигурацию и меняем только последний пункт, а именно, куда будут сохраняться уже скомпилированные карты, указываем - $SteamUserDir\portal 2\portal2\maps (т.е. папка с картами в игре)
Сделали, отлично, но опять же не спешите действовать, создайте новую карту или откройте существующую если у вас есть и жмём на File>Run Map, или просто F9 на клаве. В открывшемся окне жмём внизу на кнопку Expert..., далее в списке Compile/run commands снимаем галку с пункта $game_exe (последний пункт), выделяем первый и справа в поле Parameters вместо всего, что там понаписано, вставляем -game $gamedir $path\$file и жмём на кнопку Close или Go! если у вас уже готовая карта, вобщем жмите на одну из кнопок.
Всё! О чудо! Теперь у вас помимо модель и текстур имеются и все энтити из второго портала!
Собственно вам это нужно если вым действительно интересно создовать свои карты и у вас есть желание это делать, но так же нужно знать ещё и как работает сам хаммер, собственно как он работает в этой теме не обсуждается, а всё что касается построению карт на второй портал этим способом и вообще, задавайте тут, что знаем, ответим.
P.S. Пневматической трубы в энтитях я не нашёл, либо так плохо искал, либо она делается путём использования нескольких разных энтить, что вероятнее всего, ибо в игре один раз можно увидеть действие такой трубы.
P.P.S. По поводу декомпиляции карт могу сказать только, что примитивными методами это сделать нереально, ибо декомпиляция там весьма замудрённая, вобщем кому нужно, то будут пробовать разные методы, если вдруг найдёте действующий, то огласите его тут и я помещу его в этот скромный тутор.
Ну вот и всё, счастливого пути и успехов вам в вашем порталостроении
Примечание: думаю для Team Fortress 2 это описание тоже подойдёт
оригинал