Pull to refresh

REFLECT — браузерная [2D] игра с нуля за 9 дней

Reading time3 min
Views21K
Всем хабралюдям — привет!

Астрологи объявили неделю хакатонов.

Тема почти пятничная, постим, считайте, в пятницу. Мы — компания друзей, которая хочет попробовать себя в разработке браузерной игры «REFLECT» в сжатые сроки.

Интерес к хакатонам появился у нас после нескольких недавних статей на хабре. Этот марш-бросок несколько отличается форматом, мы назвали его "ХАХАтон".

Старт запланирован на сегодня (15 декабря 2012) на 15:00 по Москве. Приглашаем посетить трансляцию (16+), заглянуть на github и поучаствовать комментариями, подсказками и идеями.

Кроме этих выходных, работа над проектом будет продолжаться в течение следующей недели, примерно по 2 — 4 часа в будние дни, после 19:00, плюс первые выходные после конца света.

О нашем сборище в картинках:

Иван limon (Программист). Основные навыки: математика, физика.

Максим (Программист). Основные навыки: Actionscript 3.0.

Альберт (Интернет, PR). Основные навыки: SMM, фкуснажрать, многаспать.
При пожаре выносить первым.

Иван (графика). Основные навыки: Photoshop, Illustrator.

Дмитрий (игровой дизайн). Основные навыки: SEO, верстка.

Владислав (звук). Основные навыки: тренер по акробатике. Крутит двухи.

Евгения. (графика). Основные навыки: web дизайн.


По задумке главным героем будет небольшой робот, которому придется воевать с волнами вражеских юнитов, но при этом в его арсенале не будет оружия. Геймплей заключается в отражении ударов недругов при помощи Щита. То есть, чтобы убить врага, необходимо отразить его выстрел и убить сволочь его же оружием. Юнитов-паразитов будет куча, они будут лезть со всех сторон, и задачей игрока станет не погибнуть и продержаться максимальное количество времени (а-ля Crimsonland). С каждой новой волной будет сложнее справляться, но в качестве небольших бонусов на карте будут появляться дополнительные power up средства, которые на короткий срок позволят получать преимущество. В принципе, нестандартная боевая модель и есть основная фишка данной авантюры.

Цель — выпустить полностью рабочую версию простой браузерной игры. Мы отказываемся от многих деталей, которые сделали бы игру более увлекательной и захватывающей, и делаем упор на простоту и работоспособность. При наличии времени мы также сделаем версии под Android и iOS, но, если честно, пока не знаем как :)

Во время трансляции вы можете увидеть, как ведется работа над игрой, а также, как мы отдыхаем на перерывах за партейкой-другой в StarCraft II 4x4.

После игры «REFLECT» планируем взяться за чуть более сложный проект. С удовольствием принимаем идеи на рассмотрение.

>>> Выбранные средства разработки <<<

Aptana Studio. Бесплатная, симпатичная среда разработки. Имеет нормальный дебаг JS, интегрирована командная строка Git.

Git. Система контроля версий. Пришла пора осваивать, наконец.

Репозиторий на github

EaselJS. Javascript canvas HTML5 движок. Я влюбился в него с первых строк исходного когда примеров. Простой, лаконичный. По соседству живет работа со звуком и твины.

jQuery. Куда без него?

Серверная часть таблицы рекордов — PHP + MySQL.

Дабы предупредить вопросы по google closure — мы пока решили обойтись без него, чтобы быть чуть ближе к pure JS, плюс: и так много в чем нужно разбираться, среди нас нет профессиональных программистов JS.

Чтобы не начинать совсем «нулевыми», заранее был прощупан движок EaselJS и подготовлен следующий функционал: менеджер игровых сцен, заготовка сцены с меню, заготовка сцены с игрой, прелоадер картинок. Из-за того, что в некоторых браузерах политикой безопасности запрещено загружать в JS локальные картинки, для локальных тестов написан простенький httpServer.exe, а для обладателей маков в репозиторий залит бесплатный скаченный macOShttpServer (спасибо Диме) Локально запускать проект следует с использованием этих “серверков”. Все это можно посмотреть и скачать тут.

Если сайт ляжет по каким-либо причинам, блог сей буффонады будет вестись в группе вконтакте. Прямые ссылки на трансляции: limon, Максим, Альберт, Дмитрий, Иван, Владислав, все вместе.

Мы не просим, но и не отказываемся от помощи в любом её проявлении: идея логотипа, его реализация, наброски врагов, советы по оптимизации кода, по улучшению структуры, рефакторингу и т.д.

UPD (24 декабря 2012 7:00)
Всем привет! Подведу небольшой итог:
Максим сейчас допиливает последние буковки кода и будем заливать на сайт. За 9 дней (2Xвыходные + 5Xвечера будних) сделано по моим оценкам не мало. Задумка, как мы её видели, оказалась сложнее в реализации, чем нам представлялось. Не смотря на это доделано почти все за исключением: баланса игры, звуков и музыка (мы их подобрали, нарезали, но программно встроить не успели), рефакторинг кода (под конец особенно набыдлокодили, кое-что требует оптимизации), не защищена таблица рекордов, есть несколько глючков, требующих починки, не заполнены info и credits. Все это планируется сделать в ближайшее время, чтобы поставить точку. В результате: получено огромное количества опыта всеми нами, огромное количества удовольствия от работы с друзьями, от общения с другими разработчиками. Всем еще раз спасибо! Не прощаемся :-)
Tags:
Hubs:
Total votes 64: ↑51 and ↓13+38
Comments43

Articles