Показаны сообщения с ярлыком gamedev. Показать все сообщения
Показаны сообщения с ярлыком gamedev. Показать все сообщения

воскресенье, 4 мая 2014 г.

Вспомнить все

Существует теория или мне кажется, что она существует, но ее нет, что в детстве мы потенциально умеем и знаем многое (петь, танцевать, рисовать и т.д.). Но с возрастом все эти знания забиваются в глубине нашего мозга другими, более важными в текущий момент.

Со временем мы концентрируемся лишь на том, что нам необходимо в работе. Да, кто-то пытается учиться, заглядывать в смежные области, но черпает оттуда лишь то, что нужно в сейчас для основной занятости.

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

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

Так, к примеру, много лет назад я зарекся, что буду скриптовать, так как мне это банально надоело. И я действительно не скриптовал до начала этого года, когда мы начали в свободное от основной работы время делать проект - мне пришлось лезть и разбираться в юнити, найти удобный для себя формат и работать в нем (с playmaker мне стало куда проще работать с Unity). Но это "разобраться" пошло дальше, и я сейчас с удовольствием берусь поскриптовать в своем основном проекте, хотя это и не входит в мои обязаности, а мне, как оказалось на самом деле, нравится скриптовать.

В один период я учился рисовать, так как у меня не было возможности найти в проект художника, и со временем начало получаться. Да, было очень далеко до гуру, да и до джуниор артистов, но для своих потребностей было достаточно. Главное, что я понял - туториалы реально могут помогать, и они вытягивают из головы знания, которые где-то там уже есть (в школьные годы я хорошо рисовал, особенно любил натюрморты и цветовую абстракцию).

На днях мне пришлось разбираться с google analytics, который я видел впервые, так как мы запускали блог для Isles Of Umbra и нуждались в статистике, которую в tumblr посмотреть нельзя. Теперь полученные знания и понимание работы google analytics мне пригодятся и в основной работе, так как я никогда с ним не сталкивался (в основном работал с самописными тулзами для статистики, которые более выгодны для игровых проектов, чем сторонние).

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

Да, можно сказать, что так мы никогда не будем профессионалами в одном направлении, но будучи indie необходимо быть человеком-оркестром, и уметь все на удовлетворительном уровне (критерии умений и знаний ставим себе сами) лучше, чем уметь что-то одно, но при этом утонуть в попытках найти людей, которые будут уметь другое и готовы войти в вашу команду

воскресенье, 26 января 2014 г.

Indie way #2 - Ограничения

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

Я уже не первый раз говорю об ограничениях, и в этом блоге тоже было несколько постов. Но я не устану это повторять, так как игровой дизайн - это problem solving, а при ограничениях чем, как не problem solving заниматься.

Но прежде чем мы начнем, посмотрите выступление Petri Purho, который рассказывает хорошо об ограничениях через призму отсутствия бюджета для игры, и почему это хорошо для разработки.

А теперь давайте поговорим про ограничения, которые разделим на три категории:
  • Технология - я не зря первый пост из серии написал о технологиях, так как базируясь на их ограничениях, мы строим наш девелопмент. Я много раз слышал, что технология не должна тормозить дизайн, что наши программисты напишут технологию, на которой можно будет делать все и т.д. Но легко девелопить фичи там, где нет границ - делай что хочешь, даже особенно задумываться не надо. Другое дело, когда ты знаешь рамки, знаешь, что точно нельзя делать, и пытаешься придумать уже на этом дизайн, решив конкретные проблемы. 
  • Деньги - имея ограниченный бюджет, мы зачастую получаем игру про капитана кругляша и его верных помощников квадратов. Да, деньги могут стать причиной закрытия проекта, но бюджет нам нужен для дополнительных сотрудников, возможно офиса, нанять художника, который сделает нам крутую картинку и т.д. Не имея возможности привлечь дополнительные ресурсы, используя ограниченный бюджет, мы концентрируемся на главном, том, что получается у нас лучше всего.
  • Skills - да, много людей-пароходов, которые могут на достаточно уровне держать все части игры. Но так же много людей, которые пробуют, не умея рисовать, писать музыку или писать код. Используя для этого тулзы, которые не требуют знаний в программировании, бесплатные ассеты вместо графики (или покупая ее) и концентрируются на геймплее как главном, или технологии, или картинке - в зависимости от уровня скиллов. 
Ограничения позволяют нам не распылятся, не придумывать ничего лишнего и концентрироваться на главном - это может быть геймплей, музыка, код, арт. Но важно понимать, что лучше сконцентрироваться на сильной стороне проекта, той стороне, которую вы ему способны дать, и использовать для этого ограничения.


воскресенье, 19 января 2014 г.

Indie way #1 - Технологии

Решил сделать серию небольших постов про indie development, которым я занимаюсь в свободное время. Точнее, уже много-много времени, и все никак не могу сдвинуться дальше кучи прототипов, которые попадают в стол. За это время набралось много всяких мыслей, которые не тянут на большой пост, а вот в блиц-формате пойдут хорошо. 

Так что, пожалуй, начнем с технологий, где я буду капитаном очевидность, и вообще говорить о понятных для многих вещах.

Я всегда завидовал людям, которые максимально универсальны, могут и код писать и рисовать и музыку делать, и дизайн придумывать. Даже если все это делается не на high level. При наличии таких умений разрабатывать indie-игру куда проще, чем обладать узкопрофильными знаниями.
Все таки, если нет возможности собрать команду, то indie для людей-пароходов.
Прототип платформера с ревайдом времени с использованием GameMaker 8.1

Свой первый прототип/игру я сделал в 12 лет, и тогда мне это казалось просто "ВАУ!!!!!!!1111, я смог это сделать", для этого я использовал Blitz Max, на который случайно набрел в интернете, начитался туториалов и сделал змейку с генерируемой графикой. (в основе лежал один из туториалов для Blitz Max, который я довольно сильно модифицировал).

Прототип одного из проектов с использованием самописного движка
Со времени первого прототипа я перепробовал множество технологий, попытался стать человеком-пароходом - я стал дизайнером, начал писать музыку, подтягиваю постоянно свои знания в написании кода. Я даже пытался научится рисовать, но с этим не срослось вообще, хотя в будущем буду пробовать еще.
Прототип UI проекта, который я делал вместе с mercai используя UDK
Ладно, вступление как-то затянулось, так что перейдем к технологиям. За последние годы я опробовал многое - Unity, UDK, Game Maker, Stencyl, Construct, вновь Blitz Max с желанием сделать модификацию на SCP, Twine, Phaser и т.д. Кстати, у Pixel Prospector есть хороший гайд по технологиям, используемым для разработки игр, и проектам, сделанных на них. Проекты, понятное дело, не показатель удобности технологии, но гайд интересный.

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

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

  • Документация -  как по мне, самый важный элемент любой технологии. Она помогает понять, как с этим работать, какие есть подводные камни и насколько сильно придется танцевать с бубном. Чем меньше документации, тем сильнее мы полагаемся на сообщество.
  • Сообщество -  помогает с примерами, дает ответы даже на самые часто задаваемые вопросы по сотому разу, помогает с pro tips и прочими интересными вещами, которые не так легко обнаружить. Самое слабенькое коммюнити сейчас у Phaser, но тут и понятно, каждый считает, что проще написать свой html5 framework, чем развивать уже существующие, там дикий запад. Самые хорошие, но это опять имхо, у Game Maker и Unity.
  • Простота использования - больше в контексте порога вхождения, так как не всегда высокий порог вхождения означает, что можно сделать что-то очень крутое,  но чем он выше, тем меньше людей остается с этой технологией, отсюда и меньшее количество людей в сообществе.
  • Поддержка со стороны разработчиков - когда нет ответа в документации или в сообществе, единственный путь - обратиться к создателям. Когда есть официальная поддержка (пускай платная, что даже лучше), работать с таким движком куда приятнее, так как выше вероятность получить ответ. Но часто ситуация обратная, когда ответ нельзя получить и от разработчиков, так как они такого не пробовали делать или по другой причине (недавно читал подобный тред в сообществе Construct, где народ обсуждал парсинг текста).
Не помню, что за прототип, но на Unity ;)
Получилось немного больше, чем заметки на полях, следующие посты будут короче и более точечные, по конкретным идеям или проблемам.   

воскресенье, 22 декабря 2013 г.

Быть Джеком

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

Мы постоянно ищем поводы, которые позволят нам рассказать о нашем проекте, сделать релиз или же поддержать у публики интерес к студии или процессу разработки. Для этого мы заводим блоги, делаем сайты студии и проекта, чтобы на случай, когда наступит момент, все это пошло в массу.

Много лет назад про Джека Дорси не слышал никто. Как все было на самом деле - теперь никто не знает, а те, кто знают, упорно молчат, чтобы не показаться хейтерами. Джек создал ваш любимый твиттер, который стоит сейчас больше 33 млрд. $, а многие все еще не могуть понять что такое twitter. И не важно, что он сделал это не сам, но ему удалось создать вокруг себя инфо-пространство, через которое сложно понять настоящую историю создания и все лавры остались при нем.

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

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

Любимый всеми хейтерами Филл Фиш. Он создал свой прекраснейший образ абсолютно неуравновешенного разработчика, который сделал хорошую игру, не гениальную, а именно хорошую.
  • у него была история, а как мы знаем, пресса очень любит истории. Его история о сложном девелопменте, подставы от партнеров и превозмогание, чтобы довести проект до релиза, такое любят вдвойне
  • история с патчем для FEZ
  • история с японским разработчиком
  • уход из геймдева, как финал
Филл Фиш взрывал инфо пространство скандалами. Но самое важное в том, что он до конца придерживался своего образа, который позволял ему делать инфоповод из всего - наверное, даже когда и не хотел (история с японским разработчиком, после которой Филл принес извинения за высказывания). И финал в виде ухода из геймдева выше любых похвал.

Очень тихий Team Meat. Хороший пример команды, которая делает каждый раз проекты все лучше, и историей, которая получила финал. Информационный повод у них создают сами проекты, так как проекты делают вызов сами.
  • у них была история ребят со своими проблемами, которые надеялись за счет своей игры решить эти проблемы. История хорошо показана в Indie Game The Movie
  • решение проблем наступило с продажами SMB, история с очень хорошим концом. 
  • выход The Binding of Isaac
  • наброс в сторону Nintendo по поводу работы с ними, если Meat Boy будет добавлен в Smash Bros
Их главная черта - это их проекты. Не столь важна их история, сколько выпущенные, каждая из которых уже сильный инфоповод для постоянных разговоров.

Недоступный Джонатан Блоу. Мое отношение к данному персонажу очень неоднозначное, мне не нравится Braid, я не люблю слушать его лекции, и я не верю в The Witnes.
  • создал образ, опять таки посмотрите IGTM
  • довольно много и часто выступал, рассказывая о высоких материях и вдохновляя молодые умы делать игры
  • укрепил свой образ созданием Indie Fund и условием получения инвестирования от них
Образ полной недоступности и элитарности, который создал вокруг себя Джонатан - его главная заслуга, и этот образ служит ему хорошо. Посмотрите на все его выступления, он всегда кажется "выше" чем есть, и этим очаровывает. И выход The Witnes эксклюзивом для PS4 еще сильнее укрепляет этот образ в голове зрителя.

Мастер на все руки Маркус Перссон. Я не могу сказать, насколько хорошо он пишет код, но он однозначно гениальный маркетолог.
  • его история не была интересна прессе, так как еще не пришла гигантская волна моды на инди
  • его проект создал его образ
  • его твиттер читает 1,432,535
  • он всегда все делает в нужный момент
Я не верю в дар предсказания, но все анонсы, все действия Нотча выверены до мелочей, каждый важный твит/пост в блоге написан в самый подходящий для этого момент.

Неизвестный Рами Исмаил. До прошлогоднего Mojam я никогда раньше не слышал о
Vlambeer, да и по самому стриму они были похожи на студентов, чем на сириоус бизнес. Но с выходом Ridiculous Fishing у них появилась история.
  • участие в Mojam 
  • история разработки Ridiculous Fishing построена на плохих пиратах, которые как ни пытались, но все равно не смогли сломать разработчиков. И на удивление, эта история выстрелила, хотя пираты достают всех.
  • сертификация под XBONE
Эта небольшая студия сейчас у всех на слуху, многие говорят о Рами, хотя еще пол года назад о нем могли и не знать. Ребята шли тихо и пришли к успеху и выстрелили в удачный для них момент, когда уже есть запущенные проекты и это работает как показатель системного успеха, которым могут похвастаться не многие.

Антипример. Для полноты картины не хватает антипримера хорошего и целостного само пиара. И тут нам на помощь приходят старики индустрии Брайан Фарго, Уорен Спектор, Питер Молинье и, конечно же, Тим Шейфер. Эта дружная компания не вызывает к себе никакого доверия, но манипулирует аудиторией в виде простого меседжа "мы бедные и несчастные, нас не любят издатели". Этот образ побитой собаки вызывает сожаление аудитории и постоянные разговоры. Это позволило парням собирать деньги на kickstarter, а образ настолько крепкий, что никто не задается вопросом "а может, издатели их не любят, потому что проекты говно?"

Вместо резюме. Я специально не даю ссылок, и не привожу хронологию, так как на это интересно посмотреть со стороны и у каждого будет своя картина действий каждого разработчика и каждой студии, которую я вспомнил в этом посте.
Но все эти люди смогли создать вокруг себя образ или историю, которая позволяет им самим по себе быть уже информационным поводом, и в случае любых активных действий привлекать аудиторию, и не только к своим проектам (Нотч, хвалящий Path Of Exile).

Будьте Джеком, создавайте свой собственный образ, который позволит привлекать адуиторию к проектам, студии. Но помните, что подобный образ имеет и негативную сторону - намного легче делать ошибки, пока ты никому не известен!

воскресенье, 1 декабря 2013 г.

Сообщество

Я не писал сюда месяц, находясь в состоянии творческого уныния и желания все бросить и покинуть игровую индустрию. Но я все таки смог перебороть это дурное состояние хандры, и в этом сильно мне помог Kiev Games Night, который наполнил меня энергией и пониманием того, что делать дальше. Так что вернемся к еженедельным постам в блог, и, в частности, поговорим о создании сообщества вокруг игры.

Мы негативисты, считающие что все по дефолту плохо и может стать еще хуже. С одной стороны это хорошее качество, так как мы всегда готовимся к худшему и просчитываем самые плохие варианты наперед, даже если они с нами не произойдут. Другая сторона этой черты - критика, которая палка с двумя концами. С одной стороны, мы критикуем работу и это хорошо, так как под действием критики будут внесены полезные изменения, с другой стороны, мы критикуем все, а особенно в интернете. Хуже RU/CIS только польские игроки, если не верите, поиграйте пару недель на польском сервере League of Legends и все станет на свои места.

Есть книга Rework (её написала компания 37 signals, делающая хорошие продукты), которую неокрепшие умы стартаперов возвели в статус культовой. В этой книге есть очень важная часть о работе с клиентом. Эту часть, как по мне, необходимо прочесть всем, кто пытается строить сообщество вокруг своего продукта. Она дает очень важное понимание того, что каждый человек на форуме, страничке в соц сети или вашем блоге, пишущий, как он чью трубу шатал, является клиентом или же потенциальным клиентом вашего продукта. В остальном же в книге много "ваш КО", но как показывает практика, к этим прописным истинам люди доходят, наступив на все возможные грабли по пути.

С чего начать наше сообщество - не всегда очевидно, зачастую оно начинается со скриншотов или видео, которое разработчики рассылают всем, тем самым пытаясь привлечь к себе людей. Но необходимо начинать с другого - понять, кто будет потенциальным нашим клиентом, какая аудитория и как нам получить максимальное ее покрытие. Отсюда отсеется ковровая рассылка, которую мало кто будет читать, все сконцентрируются на конкретных источниках получения аудитории. В самом начале наша задача, как и с созданием команды, создать костяк из early adopters, самой активной аудитории, которая будет привлекать новых членов сообщества, используя сарафанное радио.

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

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

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

  1. обещания - никогда не стоит давать обещаний о том, что что-то будет сделано в далеком будущем, коммюнити вам обязательно это будет вспоминать каждый раз. И вам не отвертеться потом от этого обещания. У меня есть пример, когда в одном из проектов для соц. сетей команда отказалась от фичи с взаимодействием с друзьями, а модераторы сообщества пообещали эту фичу в будущем игрокам. Команде не получилось отвертеться, и пришлось сдвигать планы и реализовывать фичу, хотя она могла и не требоваться.
  2. агрессия - все мы творческие люди, и на агрессию со стороны людей на наше детище, в данном случае игру, отвечаем такой же агрессией. Отсюда и возникают запреты для разработчиков что либо писать в коммюнити, так как читая все, мы довольно легко срываемся и потом нас уже нельзя остановить. И вот такое поведения самое пагубное для проекта, так как показывает полную  неадекватность разработчика для клиентов, каким бы он не был хорошим до этого. Агрессия способна перечеркнуть в один миг все что вы делали до этого
Откуда берется агрессия со стороны игроков. Никогда не будет довольных всем игроков, кому-то не нравится последний патч, у кого-то удалились все сейвы, а кто-то купил вашу игру за 60 долларов, а она у него просто не запускается. Все это проблемы, которые можно решить. Игрок, как любой клиент, хочет решения этих проблем моментально, он не хочет ждать, так как он заплатил деньги за продукт и не может им насладиться. Помните - игры это развлечение, и игрок хочет получить свою порцию удовольствия сразу. Отсюда и возникает агрессия со стороны сообщества, так как многие считают, что агрессия - единственный способ быть услышанным. Ее никогда не стоит воспринимать как что-то лишнее, и ее легко можно потушить, просто открыто объясняя, в чем проблема.

Зачастую эта проблема выглядит так:
  • разработчик запустил игру
  • на релизе образовывается много саппорт задач
  • разработчику не хватает сил решать все задачи одновременно
  • нерешенные задачи копятся, тем самым подогревая агрессию сообществ
Все это можно объяснить сообществу, просто придя на форум или группу и написав открыто о проблемах, пообещав их решить. Это единственное обещание, которое вы можете дать - решить все проблемы постепенно.

У меня есть хороший пример прям из этих выходных и хорошего, но очень глючного мода к Arma 3 Breaking Point. Ситуация разворачивалась следующим образом - ребята выкатывают новый патч, который просто все время роняет серваки, за этим патчем выкатывается патч в инсталер, который ломает и его. Ребятам потребовалось ровно 5 минут, чтобы запостить солюшен в твиттер, который уже сарафанное радио разнесло по форуму и сами же игроки помогали другим игрокам решить эту проблему. Это хороший подход решения проблемы, если бы прошло больше времени - на форумах скопились бы сотни сообщений от недовольных игроков, которые пришли поиграть, а им не дают.

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

  • начинайте строительство с early adopters, сконцентрируйтесь только на них, они приведут остальных
  • не давайте обещаний, которые не можете выполнить. Единственное обещание - это исправление проблем и ошибок, чтобы в игру было комфортно играть
  • не ведитесь на провокации и агрессию со стороны сообщества. Да, это ваше детище, и о нем могут писать как хорошо так и плохо, вы должны вести адекватный разговор, потому как сообщество - это ваши клиенты и вы продаете им продукт.
  • давайте разработчикам говорить с сообществом, так они будут лучше понимать, что происходит с игрой и как настроена аудитория, это приведет к позитивным изменениям в проекте.


воскресенье, 20 октября 2013 г.

В заложниках ситуаций

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

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

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

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

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

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

Время мы будем терять на поиски нового человека, на то, что человек потратит кусок рабочего процесса на разбор работы своего предшественника. Потому мы выбираем меньшее, как нам кажется в этот момент, из зол - разговор. Мы проводим беседы в надежде, что люди осознают, что они делают что-то не так и примут меры сами, мы надеемся на сознательность команды.

Вторым шагом мы переносим даты релизов, объяснив это для себя тем, что мы провели беседы, и это больше не повторится. Но почему-то это повторяется, а иногда с куда более плачевными последствиями для проекта, чем первый раз.

Разговоры не имеют смысла. Разговор в такой ситуации работает как стресс, и как любой стресс он заставляет людей "пробудится от сна разума" и начать делать свою работу, но этого не хватает на долго. Да, можно создавать такие стрессы постоянно, но есть высокая вероятность того, что команда под действием стрессов выгорит, и придется заменить всю команду, а возможно и закрыть проект. С другой стороны, разговор ничего не дает в более длительной перспективе, так как он не выступает гарантией того, что человек, показав сейчас понимание, не повторит тех же ошибок, когда внимание менеджмента переключится на другие проблемы, посчитав, что разговор помог.

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

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

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

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

воскресенье, 6 октября 2013 г.

Борьба с ветряными мельницами

На стартаперском сленге, буквально в эту пятницу, я соверши exit. Я покинул игровой стартап, который начинался с арт-директора, меня и профильного инвестора. За почти 4 года, что я в нем провел, он вырос до 55 человек, изменился и начал требовать свежей крови, чем и был обусловлен мой уход.

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

Я всегда считал и продолжаю считать, что идеи в нашей индустрии ничего не стоят. И если пройтись по любому офису(маленькой или большой студии, тут значения не имеет), у каждого будет как минимум одна идея, которую он бы хотел делать. В нашей индустрии многого стоят люди, которые смогут реализовать ту или иную идею, и эти же люди являются ее главной проблемой. Люди это одна из первых мельниц, которую мы встречаем на пути к успешному проекту.

В отличии от аутсорса, в котором люди работают в одном направлении, игры это работа нескольких таких групп - дизайнеры, артисты, программисты, продюсера и bizdev'ы, маркетинг. Все эти люди разные не только в плане своих обязаностей, но и в плане психотипов и характеров. Кто-то считает что он великий художник, но при этом не умеет называть слои, кто-то считает себя гениальным дизайнером, но не может нормально задокументировать фичи и срывается на коллегах и т.д. Все они разные и по-своему талантливые, и всех этих людей нужно заставить работать вместе как один единственный механизм.

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

Ну а третьей мельницей пускай будет лень, которая есть в любой индустрии, у любого сотрудника, но в играх у нее явное обострение. Недавно в блоге Сергея Климова, был хороший пост про людей, которые попали в индустрию "вопреки" всему - отсутствию больших денег, постоянной и сложной работе, давлению со стороны и т.д. Но в том посте был один главный пункт, что люди в индустрии должны делать постоянно переоценку ценностей, так как индустрия меняется и просто сесть и расслабить булки не получится.

А я последних несколько лет замечаю другую ситуацию, когда люди приходят в компанию с горящими глазами, с рвением делают свою работу, а спустя 2-3 года садятся на стул, расслабляются и перестают перформить. Хотя казалось бы, что вылететь и оказаться за бортом индустрии на 3-5 лет довольно легко, но это не пугает людей. И на само деле людям ничего не мешает  изучать что-то новое, пытаться себя как-то развивать, учитывая, что все есть в свободном доступе, а рядом есть коллеги, которые могут помочь. Складывается впечатление, что проработав долгое время на одном месте,  все пытаются свить себе теплое местечко там, забив на все остальное. Но не стоит забывать, что чем сильнее увлекаешься cover my ass development'ом, тем холоднее это место становится. Наша индустрия не постоянна, в ней происходят переменный каждый год, и если не пересматривать свои знания и умения, далеко в ней не убежать.

Можно еще довольно долго говорить о разных мельницах, их довольно много и для каждой команды они будут свои, тут все сильно зависит от самой команды и тех, кто эту команду тянет вперед. Я выделил лишь то, с чем сталкиваюсь с завидной регулярностью, в попытке построить dream team, которой под силу будет сделать любой проект вне зависимости от его сложности.

вторник, 24 сентября 2013 г.

Хороший Продюсер

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

Этот пост коснется в трех небольших тезисах того, что по моему мнению должен делать хороший продюсер в команде, чтобы команда была успешной и успешно делала проекты.
  • Хороший продюсер, это саппорт - он не вершитель судеб, он человек, который помогает команде преодолеть milestones и все ключевые этапы, а на этих этапах получить самый высокий результат. Но многие почему-то возомнили себя вершителями судеб в проекте, для таких в аду будет отдельный котел.
  • Хороший продюсер внутри команды полностью абсорбирует все внешние стрессы - под внешними стрессами я подразумеваю любые запросы от издателей, инвесторов и других люде, которые пытаются залезть в мозг команде, посеять там хаос и всячески донести важность своего мнения. Задача продюсера работать как прослойка, которая пропускает в команду лишь важное не создавая из этого стресса для разработки.
  • Хороший продюсер создает внутренние стрессы, которые позволяют команде двигаться дальше - это такой человек с флагом, который поднимет команду даже с колен, и она встанет и пойдет к следующему milestone и успешно его выполнит
Таких людей не хватает нашей уютной индустрии, и чем больше их будет появляться тем лучше и качественней будут проекты. Сейчас в большинстве случаев, мы имеем дело с вершителями судеб, которым все равно на проекты. 

воскресенье, 15 сентября 2013 г.

Вертикальные связи, нетворинг и суровая реальность

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

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

У меня в рюкзаке лежит большое количество визиток со всяких мероприятий, на них красуются надписи CEO/CTO и так далее. Иногда там написан сайт компании, на который я могу сходить. В 90 процентах случаев, все эти сайты не несут никакой информации, которая бы дала понимание с каким вопросом я могу обратится к этим людям.

Соответственно связи теряются либо навсегда, либо до следующей выставки, когда можно будет увидеть людей, если они в этот год приедут.

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

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

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

У меня за последний месяц было два насущных вопроса, один уже отпал, так как я нашел ответы на него сам, так как я не смог найти людей из CIS, которые подавались на IGF и могли бы мне прояснить ряд вопросов про early build. Но ответы я нашел сам и мы решили не гнаться в этом году за IGF, так как мы просто не успеем, и слишком поздно за это взялись.

Но теперь я смогу ответить на вопрос про IGF, если меня спросят, и я надеюсь, что мой ответ кому-то окажется полезным.

Второй вопрос который меня волнует, это площадки, на которых стоит сконцентрироваться для освещения проекта, так как мы планируем скорый анонс, то этот вопрос с каждым днем волнует меня все сильнее.

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

Такие дела.

вторник, 10 сентября 2013 г.

CIS Indie House

Вот уже долгое время меня не покидает идея создать в CIS регионе пространство для работы indie-команд, где люди смогут найти себе партнеров в проекты или же просто начать/доделать свой проект. Пространство, которое направлено только на игровые проекты.

Я долго думал над форматом, изначально мне нравился вариант Indie House Toronto, но в наших реалиях он не будет ничем отличатся от обычного коворкинга, которых сейчас расплодилось довольно много.

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

Формат пространства
Пространство представляет собой место, в котором может работать 2-3 команды на постоянной основе и 3 сессионных команды. Максимальное количество участников - 20-25, из них:
  • 10 - 12 постоянных участников
  • 10 - 13 сессионных участников
Формат предполагает, что пространство находится удаленно от городов, и команды, участвующие в пространстве, проживают в нем на постоянной основе, либо в то время, пока проходит одна сессия.

Данный формат позволит убрать для участников команды рутину и суету, с которой они постоянно сталкиваются, находясь в городах. Тем самым команды получат максимальную концентрацию на проекте.

Также в формат будет входить:
  • лекции от людей из индустрии - что позволит участникам получить дополнительный опыт
  • нетворинг - когда команды деляться опытом друг с другом, чтобы уменьшить количество ошибок и риски
  • совместное обсуждение проектов - чтобы повысить качество разрабатываемого продукта и получить отзыв от людей изнутри индустрии
  • колаборейшен для создания новых проектов
Цели
  1. Создать пространство как для работающих команд, так и для новичков
  2. Создать площадку для обмена опыта, тем самым снизив риски разработки
  3. Дать возможность командам начать либо завершить проект, концентрируясь только на нем 
  4. Развивать indie-команды в CIS и помогать им выпускать проекты
Это не инкубатор и не акселератор
Важно понимать, что данный проект не является ни инкубатором не акселератором. Мы не будем давать командам деньги на разработку. Наша задача создать пространство, в котором команды максимально продуктивно смогут работать над проектами и обмениваться опытом с другими командами.

Пространство должно обеспечить максимально комфортные условия для разработки.

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

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


Что необходимо для участия
На данный момент это все находиться лишь на стадии задумки, и, возможно, в некоторых концептуальных аспектах требует доработки. Но уже сейчас можно говорить о том, что потребуется для открытия такого пространства:
  • костяк постоянных участников, которые выступят параллельно инвесторами данного пространства и будут его поддерживать (данный вопрос можно закрыть через внешних инвесторов или привлечение фондов, но хотелось бы, чтобы костяк команды плотно был вовлечен в работу пространства)
  • Выбор места дислокации пространства, где оно будет находиться и на какое количество человек будет расчитанно
  • Подготовка самого пространства для первой сессии
  • Финансирование всей этой затеи
Основные моменты, с которыми необходимо определится на данный момент, это костяк команды, проект самого пространства и финансирование, которое потребуется для реализации данного проекта.

Исходя из этих элементов, мы сможем понять основные риски, а также сформировать необходимый бюджет для открытия пространства. Уже на основе этой информации мы сможем сформировать сроки на открытия пространства, в данный момент хотелось бы открыть его уже весной 2014 года.

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

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


четверг, 29 августа 2013 г.

нативное 2D в Unity, GameMaker, эксперты и конкуренция

Вчера произошло событие, которого все ждали довольно давно, о котором все подозревали, но не знали, когда же случится (и главное - все еще не знают). Unity анонсировали нативную поддержку 2D, что звучит хорошо, и в то же время губит бизнес ребят из Asset Store с их 2D примочками, если нативная окажется лучше и удобней.

Впроочем, даже если ребят и не заденет, народ рефлекторно будет юзать нативный - зачем платить 40-50 долларов за стороннее малодокументированное поделье?

А на день раньше произошло еще одно знаковое событие - анонс YoYoGames в виде версии GameMaker Studio 1.2, который теперь флагманский продукт. Отыскать другие версии GameMaker отыскать на сайте производителя очень непросто. Теперь в GameMaker Studio множество новых фишек - шейдеры (нормал мапы, господа!!!), новый компилер и множество платформ, не покрывают они пока только консоли.

Эти две новости одинаково значимы, так как эти два проекта станут главными для 2D indie-сцены, которая довольно обьемная и бегает от фреймфорка к фреймворку, в перерывах между попытками написать что-то свое.

И сейчас эти два проекта практически наравне:
  • низкий порог входа, как для новичков, так и для advanced пользователей
  • удобная работа с 2D (в gamemaker так точно, что будет с unity пока не понятно, но верим в лучшее, их ролик обещает многое)
  • покрытие множества платформ (конечно, отсутствие консолей в перечне платформ gamemaker немного огорчает, но не понятно, нужны ли они всем)
Эти две платформы будут довольно агрессивно конкурировать между собой и бороться за пользователя. Уже сейчас это видно по сайту Game Maker, который преобразился на глазах, стал удобным и на нем появилось очень большое количество полезной информации для разработчиков, а главное - очень детальная документация, чем ребята не могли похвастаться еще пол года назад.

Главным вопросом для многих станет цена, так как не все indie-разработчики смогут осилить ценовую планку Unity, несмотря на подписочную модель, которая недавно появилась.
Все остальные плюшки, которые будут добавляться, вторичны. Может решать пока только платформа, но цена тут станет главной, вторым будет идти удобство работы, а сейчас оно наравне.

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



пятница, 16 августа 2013 г.

Out of Scope

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

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

Я попробовал это сделать, оградить себя сферой, за пределы которой ничего не попадет, что не касается моей текущей деятельности, тем самым позволив мне получить больше времени на решение тех или иных задач.

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

Но к чему я это веду, это же состояние Out of Scope постоянно случается во время разработки и избавится от него довольно тяжело, если его запустить, но даже в запущенном состоянии это реально.

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

Основные причины, которые приводят к выходу за рамки scope:

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

Факторов для выхода за рамки scope довольно много и они сильно могут зависеть от проекта,над которым работает команда и условий, которые создает проект. На моей личной практике встречается один самый частый фактор, когда команда делает лишнюю работу, перенося внимание с основных фичей запланированных в milestone, на побочные, которые не критичные, или не требуют выполнения вовсе.

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

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

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

В итоге у команды есть каждый день рутинное напоминание, помимо задач, о том, что они должны сделать и добиться за время milestone, с другой все члены команды знают что они делают, так как сами принимали участие в формировании milestone scope и в их же целях, чтобы туда не попало ничего лишнего, либо лишнее было убрано.

вторник, 2 июля 2013 г.

А где же рок-н-ролл ?

Я тут, как и многие, уже успел посмотреть Grounded: Making The Last of Us, который довольно хорошо иллюстрирует саму разработку игр. Там много очень интересных моментов, даже для тех, кто не играл, а просто интересуется сутью процессов создания.

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

И это удивительно. Если посмотреть другие фильмы про разработку, то очевидно, что они мрачные, не внушают никакого счастья и веры в красивый финал. Посмотреть только на Indie Game The Movie, который в плане мрачности и безнадежности бьет большинство артхаусного кино.

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

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

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