Я порвал себе жопу, чтобы вам не пришлось

Я порвал себе жопу, чтобы вам не пришлось

Я отправляюсь в битву, и мне потребуются твои сильнейшие зелья! © Рыцарь

Я уже публиковался на этом сайте как разработчик великолепнейшей и невероятно оригинальной игры, но сегодня я публикуюсь как разработчик кала на коленке, сделанного в рамках геймджема GMTK Game Jam 2023 за 48 часов. На эту тему уже выходили блоги на dtf, но они получились слишком... Обыденными, простыми, скучными, то есть, без моего уникального коричневого авторского стиля. И я, как туалетный царь Мидас, считаю своим долгом прикоснуться к этому вопросу, выпустив блог в разделе геймдева.

Я порвал себе жопу, чтобы вам не пришлось

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

Я порвал себе жопу, чтобы вам не пришлось

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

Окей, окей, больше никаких шуток про говно! Ближе к делу. Зачем-то я попёрся на сайт itch.io и обнаружил там раздел с геймджемами, а вместе с ним и то, что чуть больше, чем через неделю, начинается ежегодное соревнование на десятки тысяч участников! Спойлер: я оказался круче этих нескольких десятков тысяч.

Мало кто знает, но Гигачад не существует на самом деле. Впрочем, его образ создавался на основе реального человека: его зовут Михаил Брюхин.

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

И я решил, заранее, до объявления темы, что буду делать игру про варку зелий. Нет, я не чмо, и не писал код до начала соревнования, но решил подготовить визуальные ассеты, благо, те были разрешены в любом количестве. Поскольку я не собирался искать себе команду, что, опять же, было разрешено, я посчитал это честным. На случай же, если выданная тема ну НАСТОЛЬКО не будет совпадать с заранее заготовленными ассетами, я бы просто сделал другие, просто во время непосредственно геймджема и гораздо более плохого качества.

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

Я порвал себе жопу, чтобы вам не пришлось

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

Я порвал себе жопу, чтобы вам не пришлось

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

Я порвал себе жопу, чтобы вам не пришлось

Всё, что потребовалось — найти нужный ролик с туториалами, посмотреть их на 1.5 скорости и попробовать воспользоваться советами. И это действительно выглядит не так уж дурно! Тем более, что чем больше я рисовал, тем лучше у меня выходило. Я штудировал туторы один за другим и пытался повторять.

Анимация бездействия в бою
Атака слайма
Анимация атаки
Применение зелья

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

Ходьба "до"
Ходьба "после". Забыл добавить контур.

И в игре всё это выглядело примерно так:

Да, если вы посмотрели ролик, то, думаю, вы поняли, что за девушку вы не играете. На самом деле, вы просто варите для неё зелья, которые помогут ей пройти данж. В итоге получается некоторая головоломка: нужно сначала определиться, какие зелья варить, и ещё суметь их сварить.

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

В итоге к началу геймджема у меня имелось три противника, два из которых имели анимации, интерфейс, 11 ингредиентов, логотип, одна скудная локация, ГГ с кучей анимаций, кроме одной, и примерно 80% от "катсцен" для игры. В общем, я не успел, но так или иначе у меня оставалось 48 часов.

Затаив дыхание, я ждал объявление темы. И мне повезло! Она оказалась...

Я порвал себе жопу, чтобы вам не пришлось

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

В общем, в моей команде было 2 человека.

Я порвал себе жопу, чтобы вам не пришлось

То есть, я и моя шизофрения. Поэтому мне следовало начинать работу в самом быстром темпе из возможных. Я принял решение начать делать мини-игру с варкой зелий. Механика была такова: у вас есть три параметра, токсичность, концентрация, вязкость. У разных ингредиентов есть разные параметры. И если итоговая смесь соответствует параметрам какого-то зелья, то вы получите именно его. Примеры: 0-20% токсичности, 40-50% концентрации и 20-40% вязкости - и у вас будет зелье лечения. 100% токсичности и 0% всего остального - получите ранкед матч в Dota 2.

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

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

Ещё был магазин.

Возможность ставить рецепт на полку, где рецепт открывался и описывал, как приготовить какое-то зелье.

И, самое главное — зелье в котле и банке реально меняло цвет в зависимости от своих параметров. Я использовал достаточно несложную формулу изменения отдельных цветов по RGB, где красным цветом была концентрация, зелёным токсичность, и синим — вязкость.

В общем, выглядело оно как-то так.
В общем, выглядело оно как-то так.

Да, там даже пузырьки шли из котла если вода кипела, с соответствующими звуками. И пузырьки тоже меняли цвет. Или можно было ещё кликать на котёл и тоже пускать пузыри по нёму. Котёл, кстати, был анимированный.

Практически всю графику для экрана варки зелий мне пришлось делать уже во время геймджема. Я старался чередовать, сначала программируя, потом рисуя, потом записывая диалоги, или по очереди делал экран варки зелий, а потом главное меню со вступительным роликом. В качестве саундтрека я выбрал бесплатную пиксельную музыку, а моя девушка создала в генераторе 8Бит звуки для разных действий - ударов, наливания зелья, бульканья, и т.д. В итоге, спустя первые часов, пожалуй, 30 из 48 мини-игра и заставка были готовы, и я лёг спать второй раз.

За всё время геймджема я спал в сумме, пожалуй, часов 8, и отдыхал, наверное, ещё 6 - включая время на то, чтобы банально поесть. В результате я работал около 34 часов на пределе своих возможностей, пытаясь запихнуть две игры в одну. Потому что мало было просто варить зелья, нужно было ещё сделать и ту часть, где персонаж их использует.

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

Всё это достигло апогея, когда за 10 минут до конца сдачи работ у меня обнаружился мощный баг, не дававший игроку банально сварить зелья. Моя голова уже максимально не работала, и я опустил руки, потому что даже за минуту до конца не успел починить эту хрень. Однако случилось чудо: время сдачи продлили на целый час! Это настолько меня обрадовало, что неизвестно откуда нашлись новые силы, тот печальный баг починился за 5 минут, и всё оставшееся время я чинил игру, пытаясь сделать её проходимой. Так или иначе, за 15 секунд до дедлайна я загрузил игру, и... Да, всё засчиталось!

Уже на этом этапе я обогнал 20 тысяч участников из 26, потому что они не справились даже с этим.

Разве это не доказательство того, что я нахожусь в золотом миллиарде?

Однако дальше последовали максимально неприятные новости. Моя игра... Не запускалась. Несмотря на то, что я уже грузил старые билды на сайт и всё было нормально. Сначала я просто свалил всё на то, что сайт обвалился, что было правдой — он реально обвалился, но даже спустя сутки в мою игру нельзя было поиграть. Люди в комментах говорили то же самое. А потом мою игру дисквалифицировали.

Это не столько расстроило меня, сколько заставило испытывать всепоглощающую ярость.

Я скачал буквально загруженный мной на конкурс билд и создал новый проект, и ТЕ ЖЕ ФАЙЛЫ прекрасно запускались! Поэтому в тот же момент я пошёл в дискорд и начал БЛЕВАТЬ ВО ВСЕ СТОРОНЫ МАТЕРЯ РАЗРАБОТЧИКОВ САЙТА пока не пришёл один из админов и не заметил, что моя игра, вообще-то, запускается через приложение itch.io. Он объяснил это тем, что такое бывает, если загружать в последние секунды до дедлайна, и предложил обратиться к организатору конкурса. Тот выслушал меня и восстановил мою игру в качестве участника.

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

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

Людям нравилась игра! Она получилась забагованная просто нахуй, с софтлоком на 2 уровне и хардлоком на последнем, но разработчиков это нисколько не удивляло, благо, на конкурсе каждая вторая игра была такой же. Они оценивали идею, концепт, милую историю и то, что варить зелья было достаточно прикольно, даже если этот элемент тоже был забагован вусмерть.

В общем, я пошёл оценивать чужие работы, потому что это повышало твою "карму", а вместе с ней и шанс того, что твою работу покажут другим разработчикам. В итоге я оценил 25 игр, рассчитывая на 25 оценок себе же, но в итоге остался только с 17. Было важно набрать как можно больше оценок, потому что те игры, что получали меньше медианного количества оценок, огребали гигантский штраф по итоговому рейтингу. Я, вроде бы, преодолел этот порог.

Оценивая игры, я определённо понял, что перестарался. Мне стоило остановиться на мини-игре с зельями и отполировать её, и уже на этом этапе моя работа казалось бы шедевром в сравнении с 95% всего остального. У одной игры заставка вообще была нарисована вот так:

Я порвал себе жопу, чтобы вам не пришлось

И была хуевым раннером с хуевым 3D и невыносимым управлением. Где-то вы буквально управляли кубом, сделанным через заливку в пеинте, но попались мне и действительно интересные, милые, и, что самое главное, отполированные работы. В целом, я бы мог с ними конкурировать, если бы моя игра была ДОДЕЛАННОЙ. Но мне не хватило опыта/ума/времени, чтобы совладать со своими амбициями. Так или иначе, вчера появились оценки, и я оказался на 3082 месте из 6837 (если вычесть 20к человек, которые не загрузили свои игры в принципе). Причем, по параметру креативности я был на 2351 месте, презентации — 3068, и "наслаждении" — 3637. Короче, средней моей оценкой была тройка. Я считаю, что это заслуженные цифры для перспективного, но ультимативно недоделанного проекта. Хотя, полагаю, сильно сказалось то, что первые 5 рейтингов из 17 явно были единицами по всем параметрам, да и при такой небольшой выборке рецензентов объективную оценку получить не просто. Потому что та самая игра про пиратов по презентации обогнала меня на 800 мест.

Я порвал себе жопу, чтобы вам не пришлось

А вот эта на 23:

Я порвал себе жопу, чтобы вам не пришлось

Тут я действительно не расстроен, скорее, смеюсь. В конце концов, я получил, чего хотел — проверку своих способностей. Их не хватило, но не слишком сильно, и в следующие разы я буду уже умнее, лучше смогу распределять своё время и внимание. Что же, вот вам итоговые ссылки:
Моя игра на геймджем, зацените заставку, она довольно милая:

Ну и мою основную игру (добавьте в список желаемого), которую мне, пожалуй, всё-таки стоит закончить.

Спасибо за внимание. Пост публикуется в инди, потому что из геймдева меня выгнали без объяснения причин, а правил я не нарушал.

Я порвал себе жопу, чтобы вам не пришлось
1919
10 комментариев

всё прочел! красавец! Поздравляю с молочным выгоранием!

3
Ответить

Заебись чтиво.
А на кой ляд ты вообще влез то в этот джем? Зачем тебе он был принципиально нужен?

2
Ответить

Мне действительно было интересно, на что я способен. Узнать, как мои навыки разработчика котируется в сравнении с комьюнити разработчиков-любителей, ну и узнать, полная ли хуйня мои идеи или всё же нет.

Спасибо!

2
Ответить

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

2
Ответить

А если всё же хочется порвать?

Ответить

Тогда иди сюда, сладкий

4
Ответить

Комментарий недоступен

1
Ответить