Д. Донской — Как готовиться к джемам и хакатонам

Дмитрий Донской во время выступления.

Джемы, хакатоны, конкурсы разработчиков

Стоит знать разницу для того, чтобы выстраивать стратегию:

Джем — может зайти оригинальная механика.

Хакатон — организаторы заинтересованы в коммерческой идее проекта.

Конкурсы разработчиков — никто особо ни в чём не разбирается. Заходит патриотическая и сказочная тематика.

Почему стоит участвовать?

  • Опыт командной работы
  • Понимание простых пайплайнов работы в команде
  • Получение новых навыков
  • Проверка себя в стрессовых условиях
  • Работа без обязательств
  • Портфолио
  • Новые знакомства
  • Кэш

Подбор участников

  • Искать заряженных энтузиастов в чатах джемов
  • Обращать внимание на схожесть вкусов
  • Узнавать навыки участников
  • Избегать работы в одном составе

№ 1 Формирование команды

  • Критерии отбора
  • Комфортное общение
  • Схожие взгляды на разработку
  • Отсутствие существенной разницы в возрасте
  • Общие интересы в геймдеве

Маленький состав работает эффективней. В идеале не более 5-6 человек.

Кого брать в команду?

2 программиста

  • 1 основной — ядро игры, кор механики
  • 1 программист поддержки — для грязной работы

Стоит использовать стандартные движки (Unity/Unreal):

  • Проще найти замену
  • Все базовые механики уже реализованы
  • Не придётся тратить много времени на поиск туториалов

Ошибка брать 2 крутых программистов. Вероятнее всего они поссорятся.

1-2 художника (2D/3D)

Конвейерный подход на 2 задачи (у каждой задачи один исполнитель):

  1. Придумывает концепты, рисует лайн (делает модели)
  2. Раскрашивает (развёртка, текстуры)

В противном случае они будут рисовать каждый в своём стиле и гораздо дольше. Игра не получится цельной.

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

Саунд-дизайнер

Желательно с навыками (FMod/Wwise) — чтобы самому имплементировать музыку в игру

Если джем короткий, то их работа может вообще не войти в финальный билд. На коротких джемах можно взять музыку из сети.

ГД (чернорабочий)

Важная роль, которую недооценивают на джемах. Сами гд не понимают, что от них требуется на джеме.

  • Придумать игру
  • Составление документации (нет)
  • Объяснять каждому по 10 раз, в чём заключается идея
  • Контроль за ходом выполнения работ, оценка времени и своевременный фичекат
  • Облегчение работы другим членам команды: поиск рефов, нейминг файлов, лвл-дизайн, тестирование и т.д.
  • Подсчёт баланса
  • Нарратив в игре
  • Поднятие боевого духа и решение конфликтных ситуаций
  • Менеджерская работа — передавать информацию между художниками и программистами, составление странички, ведение дневника и создание презентаций

Подготовка

П — 10% успеха

  • Обсудить желаемые жанр и стиль
  • Составить список пожеланий
  • Найти референсы понравившихся игр
  • Установить и настроить необходимый софт
  • Настроить общие папки для работы
  • Протестировать экспорт из софта, с которым планируете работать

Под — 20% успеха

  • Провести брейншторм механик
  • Определить стилизацию и собрать референсы
  • Согласовать жанр и сеттинг
  • Сделать заготовки
  • Притереться, для избежания стеснения во время джема
  • Заменить токсиков в команде

Подготов — 50% успеха

  • Взять отгулы перед джемом
  • Выспаться
  • Не садиться за компьютер сутки до джема
  • Убраться, помыться, сделать все дела по дому
  • Заготовить еду на весь период джема, запастись сладким
  • Нагуляться
  • Подготовить рабочее место
  • НЕ ИГРАТЬ В ДОТУ!

Джем

1 день джема — самый важный день

  • Не спешить с идеей. Найти механику…
  • Не спешить с артом, первый день всё делается на кубах
  • Создание чек-листа (сколько и чего будет в игре для 10 минут геймплея)
  • Максимально продуктивный период
  • Фокусировка на ключевых элементах (Делать то, что нужно в первую очередь, а не свои хотелки)
  • Избегание прокрастинации (не делать то, что сделать проще, чем делать работу)
  • Реализация основной механики
  • Базовые элементы интерфейса

Темп работы значительно снижается во второй день. Максимально использовать первый день.

Рекомендация: не делать стартовое меню.

Организация работы команды

  • Коммуникация
  • Единое понимание концепции
  • Регулярные уточнения задач
  • Доверие между участниками
  • Отсутствие критики чужой работы
  • Демонстрация экранов команды дискорде (!)
  • Немедленно обсуждать недопонимания (!)
  • Никакого флуда в чате, только по делу (если нечего сказать по делу — замьються и работай)

Советы во время разработки

  • Не использовать терминологию и названия игр без пояснений (!)
  • Фокусироваться на базовой механике и отрезать всё лишнее
  • Быть готовым к изменениям планов и потере участников
  • Не тратить время на сложные задачи, искать альтернативные решения и упрощать их до предела
  • Демонстрировать свои экраны в дискорде (!)
  • В 2Д сразу использовать Full HD разрешение 1к1, чтоб не возникало проблем при экспорте
  • У художников только 2/3 времени джема на создание контента, в противном случае его не успеют добавить
  • Каждый должен вести блокнот со своими задачами, нельзя полагаться на память

Организация времени команды

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

Гибкость в выполнении задач проявляется проявляется в возможности перераспределения определённых видов работ между специалистами разных профилей. Например:

  • Создание простых анимаций и эффектов может выполняться как художником, так и программистом
  • Разработка названий (нейминг) может осуществляться представителями разных направлений
  • Lvl-дизайн, после 10 минутного обучения может делать любой член команды

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

Организация своего времени

  • Избегать отвлекающих факторов (сериалов и аудиокниг на фоне). Даже если это не влияет на скорость работы, мозг будет уставать.
  • Только лёгкая музыка на фоне
  • Частые небольшие приёмы пищи (избавит от голода и жора)
  • Работа в комфортном темпе без спешки и длинных перерывов
  • Регулярные демонстрации прогресса, для мотивации команды
  • Сон по 4-5 часов в день достаточно для перезагрузки

Уступки

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

При прочих равных всегда отдавать предпочтение идеям команды.

В противном случае мотивация команды быстро упадёт.

После джема

Анализ результатов:

  • Взаимная критика
  • Поиск ошибок
  • Получение обратной связи
  • Анализ успешных решений

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