Мой первый опыт участия в Global Game Jam.

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

Global Game Jam 2017 в Тихоокеанском научном центре Сиэтла. Я прибываю примерно за полчаса до геймджема, который вот-вот раскроет тему этой части Соединенных Штатов. Я понятия не имею, что делать, черт возьми, я даже почти не подготовился к этому во время зимних каникул. Мне нужно с чего-то начинать, поэтому я начинаю с малого и нахожу относительно пустой столик, чтобы сесть. Я нахожу одну и жду, когда начнется джем рядом с кем-то, кто был крайне антисоциальным, но был новичком вроде меня, так что это было лишь немного неудобно. После долгой настройки и устранения неполадок организаторы запускают видео геймджема, в котором рассказывается тема. Я говорю своему другу за столом, что нам нужно привлечь еще двух человек, чтобы завершить игру. В середине взаимодействия с толпой бродяг я узнаю, что мой единственный тиммейт ушел и в этой толпе остались одни программисты. Казалось маловероятным, что я найду команду, которая помогла бы мне с созданием игры, и я мог бы пойти домой, если бы был один. По счастливой случайности из последних бездомных, включая меня, была сформирована команда во главе с художником, который собрал нас всех вместе.

Первый день состоял из того, что я наткнулся на Unity, так как мой единственный опыт был связан с учебными пособиями. Я боялся этого игрового джема и просто хотел пойти домой и поспать. Мы также придумали несколько чрезвычайно амбициозных идей, на реализацию которых, как мне казалось, у нас не будет времени. Что ж, спойлер, мы не закончили большинство из них, но это тоже часть опыта. Я продолжал изо всех сил пытаться заставить вражеский ИИ работать, но я понятия не имел, что происходит с моим кодом, поскольку он был объединен в несколько руководств, которые я смотрел в последнюю минуту. Затем было 22:00, и все тестировали свои реализации, многие из них работали, а мой код вообще не работал. Мне было очень плохо, но в этот момент я чувствовал, что больше не могу из-за усталости, и все хотели домой. Так все и сделали.

День 2 6:30 утра, я просыпаюсь со страхом, что мне придется вернуться на джем. Я двигался очень медленно, думая: «Может быть, я просто не появлюсь, и они продолжат без меня». Я думал, что был бесполезен для группы, так как не мог даже сделать что-то такое простое, как перемещение объекта к некоторым целям. Каким-то образом мне удалось добраться до автобуса и добраться до научного центра. Удивительно, но я был одним из первых в команде, кто это сделал. Я решил, что сегодня будет день, когда я заставлю код работать. Я работаю над этим несколько часов и не успеваю. Затем я делаю то, что почти всегда ненавижу делать, — прошу помощи. Это простая вещь, но она действительно изменила жизнь. Я узнаю, что мой код был очень близким и что мне не хватало только нескольких вещей. После этого я, наконец, начал двигаться, я получил объект для перемещения в несколько точек. Я дал всем код движения, и он хорошо работал со всеми остальными объектами. Затем я начал тестировать его, используя порядка 100 красных сфер, отрендеренных в Unity. Они вели себя немного странно, но работали, и я наконец понял, почему людям нравится быть разработчиками игр. Заставлять что-то такое простое, как движение мячей, было немедленным удовлетворением, которое вы могли видеть. На самом деле очень мало вещей, которые я испытал.

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

Я даже не помню, чтобы я слышал будильник перед тем, как проснуться, я просто встал в тот момент, когда почувствовал, что выхожу из сна. Должно быть, мне потребовалось около 10 минут, чтобы встать и выйти за дверь, потому что это был третий день, последний день. Я приехал так быстро, как только мог, чтобы выпить кофе и быть готовым внести последние штрихи в игру перед презентацией. Я отвечал за создание эффектов разрушения. У художника из команды все было готово, и теперь была моя очередь разгадывать тайминги. Весь день я не ел ничего, кроме хлопьев, которые съел утром, и батончиков с инжиром. Я не помню всего, что я делал, но вся команда усердно работала, чтобы убедиться, что мы успеем все успеть до 16:00. Когда дело дошло до последнего часа, мы продолжали добавлять, пока не смогли больше. Это была спешка, как ничто другое, но мы все получали массу удовольствия, делая это. Нам не удалось воплотить в игре все, что мы хотели, но мы гордились всем, чего достигли. В конце концов, мы выложились на полную и остались очень довольны тем, как сложилась игра.

Пришло время представить. Мы пошли в кинотеатр IMAX научного центра, чтобы представить. Было несколько замечательных игр, сделанных замечательными командами. Когда мы представляли, мы сделали это как бы стандартно, но добавили небольшие шутки тут и там. Толпа была очень благосклонна, и презентация прошла намного лучше, чем я ожидал. Когда геймджем закончился, было 19:30, и я даже не заметил, как устал и проголодался, пока не попрощался со всеми товарищами по команде. Мы все были готовы вернуться в следующем году с новыми наборами навыков, чтобы мы могли сделать еще более эпическую игру, но мы также все согласились полировать эту игру, насколько это возможно.

Для создания игры нужна команда, и никто не будет толкать вас дальше, чем ваши товарищи по команде. Я не думаю, что когда-либо узнавал о создании игр так много, как во время геймджема. Они не просто учат вас. В течение этих трех дней эта группа незнакомцев была моими лучшими друзьями во всем мире. Мы говорили обо всем, от игры до того, как невозможно было выпить кофе через протестующую толпу (это было во время инаугурации Трампа). В те дни нужно было приложить больше усилий, чтобы игра стала лучше. Каждый член команды работает над тем, чтобы сделать все возможное, чтобы все остальные выглядели хорошо, включая помощь застрявшим товарищам по команде. Создание игры редко когда-либо является индивидуальным усилием, герои — это группа людей, которые должны помогать друг другу, а не думать о личной славе. Сначала я действительно хотел сдаться и думал, что это невозможно для меня. Мы тоже не вложили все, что хотели. Если вы преодолеете это сомнение, сделаете шаг за шагом и, самое главное, доверитесь своим товарищам по команде, вы получите то, чем гордитесь, независимо от уровня завершенности. Создание игр для меня — это просто команда, подталкивающая друг друга настолько, насколько они могут, и так долго, как они могут.

Вот ссылка на игру, которую мы сделали:

http://globalgamejam.org/2017/games/photon-fighter