465

Ludum dare, или как мы написали игру за 48 часов.

Ludum dare, или как мы написали игру за 48 часов. Ludum Dare, Игры, Java, Scala, Программирование, Gamedev, Гифка, Видео, Длиннопост

Привет, Пикабу! Мы - команда из трёх программистов и одного художника. Мы все трудоустроены, работаем в разных IT-компаниях, наша жизнь в профессиональном плане к 21-23 годам вполне устаканилась, работа сменяется отдыхом, трудовые будни протекают плавно и размеренно.  Но три раза в год всё меняется. Ранним субботним утром, часиков этак в 7 или 8 мы собираемся вместе и с горящими глазами начинаем что-то усиленно придумывать, программировать, рисовать и спорить друг с другом, создавая НЕЧТО из НИЧТО. Что движет нами? Над чем мы работаем? Чем мы упоролись?

Нет, мы не упоролись. Мы просто сбрасываем оковы рутины, участвуя в Ludum Dare - конкурсе по скоростной разработке игр. Это всемирный конкурс, который проводится три раза в год, и задача которого проста: написать компьютерную игру за 48 часов.

Ludum dare, или как мы написали игру за 48 часов. Ludum Dare, Игры, Java, Scala, Программирование, Gamedev, Гифка, Видео, Длиннопост

В нашем случае правила ещё жёстче. В Омске проводится свой, локальный Omsk Ludum Dare, участники которого должны показать свои игры в 18:00 в воскресенье, что оставляет на разработку чуть больше 30 часов (это если не спать).

Почему бы не подготовиться заранее, придя на конкурс с готовой игрой? А потому, что игру нужно писать на определённую тему, которая становится известной в последний момент.


Итак, время 8:00.

Объявляется тема людума: Growing. То бишь рост или выращивание.


Начинается генерация идеи игры. Скажу я вам, это очень непросто, когда вас четверо, и у каждого - своя точка зрения и свои гениальные мысли. Варианты придумываются один за одним и тут же отметаются, а времени остаётся всё меньше - презентация идеи через 2 часа. То мы хотим делать игру про то, как Россия встаёт с колен, то про выращивание "травы", то про личностный рост (Что это вообще?!), но в итоге останавливаемся на концепции, которая вроде звучит неплохо и всех устраивает: Выращивание овощей с элементами шутера. Игрок,  пригнувшись под забором,  бегает с ведром от колонки к грядке, периодически вставая во весь рост и  отвешивая свинцовых пилюль своему соседу, который занят тем же самым. Цель игры - вырастить овощи быстрее, чем это сделает сосед. Звучит играбельно, детали решаем уточнить по ходу разработки, и отправляемся на презентацию.

Ludum dare, или как мы написали игру за 48 часов. Ludum Dare, Игры, Java, Scala, Программирование, Gamedev, Гифка, Видео, Длиннопост

11:00 Презентация окончена, приступаем к разработке.


Не буду расписывать процесс в деталях, скажу лишь, что в процессе разработки было принято стратегическое решение: нам стало лень программировать компьютерного противника (AI), поэтому мы решили сделать игру сетевой, чтобы человек мог играть против человека. Никто из нас раньше не писал сетевые игры, но ведь надо же когда-то начинать, верно? Идём на риск, решаем потратить на исследование проблемы час. Если найдём решение, то, так и быть, будем делать сетевую игру. Решение находится, выглядит рабочим, ведёт себя как рабочее, так что назад дороги нет. Мы делаем сетевую игру!

Ludum dare, или как мы написали игру за 48 часов. Ludum Dare, Игры, Java, Scala, Программирование, Gamedev, Гифка, Видео, Длиннопост

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

Ludum dare, или как мы написали игру за 48 часов. Ludum Dare, Игры, Java, Scala, Программирование, Gamedev, Гифка, Видео, Длиннопост

Художнику так же пришлось немало поработать. Каждый игрок стоял за забором своего цвета, выращивал собственный вид растения, был наряжен в собственный скин и стоял на фоне собственного бэкграунда. Всё это необходимо было нарисовать, а некоторые вещи - ещё и анимировать. Покадрово. Мы просто завалили человека работой, совершенно не заботясь о том, насколько это вообще выполнимо. Но Ева отлично со всем справилась и  даже успела за пять минут нарисовать туториал, чтобы не объяснять каждый раз правила игры. Я до сих пор не понимаю, как у неё хватило на всё это времени.

Если уложить весь процесс разработки в 140 секунд, получится вот такое видео, которое не поленился и сделал Илья, чувак слева на фото:

Так или иначе, в конце второго дня, когда пламя из горящих глаз перекинулось на пуканы, игра была более или менее готова. Во всяком случае, она не падала и в это можно было играть. В 18:00 началась ярмарка игр.


Любой желающий мог подойти и поиграть в наше творение, чтобы затем проголосовать за лучшую игру на Omsk Ludum Dare. Вокруг нашего стенда собралась небольшая толпа, люди запускали наш сетевой шутер снова и снова, что делает любого разработчика игры по-настоящему счастливым. Самый позитивный момент произошёл, когда к нам подошёл некий тип и, не особо разбираясь сказал: "Ребята, вам бы эту игру сделать сетевой, вот это было бы офигенно". О да, с каким удовольствием мы хором ответили типу, что наша игра итак сетевая и итак офигенная!

В общем, по итогам голосования, впервые (а это уже восьмой раз, когда мы принимаем участие в Omsk Ludum Dare), наша команда заняла первое место, и, как я считаю, вполне заслуженно. Конечно, всё это происходило на чистом энтузиазме, мы выиграли футболочки и пошли домой, ибо у нас оставалось ещё несколько часов, чтобы доделать эту игру, перевести на английский язык и выложить на мировой ludum dare.

Видео геймплея:

Подробные инструкции и ссылка на скачивание:
http://catinthedark.itch.io/wwfs

Наши предыдущие игры:

http://catinthedark.itch.io/


From Siberia with love, by CAT_IN_THE_DARK