Game Bytes # 1 - Блог GitHub

  1. Фон
  2. Работа с открытым исходным кодом
  3. Жизнь до GitHub

Добро пожаловать в первый выпуск Game Bytes, где мы расскажем о самых последних и самых лучших репозиториях, связанных с разработкой игр, историях успеха и других лакомых кусочках игры.

Я разговаривал с Давидом Чарнецким ( GitHub , щебет ), ведущий инженер в Агора Игры о некоторых из их работы с открытым исходным кодом. Вы можете знать Дэвида по RailsConf или же два или, может быть, его отмеченная наградами работа с открытым исходным кодом ? Если вы вообще заинтересованы в разработке игр для любой платформы, вас может заинтересовать это…

Фон

Lee Reilly: Расскажи мне немного об Agora Games.

Дэвид Чарнецки: Мы разрабатываем программное обеспечение и системы для предоставления онлайн-сервисов для видеоигр. Это могут быть такие функции, как онлайн-профили, списки лидеров, UGC или сватовство; но это может также включать разработку функциональности, которую разработчики игр не имеют времени для разработки в течение жизненного цикла игры, например, соревнования или турниры. Мы также являемся частью Major League Gaming, поэтому мы разрабатываем все их онлайн-свойства. Даже если вы не слышали о нашей компании, вы, вероятно, слышали о или играли в некоторые игры, в которых мы участвовали.

Даже если вы не слышали о нашей компании, вы, вероятно, слышали о или играли в некоторые игры, в которых мы участвовали

Lee: Wow впечатляет портфолио !

Дэвид: краснеет, шутки. Безумно вспоминать все игры, в которые мы были вовлечены, как и все звания Guitar Hero, начиная с Guitar Hero 3 и Band Hero. Мы должны обновить наш портфель, чтобы включить некоторые из наших более поздних проектов, таких как Saints Row: The Third и Gotham City Impostors. И я рад сказать, что мы также работаем над ... о ... я не могу говорить об этих проектах 😉

Работа с открытым исходным кодом

Работа с открытым исходным кодом

Ли: В дополнение к этим крупным коммерческим проектам, с которыми вы работаете, у вас есть большое количество проекты с открытым исходным кодом что вы сделали доступным для сообщества. Как вы решаете, какие проекты вы собираетесь открывать?

Дэвид: Он полностью управляется командой инженеров. Обычно это компоненты, которые мы извлекаем из более крупных проектов, таких как наш Гидра платформа или Major League Gaming сайты, такие как Starcraft 2 Battles или же Профили игроков MLG , Думаю, это одно из преимуществ ответственной инженерной культуры. К нам относятся как к взрослым, и компания уважает и активно поощряет нас к участию в сообществе открытого исходного кода и обсуждать нашу работу в местных группах пользователей и на конференциях.

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

Дэвид: Итак Лидеры является жемчужиной для обеспечения функциональности таблицы лидеров (табло) при поддержке Redis. Реализация Ruby - это то, что я бы назвал «эталонной реализацией». С точки зрения поддерживаемой функциональности наша реализация Python отслеживает Ruby, поскольку именно это мы используем в нашей платформе промежуточного программного обеспечения. Другие «более полные» реализации: PHP, Java, Scala, ну, к сожалению, не так много. Дело не в том, что у меня нет желания поддерживать другие версии, это необходимость. Все наши системы написаны на Ruby или Python, поэтому этим библиотекам уделяется больше всего внимания.

Я эгоистично использовал перенос библиотеки списка лидеров Ruby для изучения других языков программирования. Что мне нравится в переносе библиотеки, так это то, что это очень специфическая часть функциональности, она хорошо протестирована, требует интеграции клиентской библиотеки и дает мне возможность узнать, как все это упаковать, и попробовать использовать лучшие практики в новый язык. Я определенно должен посвятить некоторое время тому, чтобы показать другим реализациям некоторую любовь.

Я определенно должен посвятить некоторое время тому, чтобы показать другим реализациям некоторую любовь

Lee: Какие-нибудь известные вам открытые или инди-игры используют их?

Я лично не знаю ни одной инди-игры, использующей библиотеку лидеров. Во всяком случае, я ожидаю, что это будет сервис, который игра может использовать для обеспечения функциональности списка лидеров. Я знаю конкретно о некоторых случаях использования библиотеки за пределами видеоигр. Например, проверить Таблицы лидеров WeightTraining.com , Один из соучредителей сайта даже внес код обратно к жемчужине лидеров, чтобы вы могли хранить более богатые данные вместе с таблицей лидеров. Yay с открытым исходным кодом!

Lee: У вас есть еженедельно Game Face сообщение в блоге, в котором кратко изложены ваши еженедельные внутренние / внешние открытые материалы.

Дэвид: Мы делаем!

Ли: неловкое молчание

Дэвид: Я рад, что есть хотя бы один человек, который читает блог definitely Я определенно черпал вдохновение в мыслиботе Эта неделя в Open Source в начале еженедельного сообщения в блоге. Очевидно, мне пришлось придумать название игры. В начале 2012 года я провел оценку всей работы с открытым исходным кодом, которую мы проделали в 2011 году, но это та информация, которая требует более пристального внимания. Большему сообществу не нужно узнавать о наших проектах через несколько месяцев или год после того, как они стали доступны. Я хотел, чтобы у нас было единственное место, где мы могли бы собирать информацию об открытых источниках от нашей команды, независимо от того, являются ли они проектами Agora Games. В настоящее время мы работаем над 24 проектами, которые наши инженеры открыли в 2012 году.

Это довольно простой процесс для составления еженедельного поста в блоге Game Face. Каждую неделю я создаю новую «блочную» запись в блоге и, поскольку я вижу вклады в проекты с открытым исходным кодом в HipChat на протяжении всей недели, я буду делать заметки в этой записи. GitHub Services FTW! В четверг днем ​​я обычно звоню команде, чтобы сказать: «Вот как выглядит Game Face на этой неделе, я что-то пропустил?» Я думаю, что это также служит напоминанием о том, что мы полностью поддерживаем и поощряем усилия с открытым исходным кодом. Утром в пятницу я делаю последние исправления в посте нашего блога после нашей ежедневной встречи, а затем публикую его. Очевидно, что это можно автоматизировать, но технический пост в блоге довольно легко объединить. В основном, вы помещаете несколько дополнительных слов в обозначения CHANGELOG 🙂

Lee: Я вижу, что вы проводите 24-часовые хакатоны на Agora Games. Какие-нибудь известные проекты с открытым исходным кодом вышли из этого?

Дэвид: Наши Hack-A-Thons на Agora Games очень веселые. Мы начали делать их пару лет назад, и теперь мы делаем их регулярно в 2012 году. Раз в два месяца все происходит примерно так: в четверг, в 16:00, начинается встреча, на которой компания собирается для обсуждения идей проекта и формирования команд. Мы очень слабо разбираемся в том, что представляет собой проект, связанный с работой, в котором вы можете в значительной степени работать над чем угодно, но вы должны продемонстрировать что-то в 16:00 в пятницу во время итоговой встречи. В течение этих 24 часов вам остается лихорадочно развиваться и воплощать в жизнь вашу идею.

У нас было несколько проектов с открытым исходным кодом из наших Hack-A-Thons. Некоторые из них

  • Chai - среда для насмешек и заглушек для Python, похожая на mocha в Ruby,
  • strumbar - обертка вокруг ActiveSupport :: Уведомления с предконфигурациями для базовых инструментов, отправляемых в statsd, и
  • bracket_tree - система брекетинга, построенная для передачи визуального представления, логики прогрессии и начального отображения в сериализуемом формате.

Очевидно, что есть больше проектов с открытым исходным кодом, которые вышли из Hack-A-Thons, однако, я думаю, что некоторые из лучших проектов были сделаны людьми, не входящими в проектирование. Например, три наших продюсера собрали видео пару лет назад, чтобы витрина Агора Игры и город Троя, штат Нью-Йорк. Каждый может внести что-то удивительное в Hack-A-Thon. Это не обязательно должен быть код.

Кроме того, музыка для этого видео была от нашего продюсера Кларк Фоли бывшая группа Action Action. Меня поражает, что у него есть альбомы в iTunes, он открыт для Flock of Seagulls (как это плохо?) И сидит на расстоянии нескольких пар от меня!

Ли : Больной! Я сидел рядом со Скоттом «Драконом» Чаконом, профессиональным игроком в доджбол и автором какой-то книги. Я знаю, каково это быть потерянным.

Дэвид: Сладкий!

Ли: Чувак!

Дэвид: Свееет !

Lee: Duuuuude !

Дэвид: Су-хи! :режим бога:

Lee: Так что да, я бы хотел видеть больше разработчиков игр, вовлеченных в open source.

Дэвид: Я тоже, и я написал об этом в блоге AltDevBlogADay, участником которого я являюсь, в посте под названием: «Надень свое игровое лицо» , Я не могу думать о разработчике игр, который не использует программное обеспечение с открытым исходным кодом в некотором качестве. Только хорошие вещи могут быть получены, если ваша организация сможет внести свой вклад в сообщество открытого исходного кода без большого количества бюрократии. Как игровое сообщество, мы должны продолжать проповедовать осведомленность об открытых источниках, таких как Mojang Minecraft API или же Программное обеспечение id на GitHub или же Поддержка GitHub для ассемблера DCPU-16 или ваш коллекция вещей, связанных с играми на GitHub ,

На самом деле Agora Games получила большой прорыв от открытой разработки. Ранее инженеры компании создали модификацию для Half-Life 2 под названием План атаки , Это была одна из ранних модификаций Half-Life 2, где на наши серверы отправлялась статистика о вашем игровом процессе, которую вы затем могли просматривать в Интернете. Известие о Vicarious Visions (они разработали порты Wii для Guitar Hero), а затем и их родительскую компанию Activision рассказали нам о том, что мы работали в режиме онлайн. Именно так мы и попали в Guitar Hero 3. Остальное, скажем так, история. Итак, открытый исходный код и открытая разработка в отношении видеоигр близки и дороги нашим сердцам.

Жизнь до GitHub

Ли: Agora Games была основана в 2005 году; Agora Games GitHub Организация не существовало до 2009 года. Что вы использовали ранее? Помог ли Git / GitHub?

Дэвид : Чтобы выразиться в терминах «Безумного Макса», я называю пред-2009 « до времени » или « давно, давно ». Как и во многих организациях, до Git мы использовали Subversion. Большинство из нас, вероятно, считают само собой разумеющимся, как легко использовать Git без центрального сервера, как легко выполнять ветвление, как легко сохранять изменения, когда вы работаете над чем-то и нуждаетесь в сохранении этой работы и т. Д. ,

Если вы посмотрите на возможности, которые предоставляет GitHub, помимо просто размещаемых Git-репозиториев, вам быстро станет понятно, что мы должны тратить деньги на обслуживание. Интегрированные вики, проблемы, документация через Markdown (или другие), соавторы и команды, запросы на извлечение, сервисные интеграции и так далее. GitHub делает это потрясающе и плавно, поэтому мы можем сосредоточиться на нашей основной компетенции - разработке программного обеспечения и систем для предоставления онлайн-сервисов для видеоигр.

ИГРА ОКОНЧЕНА

Если у вас есть какие-либо комментарии, вопросы или предложения для будущих выпусков Game Bytes, пожалуйста, напишите gamebytes@github.com ,

Как вы решаете, какие проекты вы собираетесь открывать?
Были ли какие-либо проблемы с портированием или поддержанием его в актуальном состоянии?
В четверг днем ​​я обычно звоню команде, чтобы сказать: «Вот как выглядит Game Face на этой неделе, я что-то пропустил?
Какие-нибудь известные проекты с открытым исходным кодом вышли из этого?
Как это плохо?
Что вы использовали ранее?
Помог ли Git / GitHub?