Я хочу участвовать в джеме. С чего начать?
Делать первый шаг навстречу чему-то незнакомому всегда сложно и даже может быть страшно, особенно если за плечами нет многолетнего стажа в разработке игр. В этой статье я хочу рассказать, что такое гейм джемы, почему они могут быть отличным бустом для новичка, и самое главное — что на самом деле нужно для участия в джеме. 🙂
Термин «джем» берёт корни от музыкантов: они собираются вместе и начинают джемить, то есть импровизировать ради фана. Никто не потеет над нотами, не оттачивает сочинённые ранее фрагменты, речь в первую очередь о создании чего-то нового и получении от этого удовольствия. Гейм джемы практически то же самое, только про игры.
В большинстве своём гейм джем подразумевает соревнование по скоростной разработке игр. Обычно он длится 48-72 часа и проходит на выходных, но бывают более длинные или короткие джемы со своими особенностями и ограничениями. На джеме сотни, порой даже тысячи участников собираются вместе в онлайне или офлайне, чтобы за несколько дней сделать свой проект на заданную тему. По итогу у каждой команды есть готовый проект, который в дальнейшем при желании можно развивать и дорабатывать уже без жёстких временных рамок.
Наверняка, многие слышали про Loop Hero. Первоначальная версия этой игры создавалась на Ludum Dare. Конечно, уложившись в сроки джема, создать готовую для выпуска в магазины игру невозможно, но наметить вектор и основные фичи проекта вполне реально, а общая атмосфера джема и его тема, мозгоштурм с командой и продуктивные дни разработки очень в этом помогают.
Это один из главных страхов начинающих джемеров. Но где же ещё взять навыки, если не на практике? Джемы в этом плане очень хороши — там каждый участник обременён минимумом ответственности: только перед собой и командой. На плечах джемеров не лежит груз необходимости анализировать сторы, монетизировать игру, изучать рынок и потребителя. Надо просто сделать игру, причём, скорее всего, она будет очень короткая, примитивная и, возможно, неказистая. Это абсолютно нормально на джеме и никто никогда не будет тебя осуждать, ведь завершить проект и сделать его играбельным — уже победа!
Кроме того, для участия в гейм джемах не нужен какой-то серьёзный опыт в разработке. Можно участвовать даже если опыта нет совсем никакого, даже если ты не знаешь, с чего начинается создание игры. Попросись в команду ребят с опытом и тестируй их игру, рассказывай им, где можно что-то улучшить с точки зрения игрока. Можно искать готовые ассеты, переводить тексты, предлагать свои креативные идеи касательно сюжета или сделать презентацию игры по итогу, это, на самом деле, уже здорово поможет всей команде, а тебе позволит проследить весь пайплайн разработки.
А если ты начинающий художник/программист/звукарь/etc, то и вовсе можно смело проситься под крылышко более опытного коллеги. Даже если ты всего лишь прошёл короткие бесплатные курсы. Помощник никогда не будет лишним! А тебе это позволит лично прощупать почву и понять, какие скиллы приоритетны при создании игры.
Если рассматривать джемы в Индикаторе, то в нашем дискорде есть специальные каналы, куда выкладываются объявления о поиске команды на каждый из джемов. Можно либо попроситься в уже сформированную команду, либо собрать свою, даже если она будет полностью из новичков или ребят с минимальным опытом — вместе у вас значительно повысится шанс помочь друг другу и сделать проект. Все же помнят басню Толстого про прутики, которые легко разломать поодиночке, и веник? 🙂
Кроме того, формирование команды — это отличный способ завести приятные и полезные знакомства. Полно историй о том, как ребята объединялись для участия в джеме, срабатывались, начинали дружить и потом, уже вне рамок джема, создавали новые проекты, выпускали их в сторы и развивались в качестве инди-студий.
Так что всё, что от тебя стопроцентно требуется при участии в джеме — это немного смелости, если вдруг придётся писать кому-то первым. И два дня свободного времени. Ну и, конечно, интерес к созданию игр и желание развиваться в качестве разработчика, куда же без этого!
1) Решить участвовать в джеме.
2) Найти команду или собрать самому.
3) Поучаствовать в джеме и создать проект.
4) Готово, ты восхитителен! 🙂
На самом деле эти пункты не особо далеки от истины. В первую очередь надо ответить себе на вопрос «Зачем мне участвовать в джеме? Что я хочу получить от этого?» Возможно, ты хочешь получить себе в портфолио первый проект? Или приобрести/прокачать какие-то навыки? Может, ты хочешь просто «сходить на разведку», поглядеть на джем изнутри, понять, чем он может быть полезным? Или подружиться с единомышленниками? Верных ответов тут нет, каждый сам должен выбрать, какую пользу для него принесёт джем.
Далее речь, конечно, о подготовке. В рамках наших джемов мы не запрещаем использовать готовые ассеты или какие-то свои сделанные заранее наработки (но не забывай, что объявленная в момент начала ограничительная тема может немного порушить задумки). Также за несколько недель до старта мы стараемся делиться полезными туториалами, платформами и инструментами для участия в джеме. Многое уже собрано в нашей «Библиотеке-выручалочке», не забудь заглянуть туда 😉
Поиск команды! Определись, какую роль ты бы хотел выполнять в своей команде. Единственный художник или помощник художника? Правая рука программиста? Мастер по презентациям или ассетам? Тестер? Универсальный помощник всем и вся? От этого зависит, на что сделать упор при подготовке. В свободное время перед джемом постарайся осилить несколько коротеньких курсов, лекций или полезных статей, которые помогут усовершенствовать навыки. Можно посоветоваться с ребятами в наших чатах (Телеграм и Дискорд), они помогут и поделятся разными ресурсами.
Распределите задачи между членами команды и составьте пайплайн. Важно сделать это до джема, чтобы не тратить время на путаницу с зонами ответственности. Не забывай, что джем — это всегда про нехватку времени.
Очень даже возможно! Ян Шрайбер, знаменитый гейм-дизайнер, педагог, один из основателей Global Game Jam, рекомендует придерживаться следующего пайплайна при создании игры на стандартном 48-часовом джеме:
Продумывание идей и определение направления деятельности занимает 10-15% времени всего джема. Не спеши реализовывать первую пришедшую в голову идею, скорее всего, она окажется банальной. Устройте брейншторм. Записывайте. Приходите к компромиссу. Так вы с командой достигните лучшего результата.
При благоприятном раскладе, когда всё идёт по плану, к концу первого дня у вас должен быть рабочий билд, без фич, без наворотов, только с базовым геймплеем.
Когда у вас есть рабочий билд, можно приступать к добавлению контента и фич. Но не увлекайтесь слишком сильно, не забывайте, что у вас меньше суток до конца джема. Проанализируйте, какие фичи требуют слишком много времени, какие находятся в «зоне риска» (могут быть успешно реализованы, но это не точно), а какие получится быстро внедрить в игру. Тут важно тоже помнить про компромисс, потому что бывают ситуации, когда команда не может прийти к единому решению. Не тратьте драгоценное время на бесполезные споры.
Ещё один важный момент: всегда держите два доступных билда. Один — стабильный, который как минимум не поломается при запуске, и второй — самый новый, с добавленными фичами. Так у вас гарантировано будет хоть что-то рабочее по итогу джема.
В последние несколько часов джема не добавляй новых фич. Совсем. Готовь игру к загрузке, фикси последние баги, полируй, убедись, что понимаешь, как залить игру на сайт. Если у тебя возникают вопросы по джему или заливке игры — задай их админам джема, ведь решить возникшие сложности проще заранее.
На этом всё! Не бойся джемов, они не кусаются! Смело регистрируйся на наши джемы, а мы обязательно поможем и постараемся сделать весь процесс джема полезным, увлекательным и весёлым 🙂
Хочешь поучаствовать в мировом гейм джеме Ludum Dare 48 вместе с нами? Тогда регистрируйся и начинай общаться на нашем дискорд сервере 😉
Ludum Dare 48 пройдёт 24-26 апреля. Потом будут и другие джемы!
Геймджемы и с чем их едят
За последний год такое понятие, как геймджем стало очень популярным в России и в мире. Чуть ли не каждую неделю большое количество игровых разработчиков собирается, чтобы в сжатый срок сделать игру, на тему джема. Но есть люди, которым данное понятие все еще в новинку. Именно для них эта статья.
Что это такое
Начнем с самого понятия «геймджем». Формальным языком это соревнование по скоростной разработке игр (Game — игра, Jam — от музыкального понятия jam session, когда музыканты собираются и импровизируют без специальной предварительной подготовки). Очень похоже на специализированные хакатоны. Явление последние годы набирает все большую популярность в мире. На последнем геймджеме Ludum Dare, который проходит 3 раза в год, было собрано 2538 работ, а на globalgamejam.org — самом крупном геймджеме — 4289 работ в январе 2014 года.
Наиболее часто геймджемы длятся 48 часов, хотя в данном вопросе сроки зависят лишь от организаторов конкретного геймджема.
Инструменты
Инструменты по созданию цифрового контента упрощаются, становятся доступны для более широкого круга лиц. Появляются удобные редакторы игр: Unity, Game Maker, Construct 2, не забывая и про старый добрый Flash и т.п. Соответственно, все большее число людей начинает участвовать в джемах, и даже тех, кто напрямую не входит в игродельческое сообщество.
Участие
Чаще всего бесплатное, хотя иногда встречаются и варианты геймджемов, где надо заплатить определенную сумму (обычно символическую), чтобы принять участие в нем.
Участие в геймджемах профессионалам индустрии позволяет размять косточки и испытать себя в скоростной разработке игр, попробовать прототип, на который у них нет времени и мотивации вне геймджема. Но так же и новичкам геймджем дает возможность понять, что такое разработка игр в принципе, освоить инструменты и технологии, ну и, конечно, поймать радость творчества в чистом виде.
В целом, победа в геймджеме чем-то напоминает победу игры на рынке при попадании ее на первые места топов. У вас есть ограниченный ресурс — время и команда, есть идея (новая? оригинальная?) и есть ее реализация (хорошая / не очень). У вас есть аудитория, в которую надо попасть: другие участники или посетители сайта, где проходит геймджем. Все эти факторы, как и в случае коммерческого продукта, в конечном счете, и создают успех в геймджеме (как они создают его и на популярных платформах). Поэтому принимая участие в геймджемах, можно испытать, как вертится мир “настоящего” геймдева в миниатюре.
Самые известные
Англоязычные
Русскоязычные
Также в рунете часто проходят разовые геймджемы, посвященные тем или иным событиям. Вообще хорошим тоном для крупных IT-ивентов стало проведение совместно с ними хакатонов или геймджемов и награждение лучших участников призами. Assembly, московский DevGAMM, Старкон, Игромир и прямо сейчас фестиваль NextCastle Party проводит геймджем, приуроченный к фестивалю, на сайте Geek Party. Туда еще не поздно вписаться, до конца осталось почти 3 дня. Общий призовой фонд 4,5 тысячи долларов.
Взгляд в будущее
В будущем, в связи с еще большей популяризацией как видео-игр, так и средств разработки, движение геймджемов будет прирастать. Возможно, расширятся возрастные рамки целевой аудитории геймджемов, и те будут проходить на школьном уровне, наряду с олимпиадами по математике.
Ресурсы для ознакомления:
Заключение
Самое главное, принимая участие в подобном событии, не бояться раскрывать свои креативные способности, творить, дерзать и экспериментировать!
Спасибо, что дочитали до конца. Буду рад комментариям 🙂
Успеть за 48 часов: как я участвовал в GMTK Game Jam 2020
Создание игр с каждым годом становится все более комплексным и трудоемким делом — как ни крути, это одна из наиболее быстро развивающихся сфер развлечений, в которой постоянно необходимо искать новые способы привлечения игроков и создания уникального игрового опыта.
На фоне возрастающих бюджетов и сроков создания ААА-тайтлов кажется невероятным то, как многим инди-разработчикам удаётся сократить время создания прототипа для игры до пары суток во время участия в геймджемах.
Game Jam (геймджем) — сбор разработчиков игр с целью разработки одной или нескольких игр за ограниченный промежуток времени (как правило, от 24 до 72 часов). Участниками геймджемов обычно являются программисты, геймдизайнеры, художники и другие специалисты, работающие в области разработки игр // Википедия
Уже долгое время мне было интересно поучаствовать в одном из таких геймджемов. Почему? Во-первых, чтобы на короткое время побыть разработчиком игры и пройти весь этап разработки от идеи до релиза. Во-вторых, мне было интересно узнать, насколько моего игрового опыта будет достаточно для того, чтобы придумать и реализовать те игровые механики, которые бы смогли выделить мою игру среди других.
Недолго думая, для участия мною был выбран GMTK Game Jam 2020.
Youtube-канал Марка Брауна уже давно стал одним из моих любимых, а предыдущие джемы, проводимые под эгидой его канала, имели интересные темы и способствовали созданию многих необычных игр, о которых Марк в последствии рассказывал на своём канале.
Выбор инструментов
Начало джема было запланировано на 11 июня, а потому у меня было чуть меньше полутора недель для подготовки, когда я принял решение подать заявку на участие. Прежде всего мне стало необходимо определиться с тем, какими средствами я буду пользоваться при создании игры. Ситуация осложнялась тем, что я не умею кодить, рисовать и писать музыку — т.е. не владею самыми базовыми навыками, которые необходимы любому инди-разработчику. И тем не менее игру мне сделать удалось, и одной из самых главных причин успеха стал правильный выбор инструментов.
Как не трудно догадаться, самым первым и самым главным стал выбор игрового движка.
В 2020-м выбор игровых движков велик, хоть и далеко не все из них просты в освоении
Среди всех доступных для использования движков подходящих для меня вариантов было два: Unity и GameMaker Studio 2.
Unity очень универсален и с этим движком я даже был немного знаком, но всё-таки освоить C# за несколько дней, пускай и на самом базовом уровне для меня оказалось проблематично, поэтому выбор пал на GameMaker Studio 2.
Почему именно GMS2? Ответ довольно прост: наличие системы Drag’n’Drop. Это дополнительный способ написания кода, который позволяет не писать код «руками», а использовать заготовленные таблички с действиями, которые затем можно выстраивать в алгоритмическую цепочку. И хотя собственный код в GMS2 тоже есть и он намного проще того же C#, использование данного метода позволило мне приступить к работе практически сразу же после установки.
Ближайший аналог Drag’n’Drop — Blueprints из Unreal Engine, однако последний движок я не рассматривал вовсе, так как Unreal в большей степени направлен на создание трёхмерной красивой графики, в то время как для себя я решил установить ограничение в 2D.
За то время, что оставалось до оглашения темы джема, я успел пройти пару обучающих курсов по созданию игр в GMS2. За ≈15 часов работы с движком я разобрался в основных функциях, как работать с игровыми комнатами, объектами, событиями и т.д. Тем не менее, полученных знаний оказалось недостаточно, чтобы я мог сделать игру в любом жанре, однако данное ограничение в последствии мне преодолевать не пришлось.
Далее нужно было определиться, где работать с графикой и аудио, и здесь всё оказалось куда проще. Ни рисовать, ни работать в фотошопе я не умею, потому решил использовать стиль пиксель-арта. Рисовать пиксели можно было и во встроенном редакторе GMS2, что я и делал время от времени, однако помимо этого мною был использован сайт pixilart — этакий упрощённый «фотошоп» для пиксель-арта.

Для создания аудио были использованы сайты chiptone и beepbox.
Chiptone — редактор для создания звуковых эффектов специально для видеоигр. Так например, можно выбрать для чего нужно создать звуковой эффект: прыжок, атака или получение урона, а затем подкорректировать нужную продолжительность, тональность и т.д. Beepbox же представляет собой простенький музыкальный редактор.
Также я решил использовать во время джема сайт-доску Trello для отслеживания прогресса при работе.
Отсчёт пошёл!
Ещё до начала работы я установил для себя несколько ограничений. Во-первых, основным жанром должен был быть top-down-шутер или платформер, так как именно по играм этих жанров я прошел обучающие руководства. Второе — использование одного игрового уровня. Это ограничение также выходило из того, что я ещё не полностью разобрался с переходом между игровыми комнатами в GMS2, поэтому я планировал использовать только одну локацию, в которой, например, постоянно появлялись новые враги или же одна и та же комната использовалась в разных вариациях.
В общем, на данный момент работы принцип «чем проще — тем лучше» стал для меня основополагающим. Основные инструменты были под рукой, оставалось только дождаться оглашения темы.
Тема GMTK Game Jam 2020
К началу геймджема презентацию темы ожидало несколько тысяч человек, и вот, наконец, момент истины настал и на экране монитора появились заветные слова: «Out of Control».
Что же такого может быть «не под контролем»? Управление? Физика? Может быть, поведение врагов? Столько вариантов! Сразу же после оглашения темы я направился в… свою кровать. Так получилось, что начало джема вместе с презентацией темы проходило в 2 часа ночи по моему времени, поэтому я решил выспаться и уже с утра начать думать над дальнейшей тактикой, которой буду придерживаться оставшиеся двое суток.
На часах было около 9:00, когда я сел за компьютер, открыл блокнот и начал записывать идеи для игры. Спустя 15 минут список содержал в себе 8 позиций, среди которых:
Перечисленные выше варианты практически сразу же были отсеяны как наименее интересные, потому как шорт-лист из трёх наиболее привлекательных идей выглядел так:
Первый вариант показался мне очень интересным, но, как я уже указал выше, сделать tower defence сложнее и моих навыков в данный момент было недостаточно, поэтому эта идея была отмечена потенциально хорошей и оставлена дожидаться лучших времён.
Касательно платформера я сомневался, потому что даже если придумать разных персонажей и дать каждому особую способность, с помощью которой можно пройти дальше по уровню, то в таком случае придётся долго работать на дизайном уровней и игра должна быть похожей на метроидванию, в которой вместо новых способностей — случайно выбираемые герои. Побоявшись, что мне не хватит времени хорошо проработать эту идею, я обратился к последнему варианту.

Типичный scroll-шутер
Честно говоря, об этом варианте я ещё успел подумать перед сном, и к моменту, когда уже надо было окончательно выбрать над чем мне придётся работать последующие 40 часов, scroll-шутер смотрелся наиболее привлекательным. Во-первых, он близок по механике к top-down-шутеру (а если точнее, то он ещё проще), над которым я уже успел потренироваться, а во-вторых, идея того, что вместо управления героем нужно управлять его врагами, и при этом стараться сохранить игрока в живых, как минимум в теории казалась очень и очень интересной.
Спустя ещё несколько минут я окончательно сформировал концепт игры:
Основной «фишкой» игры должна была стать возможность сталкивать корабли друг с другом, так как это был дополнительный вариант для их уничтожения, которым мог бы воспользоваться игрок.

День первый, в котором автора ждёт успех в начинаниях и задел на нечто большее
Конечный концепт был принят и одобрен, а потому я запустил GMS2 и стал собирать первый рабочий прототип.
Со стрельбой решение оказалось менее изящным. Задачей было сделать так, чтобы количество выстрелов подряд варьировалось от одного до трёх, а пауза между залпами увеличилась в зависимости от того, сколько выстрелов было произведено. Для этого я создал отдельные события для каждого выстрела, которые запускались один за другим в зависимости от случайно выбранного числа. Для того, чтобы сделать такую систему мне по итогу пришлось сделать 5 отдельных событий, в то время как достаточно было бы и одного, но, как я уже говорил, кодить я не умею, а потому раз что-то смогло заработать, то больше я это не трогаю, чтобы лишний раз всё не поломать.
В общем, с поведением корабля игрока (которым игрок не управляет — такой вот парадокс) было покончено и настало время разобраться с управлением вражеской армией, ведь как вы помните, нужно было сделать так, чтобы можно было управлять всей армией сразу. Почему? Ну, если бы пришлось давать управление над каждым отдельным врагом по очереди, то тогда бы могла снизиться динамика игры, а идея управлять целым космическим флотом позволила значительно упростить работу. Также это решение было продиктовано сюжетом игры, о котором будет позже.
Работа над врагами заняла намного меньше времени, т.к. нужно было лишь задать постоянную скорость, с которой они бы двигались по направлению к кораблю игрока, а также позволить двигаться влево и вправо при нажатии на соответствующие клавиши.
Помимо этого нужно было сделать несколько типов врагов, а также сделать так, чтобы они уничтожались при попадании выстрела и при столкновении друг с другом. Что же, за дело!
К 18:00 прототип выглядел примерно так:

Вместо кораблей — треугольники и квадраты, но это только на первое время
А что, звучит хайпово выглядит неплохо! Признаюсь, когда спустя десятки отчётов об ошибках и кучи «костылей», которыми эти ошибки я пытался исправлять, всё заработало ровно так, как я себе представлял несколько часов назад, моему счастью не было предела. Пока что вместо спрайтов стоят на скорую руку нарисованные треугольники-заглушки, но они двигаются, а один из них даже стреляет! Класс!
Следующие несколько часов я работал над балансом. Как можно заметить, вражеских кораблей три типа: ромбы (средняя скорость), звёздчатые (более быстрые и манёвренные) и полукружнополуквадратные (большие, но медленные). Я сделал так, чтобы чаще всего появлялись ромбы, остальные — чуть реже, а также чтобы после появления звездчатого или большого корабля следующий появлялся чуть позже. Также большим кораблям установил 5 очков здоровья, чтобы игроку приходилось потратить больше времени на их уничтожение (либо выстрелами, либо несколько раз врезаться в него другим кораблём). Помимо этого была добавлена система отслеживания набранных очков и оставшихся у корабля жизней.

48 часов — это не так уж и много, однако сон и периодический отдых никто не отменял
Время подходило к 0:00, а потому было принято решение закончить с работой на сегодня и наконец-то пойти поспать, так как почти 14 часов работы подряд за компьютером изрядно меня помотали. И хоть я отвлекался на поесть и сходить в душ, голова под конец дня гудела, глаза стали сухими, а нос заложило. Я подумал, что это всё от перенапряжения, поэтому просто упал на диван и почти что сразу провалился в следующее утро.
День второй, в котором автор встречается с некоторыми трудностями и познаёт суть дедлайнов
В 10 часов утра я вновь оказался напротив монитора, и первым делом я решил наконец-то заменить геометрические фигуры чем-то более похожим на космические корабли, а также сделать более живым фон, добавив ему эффект параллакса.
Как было сказано ранее, рисовать я никогда не умел, а потому выстраивание пикселей в что-нибудь похожее на космический корабль давалось мне с трудом и заняло некоторое время.
Так как геометрические фигуры должны были уйти в прошлое, я придумал для кораблей новые названия. Так ромбик, звёздочка и полукружнополуквадрат (да, я продолжу так называть эту фигуру) стали Бойцом (Fighter), Перехватчиком (Interceptor) и Тараном (Ram) соответственно. Нужно было сделать их как можно более различными, ведь игроку нужно сразу понять, какой враг перед ним и принять решение, как действовать дальше, именно поэтому я сделал вражеские корабли трёх разных цветов.
После этого я решил добавить для всех кораблей белую обводку, чтобы сделать их более заметными на тёмном фоне. Из-за этого решения корабли стали выглядеть более «игрушечными», но я не посчитал это минусом, а даже наоборот — у игры появлялся свой стиль!
Следующим шагом стало создание анимации, так как статичные спрайты выглядели уныло во время игры. Для того, чтобы добавить эффект покачивания из стороны в сторону, я немного передвинул отдельные части спрайтов вверх и вниз, затем отзеркалил полученный результат и поставил между каждым наклоном в сторону кадр с изначальным положением. Итого: 4 кадра на анимацию для каждого из кораблей. Вот что по итогу вышло:
Для фона я нашёл картинку с фиолетовым градиентом — каюсь, единственный ассет, который был сделан не моими руками. Для того, чтобы получить эффект параллакса я нарисовал несколько вариантов текстур со звёздами, которые представляют собой единичные белые пиксели, а затем задал им разные скорости, чтобы возникало ощущение движения в звёздном пространстве. Для градиента тоже была задана минимальная скорость, при этом его тоже пришлось отзеркалить, чтобы не получилось рваного перехода текстуры.
С интерфейсом получилось разобраться практически сразу. Всё, что пришлось сделать, это нарисовать небольшую подложку под счёт очков и количество жизней, а также было решено использовать вместо «сердечек» мини-ракеты.
Помимо этого я решил переместить корабль игрока наверх экрана, чтобы игроку было удобнее управлять врагами, появляющимися в нижней части экрана.
Ну и самое последнее, что необходимо было добавить — это эффект взрыва для уничтоженного корабля. Недолго думая, я просто нарисовал три квадрата разного цвета для каждого из врагов, чтобы при уничтожении они разлетались вокруг в разные стороны и исчезали со временем.
Итого, после нескольких часов сражения с пикселями игра стала выглядеть вот так:
На часах было уже около 18:00, когда я закончил работу над спрайтами для выстрелов и поправил анимации таким образом, чтобы при движении влево и вправо корабли соответственно наклонялись в одну сторону. Для этого пришлось несколько изменить управление, и теперь при нажатии весь флот продолжит двигаться в одну сторону, пока не сменит направление или не нажать стрелку «вверх».
Крайний срок для загрузки игры заканчивался 13 июля в 2:00, т.е. ровно через 48 часов после начала джема. Изначально я планировал успеть сделать всё до полуночи, так как нужно было ещё оформить страницу с игрой, добавить описание, да и в последний момент наверняка начнут загружать свои прототипы большая часть претендентов, а потому itch.io мог запросто «упасть». За оставшиеся 6 часов нужно было сделать ещё многое: сделать главное меню и меню паузы и переходы между ними, добавить звуковые эффекты и босса.
Первым делом я решил разобраться со всеми меню, однако практически сразу обнаружилось несколько проблем. Во-первых, при переходе с одного игрового экрана на другой объект, который отвечал за появление врагов, начинал срабатывать дважды. Во-вторых, после добавления стартового экрана осуществлялся сразу переход либо на экран победы, либо поражения. Прежде чем мне удалось с помощью ещё нескольких «костылей» наладить переходы, прошло ещё около трёх часов. Что самое смешное, так это то, что кроме этих самых переходов сами меню доделаны не были, поэтому я сразу же приступил к работе над ними.
С экранами победы и поражения всё получилось сделать быстро: вывести надпись «YOU WON!» или «GAME OVER!» не так уж и сложно. Затем было сделано два экрана с обучением, где описывались вражеские корабли и их особенности, а также схема управления. На стартовом экране же я решил поместить корабль «игрока» и выноску с названием игры — к стати о названии.
Мне захотелось как-нибудь обыграть название темы «Out of Control». Если не стараться уничтожать корабли пришельцев, то вскоре они начнут заполнять собой весь игровой экран и будет крайне трудно в таких условиях сохранить игрока в живых, а потому название «Out of Space» обозначало бы одновременно и то, что действие происходит в космосе, и то, что места для манёвра постоянно становится всё меньше и меньше.
Потратив несколько минут на оформление, стартовый экран стал выглядеть очень даже привлекательно:
Тем не менее, отдыхать ещё рано — нужно сделать меню паузы. В обучающих курсах по GMS2, которые я успел пройти, не было советов о том, как эту самую паузу сделать, поэтому я яростно начал гуглить. Прежде всего нужно было ничего не поломать (а сделать это было очень просто), но каким-то чудом мне удалось найти нужное руководство и абы как добавить паузу в игру.
Когда я посмотрел на время и увидел 23:30, то понял, что до полуночи игру я точно не загружу, а значит придётся использовать дополнительные два часа. Хоть мне и хотелось оставить это время про запас, деваться было некуда.
С помощью chiptone я быстро наклепал звуки выстрелов, взрывов и т.д., а в beepbox’е накидал простенькую мелодию.
На часах 0:30, и я решаю начать работу над боссом для игры. Идея эта, мягко говоря, сомнительная, ведь босса нужно нарисовать и анимировать, а по размерам он должен быть больше Тарана примерно в два раза. Однако же мне показалось, что в игре маловато контента и босс обязательно должен быть, поэтому я приступил к работе над ним.

Примерно так я ощущал себя в последние пару часов до закрытия подачи заявок
Что ни говори, а своей скоростью рисования в тот момент я бы был удивлён, если бы у меня на это было время. Единственной проблемой стало то, что органично добавить его в игру никак не получалось, поэтому я сделал для босса целый отдельный уровень (но вам я его не покажу).
В 1:30 я запустил финальный билд игры и проверил, что босс действительно появляется после набора игроком 1000 очков, после чего выдохнул и открыл страницу джема на itch.io.
Оставшиеся 20 минут я занимался оформлением страницы, добавил описание игры и пару скриншотов. В 2:03 доступ к загрузке файлов был закрыт.
Следующий час я проверял, всё ли работает и действительно ли мою игру можно сказать и запустить. Посмотрел пару игр других участников, но вскоре силы мои совсем закончились и я отправился спать.
Подведение итогов
Утром я ещё немного поработал над оформлением страницы. Для оценки проектов участникам джема была отведена неделя. Прежде чем перейти к этой части моего участия в GMTK Game Jam 2020, я выделил несколько недочётов в планировании своей работы, из-за которых не все задачи были выполнены:

Не всё из списка удалось реализовать, но определённый успех достигнут!
И тем не менее собой я очень и очень доволен. Для меня это был первый опыт участия в такого рода мероприятии, а также первая сделанная игра! Не настолько отполированная и доработанная, как хотелось бы, но основную идею, которая появилась в голове пару суток назад, реализовать получилось. Уверен, что в следующий раз всё будет ещё лучше!
Всего на GMTK Game Jam 2020 было сделано почти 5,5 тысяч игр, с которыми можно ознакомиться здесь. Если же вы хотите можете попробовать набрать 1000 очков и увидеть того-самого босса, то можете перейти по ссылке. Только учтите, что это версия с багами, и при битве с боссом музыка почему-то начинает двоиться. В скором времени я планирую их исправить и доделать оставшиеся штуки вроде улучшений, так что stay tuned!
Надеюсь, Вам было интересно читать данный текст, несмотря на то, что в большей степени я старался осветить как и какие решения были приняты по ходу разработки, нежели технические детали. Если появились какие-либо вопросы, то постараюсь на них ответить в комментариях.
До новых встреч!
Секретный ход системы «Save & Load»: что такое save scumming и почему его стоит избегать
Наперегонки со временем. Обзор Stories: The Path of Destinies и Omensight
Видеоигровой «День сурка»: как (не)потеряться в петле времени
«Новая игра+» как средство реиграбельности с примерами хорошими и не очень
[На конкурс] «Путь искупления»
Обзор Crashday: Redline Edition. Тачки, пушки, рок-н-ролл! 
Просто одна из игр, сделанных для джема. Ссылка для ваших друзей, если вдруг заинтересуются
( ͡











