четверг, сентября 16, 2010

Игра Alien Swarm, с исходниками

Этим летом Valve сделала жест невиданной щедрости. Они совершенно нахяляву выложили на Steam игру Alien Swarm. И полные исходники к ней. Я знаю, народ постоянно ищет исходники, чтобы по ним поучиться, вот оно.



Updated 17.09.2010:
Дополнения по результатам разбирательства с исходниками, поисков в интернетах и комментариев:
Игра сделана на движке Source и исходников самого движка нет. Причем, по слухам, движок этот в AlienSwarm модифицирован. Итого - нету кода рендера, физики. Зато AI, похоже, весь есть, по крайней мере все, что мне было нужно, я нашла.
Разбирательства с тем, чего есть, а чего нет, затруднены из-за отсутствия какой-либо документации. Есть wiki по AlienSwarm, информации там мало.
Написан AlienSwarm на С++, а не на своем скриптовом языке, это приятно.
/Updated 17.09.2010:

Давайте я расскажу как это все скачать и куда смотреть, это не очень тривиальный процесс.

Сначала надо зайти на Steam и инсталлировать Alien Swarm. Если вы там не зарегистрированы, вам предложат зарегистрироваться. И заставят скачать и установить их клиента. Игра здоровая! Что-то типа гигабайта.

Исходники Alien Swarm устанавливаются из Steam клиента из меню Tools.



Исходники приедут вот сюда, это путь по умолчанию
C:\Program Files\Steam\steamapps\common\alien swarm\sdk_src

Наверняка вам понадобится дебагная консоль, она включается в Опциях.


Вызывается по тильде, ~

Консоль выглядит вот так:



Команды дебагной консоли, которыми я пользовалась
ai_nodes - показывает все waypoint графа
ai_show_connect - показывает связи между точками waypoint графа

Сейчас еще пороюсь, может еще чего хорошее найду.

Ссылки по теме:
Are Waypoint Graphs Outnumbered? Not in AlienSwarm!
Alien Swarm SDK tutorials

10 коммент.:

Владимир комментирует...

Эта игрушка использует движок Source
скорей всего открыта только обвязка вокруг движка ? или все таки и движок открыт?

Rewers комментирует...

Ого, круто!
Недавно как раз просматривал отзывы на игромании. Говорят, что это чуть ли не лучшая игра про alien'ов на фоне всяких alien shooter'ов, crimsonland'ов и пр. Геймплей хороший, нужна слаженная командная игра, иначе проиграешь.
Полагаю теперь начнут появляться кучи разных клонов игр про alien'ов.

fuwaneko комментирует...

Владимир: разумеется открыты только исходники самой игры. В общем-то я не совсем понял откуда столько ажиотажа вокруг этого события. SDK для Source существует ещё со времён HL2 2004-го года, и исходников там достаточно, чтобы переделать вообще всё, а с каждой новой версией Source (читай — игрой) их становится только больше. Тут просто показали пример такой переделки и бесплатно выпустили небольшую игру.

Alena комментирует...

fuwaneko

Владимир: разумеется открыты только исходники самой игры. В общем-то я не совсем понял откуда столько ажиотажа вокруг этого события.

Его активно пиарили как Valve, так и Steam.

Владимир комментирует...

Ну тогда там смотреть нечего)
Спасибо за ответы.

Дарк комментирует...

Игра хороша, но недопилена.
У меня почему-то зачастую вела себя как во времена первых 2х-ядерных машин, когда таймера на ядрах рассинхронизировались и случались локальные катаклизмы и лаги.
+ там нет полноценной асинхронной подгрузки контента уровня, с медленным винтом все происходит довольно страдальчески. ну и проходится она за часик-два, а доп. контент не спешит создаваться.
а вообще игра красивая и все такое, но из их исходников многому не научишься, имхо. с тем же успехом можно к большинству крупных игр запакованные скрипты почитать.

master комментирует...

Клонов точно не будет. У таких игр не сложный api, для разработки. Все упирается в арт и дизайн.

Sergey Timoshin комментирует...

Написан AlienSwarm на С++, а не на своем скриптовом языке, это приятно.

Почему? (спрашиваю как человек, далекий от геймдева)

Alena комментирует...

Sergey Timoshin
Почему? (спрашиваю как человек, далекий от геймдева)

Потому что С++ я знаю хорошо и код могу читать легко. А со скриптовым языком - там как повезет. Особенно если он собственного изобретения.

Yliv комментирует...

О, занятно. Надо будет посмотреть...