Адская пчела и 48 часов

Автор истории мой коллега, поэтому ставлю "моё".

Каждый из нас хоть раз в жизни нырял и задерживал дыхание. Думаю, любой хакатон – это нечто похожее. Выдохнешь раньше времени – и придется выныривать. Нужно суметь рассчитать свои силы так, чтобы сделать как можно больше и не «перегореть».

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


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


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


Итак, в команду вошли: два программиста, один 3D-дизайнер и один студент со стойким желанием непременно победить.

Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост

День 1.

Первый день был пятницей и начинался он в восемь вечера по Москве. То есть, когда все нормальные люди отправились в кино, по ресторанам и в прочие увеселительные заведения, проматывать непосильно заработанное, команда (за исключением автора сего опуса), как истинные задро… игроделы направились на Game Jam.


А вот я вынужден был опоздать. Чуткое руководство с моего бывшего места работы, будучи уведомлено за неделю о грядущем событии, решило таки направить меня в последний момент в командировку. Благо в соседний город. В итоге опоздание составило почти час. Мне же время терять не хотелось и за работу я взялся еще в маршрутке. Предупреждаю, трюк был исполнен профессиональным программистом. Неподготовленного человека от такого может не хило укачать. Шучу. Никакой я не подготовленный и меня за полтора часа езды укачало. Благо не сильно.


Тем временем семеро одного не ждали, а принялись во всю за работу. Как оказалось, тема предстоящего хакатона – «Вертикальные миры», была объявлена аж за сутки до начала, а вот мы этот момент благополучно прошляпили. Сказать, что идей на эту тематику было много – значит ничего не сказать. Первый час времени вся команда в веселом угаре сыпала фантазиями одна хлеще другой, периодически высылая мне посредством смс квинтэссенцию этой вакханалии. Благо, здравый смысл возобладал и к моему приезду у нас уже была четкая идея игры.

Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост

Главным героем был избран из сотен других паучок карабкающийся куда-то вверх. В качестве орудия «труда» решили использовать (внезапно!) паутину. Малыш должен был резво кидаться ею в препятствия и тащить свою тушку выше и выше, при всем этом издавая забавные звуки. Так как времени на все отводилось крайне мало, за основу взяли движок Unity. Не смотря на наличие 3D дизайнера мы прекрасно понимали, что вряд ли осилим полноценное 3D за двое суток. Поэтому было решено рендерить в 3ds Max все анимации и делать из них спрайт-шиты для использования в игре. Тем более, что наш дизайнер уже занимался такими финтами и умел собирать это счастье в фотошопе.


Все лишнее было отсечено бритвой Оккама, а оставшееся разделено на 3 спринта. Первый был самый короткий – всего 4 часа. С восьми вечера до полуночи пятницы. Для него мы наметили следующие задачи:


- анимация паука в покое и перебирание лапками;


- основная механика уровня с бросками паутины, притягиванием к объектам, выигрышем и проигрышем;


- базовые скрипты для препятствий;


- главное меню, меню карты уровней и сопутствующая графика.


В четыре часа, конечно же, не уложились. Первый спринт был закончен с опозданием в два часа. Но в итоге мы уже имели рабочий прототип игры с одним уровнем. Паучок прыгал, карабкался и все это уже отдаленно напоминало игру.


Именно в этот момент было принято, как мне кажется, одно из ключевых решений всего хакатона. Мы пошли спать. Под презрительные взгляды соперников мы просто отправились на боковую. Думаю, со стороны это выглядело как признание собственного поражения. Но мы-то знали, где собака зарыта. И, как оказалось, были правы.



День 2.

Еще не было семи утра, когда команда в полном составе принялась за работу. Предстоял второй, самый длинный спринт – с семи утра до полуночи субботы. Соперники, которые еще пару часов назад бодренько рассекали по офису, теперь опали как озимые по ближайшим диванам и креслам. И пока у нас работа кипела, большинство из них восстанавливалось после суровой ночи.


За этот день мы должны были добавить оставшиеся анимации паука, сделать несколько новых видов препятствий и доделать еще хотя бы пару-тройку новых уровней. Еще нужно было где-то взять звуки. Если с артами все было понятно – фотошоп в руки и понеслась, то звуками никто из нас прежде не занимался. Быстрые изыскания по этому вопросу привели к GarageBand – программе, которая, как оказалось, может все, что нам нужно и к тому же бесплатно. За пару часов были состряпаны все необходимые эффекты – клацанье кнопок, писк паука и прочее.


К полудню организаторы хакатона подвезли обед и обещанный мерч. Народ поел, разжился модными футболками с логотипом события и начал оживать. Часам к трем офис расцвел всеми красками. Со всех сторон стоял гул совещающихся команд, кто-то что-то отчаянно дебажил и попутно упражнялся в великом и могучем, кто-то проводил очередной мозговой штурм, а кто-то даже пытался работать. Особенно весело это получалось у команды с VR-проектом. Они по-очереди напяливали шлем на голову, выбирались на середину офиса и начинали кружится в бешеном танце. Я как-то прежде видел такие движения, но там не было шлема, а только 380 вольт и плохое заземление.


А наш жутко инициативный студент был отправлен на разведку проектов соперников и, с его слов, беглый осмотр показал, что у конкурентов все зашибись. Есть игры в 3D, есть хорошие арты и художники в командах, а у нас унылое нечто с писклявым пауком. Позже все остальные члены команды тоже ходили на других поглядеть, и каждый раз возвращались с вестями одна хуже другой. Боевой дух команды стремительно падал и ситуацию выправлял лишь тот факт, что мы начали опережать график.


Шел уже двадцатый час хакатона, когда мозги начали окончательно плавится. Офис начал стихать, народ ходил с потерянным взглядом. Движения VR-щиков стали плавными и грациозными и даже звонкий звукорежиссер сидящей рядом команды стал говорить шепотом. Апофеозом же стала пчела от нашего моделлера: вместо рта он сделал ей просто отверстие и, в надежде быстренько состряпать рот, применил пару модификаторов к этому счастью. Вы когда-нибудь видели пчелу, рот у которой торчит как дырочка в попе? А мы - да. Поверьте, развидеть такое уже нельзя.

Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост

Второй спринт мы умудрились закончить на час раньше и уже в одиннадцать вечера с мыслью «Не победим, так хоть в грязь лицом не ударим», мы в полном составе отправились спать.



День 3.

Третий спринт оказался самым сложным. Усталость накапливалась и теперь уже даже крепкий кофе не помогал. Как и второй, мы начали его в семь утра. В запасе было еще 13 часов. Нужно было закончить работу над уровнями, добавить противников – улитку и пчелу, пофиксить мелкие баги.


Стараясь не заснуть мы отчаянно принялись за работу. Репозиторий стремительно рос, впитывая новые уровни, дизайнер проклинал пчелу, которая как-то совсем не хотел становится похожей на пчелу, студент находил все новые баги, на которые тут же ставились костыли.


Мы разогнались на столько, что закончили спринт уже к трем часам дня. Приложение было готово и мы просто полировали какие-то мелкие шероховатости. Добавлять еще что-то было уже бессмысленно. Времени на отладку новых фич явно бы не хватило.


А соперники продолжали работать. Офис бурлил и, казалось, даже набирал обороты. Члены команды вновь отправлялись на разведку, но прогноз на победу оставался неутешительным. Нам оставалось только ждать и развлекать себя чем можем. Дизайнер по-быстрому состряпал паука, играющего на барабанной установке, студент пилил презентацию, а мы с напарником добавили еще пару новых препятствий. А наше детище получило долгожданное название – «SmashedSpi».


И вот, время вышло. На часах было восемь вечера. Обессилившие, участники в прямом смысле лежали на всем, на чем только можно было лежать. Настало время демонстрации проектов общественности. В офис прибыла делегация экспертов, готовых строго, но справедливо судить творения последних 48 часов.


Один за другим участники показывали, что у них получилось, оправдывались за то, чего не успели и делились грандиозными планами о светлом будущем своего проекта. Судьи слушали, кивали и расставляли галочки в своих анкетках.

Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост

И вот, последняя команда отчиталась о проделанном и эксперты удалились в совещательную комнату для вынесения вердикта. Участники облегченно выдохнули и, наконец, могли расслабиться. Атмосфера мгновенно сменилась с напряженно-рабочей на непринужденную. Команды общались друг с другом, делились мыслями и идеями, давали друг другу поиграть, шутили и пили кофе. И только тень усталости на лицах напоминала о том, что все эти люди прошли через 48 часов хакатона. И когда судьи вышли оглашать вердикт, кажется, все даже не сразу обратили на них внимание. Они называли призовые места одно за другим, начиная с четвертого. А про нас не было ни слова. И когда, казалось, надежда совсем испарилась, было оглашено первое место – это был наш писклявый паучок!

Мы были рады? Конечно! Нам подарили три смартфона, а главное - теперь никто из членов команды не сомневался в своих силах. Конечно, это было не событие мирового уровня, но, согласитесь, ведь с чего-то нужно начинать.

Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост
Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост

А паука никто даже и не думал забрасывать. Мы продолжили работать над ним в поте лица. Впереди был полный рескин графики, новая, более качественная озвучка и еще вагон кода. Но это уже тема для отдельной статьи. Зато теперь, когда я дописываю эти строки, приложение находится на рассмотрении в AppStore. Так что вполне возможно, что к моменту публикации статьи оно уже станет доступно для скачивания.

Адская пчела и 48 часов Gamedev, Gamejam, Хакатон, Doublepilab, Smashedspi, Длиннопост

P.S: Хочу от лица всей команды поблагодарить организаторов хакатона – студию Game Insight и компанию Microsoft. Все было на высшем уровне! Предоставили удобный офис, кормили три раза в день, да еще и призы подарили! Спасибо Вам, за возможность поверить в свои силы. Для инди-разработчиков это очень важно.

Лига Разработчиков Видеоигр

6.8K пост22.2K подписчиков

Добавить пост

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"