Я хочу сразу сказать, что в первой части будет мало о самой разработке, а больше именно истории, трудности, социальные аспекты, проблемы с которыми может столкнутся инди разработчик, а также я не могу не упомянуть Москву, покер и спорт — без которых эта история не была бы полной. Итак, прежде, чем я начну с легенды, для того чтобы немного заинтересовать читателя, за время разработки с 2013 года по 2015 год я потолстел на 22кг и превратился из спортивного парня в человека, который с трудом узнавал себя в зеркале, я выпивал в год около тысячи банок ред булла, все началось с одной-двух, сейчас уже бывает редко, чтобы я пил меньше трех. Я спал по пять, а то и четыре часа. В течении двух лет я вставал в будние дни в пять утра и ехал на работу в другой город на электричке, чтобы вечером оставалось время поработать над игрой. Я по глупости отказался от предложения в 250.000 евро на разработку игры. Вероятно итогом такой жизни стало тяжелое воспаление легких, суд с бывшим работодателем, а также серьезные проблемы со спиной из-за постоянно сидячего образа жизни. Ах ну и если этого мало, то я бросил университет и сам уволился с работы!
Что ж поехали…
«You can be more, than just a man» — Вы помните знаменитую фразу из Batman Begins?
Так вот эта фраза не обо мне. А теперь немного о себе. Последние пять лет я работаю разработчиком программного обеспечения на Java в Германии. Всю свою сознательную жизнь, а именно лет так пятнадцать, я занимался полупрофессиональным спортом, играл в покер, читал и писал книги, сидел на близзардских играх, а также бесцельно учился, залезая в долговые немецкие «стипендии», пока моя девушка однажды не сказала мне, что беременна.
Вот отсюда и начнем отсчет этой истории.
Главные вещи, которые нужны чтобы лезть в инди-разработку. Это великий оптимизм, неограниченная доля мальчишеского максимализма, уверенность в себе переходящая в самоуверенность, вера в свое дело ну и конечно воля, ведь мы хотим сделать в подвале что-то великое.
Только начался 2013 год. Я как раз досматривал «Во все тяжкие» — и что-то после новости о ребенке в голове щелкнуло, не нужно было никакой мотивации, речей, бодрой музыки, просто пришло осознание, пришло время, впереди должна быть квартира, ребенок должен быть обеспечен, свой бизнес, своя империя. Я просто открыл книгу о разработке игр на андроид и решил что стану миллионером. Перечитав ее раза 4, я спрограммировал за пару месяцев, что-то среднее между змейкой и танчиками для Дэнди. Но что-то было не так, в игре была убогая графика, да и откуда ей взяться? Я начал искать варианты — художники, как оказалось стоили бешеных денег. Я рыскал по просторам интернета, искал какие-то пиксели, просматривал работы фрилансеров, как…
… сейчас должна звучать эпическая музыка, я нажал на линк ведущий в asset store на Unity 3d.
Unity 3d
Unity укрепил мое мнение, что можно в одиночку достучаться до небес и сделать миллионный проект. Конечно даже тут не обошлось без ошибок, недолго думая, я выбрал UnityScript для программирования. Ужасно что нигде на просторах интернета не описаны основные причины, почему этого делать не стоит. Меня же понять было можно, кроме явы я в основном имел дело с различными библиотеками и фреймворками JS, даже приложение для Бакалавра я писал на Java и JQueryMobile. В то время мне было невдомек, что C# по синтаксису очень напоминает Java. Но это естественно не главная причина по которой стоило бы взять C#.
Первая и на мой взгляд важнейшая! UnityScript код компилируется в C#, и если у вас большой проект, то вы будете кучу времени тратить в ожидании. C# компилируется за секунду.
Вторая причина связана с профессиональной точкой зрения. Если вы когда-нибудь захотите сменить ваше хобби работой, то вы можете быть уверены Ubisoft или Nival ищут ребят не со знаниями UnityScript.
Третья причина тоже выходит из профессиональной среды, так для маленького проекта это может и не играть большой роли, но для большого играет немаловажную! C# как язык и майкрософтовские библиотеки просто напросто обыгрывают UnityScript, как Аргентина Ямайку.
Чего стоит хотя бы то, что мне пришлось для Темного Лесника писать A* Алгоритм на UnityScript без вот этой вот фразы, взятой с официальной странички Unity:
//JavaScript does not allow generics to be defined. To utilize
//this functionality you will need to use C#
В целом Unity3d безусловно гениальное творение. На мой взгляд у Unity есть лишь один существенный недостаток. На данный момент в Steam Темный Лесник весит полтора гигабайта, но это лишь его малая, закинутая часть. Проект весит чуть больше двадцати гигабайт. Так вот попробуйте проект сделанный под Unity 4.6 запустить под Unity 5.1. Скажете, ну это понятно, ну тогда попробуйте запустить проект сделанный под Unity 5.1 под Unity 5.4. В случае перехода с четвертой версии на пятую у вас меняется API, ну это в общем-то всегда и везде так и вам нужно просто в тысяче мест подправить код. Но это лишь малая часть проблемы, меняется физика, shaders, просто все на свете — о чем мы даже и не могли себе представить. На мой взгляд, может быть я требую невозможного, но не хватает какого-то мягкого автоматизма, который бы смог справиться с такими проблемами. А еще было бы неплохо если бы Unity обновлялся, а не записывался как новая версия.
«An idea is like a virus»
Вам никогда не казалось что рынок игр совсем не исчерпан? Я не раз слышал мнение, что разрабатывать нечего — уже все есть. Так ли это? Я вырос на третьих героях, варкрафте, Dungeon Keeper, Carmageddon, после тех времен появилось много других крутых хитов, о которых я читал, но уже не застал, я застрял лет так на пятнадцать в мире близзарда. Но я знал точно, что никто так и не смог за последние почти двадцать лет спихнуть с трона Heroes of Might and Magic 3. Я точно знал, что несмотря на некоторые попытки, никто там и не смог даже близко приблизится к Dungeon Keeper 2. Я мог бы упомянуть Carmageddon, но его воскрешение все же началось недавно. О варкрафте и разработке чистой стратегии говорить нет смысла, перебить Starcraft 2 невозможно даже на мой взгляд, имея миллиарды — эта игра фактические похороны любой стратегии в реальном времени еще лет на 5, пока близзард не начнет разработку Warcraft 4. Я до сих пор не могу понять, почему компании имея деньги не могут сделать нормальных героев, может быть просто не надо ничего придумывать? В Шахматах 64 клетки… в покере 52 карты… В героях было всего больше и она была гениальна. Нужна лишь новая оболочка и Esport, но оставим эти мысли тем, кто владеет лицензией на героев.
Идеи одна за другой влетали в мою голову и как в покере на 12 столах, я отсеивал в доли секунды все, что не подходило. В итоге я остановился на клоне Dungeon Keeper и The Horde, переместив место событий в лес — В итоге скажу, что на данном этапе в Dark Forester от Dungeon Keeper осталось не так много, игра действительно напоминает старый добрый The Horde — но об этой игре знают, возможно лишь люди когда-то обладавшие приставкой Panasonic 3do.
Также отмечу, что со мной сыграло злую шутку, что я не играл ни во что, кроме Warcraft 3, World of Warcraft, Diablo 3 и Starcraft 2 последние 15 лет, я отстал и даже не представлял себе что на Steam творят историю и чуть ли не каждый день там появляются новые идеи игр.
Крестовый поход
Я коротко упомянул о качествах, которые нужны на мой взгляд чтобы влезать в это безрассудное дело и главная из них вера, она должна быть еще более безрассудная, чем у инквизиторов времен крестовых походов.
Когда я рассказал знакомым, друзьям, жене о своей затее, никто естественно не воспринял всерьез, для всех это была бредовая и просто непосильная затея. Тогда я фактически поклялся себе, что следующие два года не пропущу ни дня разработки. И я сдержал слово, даже когда жена рожала, после почти 40 часов проведенных в больнице, я приехал домой, не лег спать, а стал дальше программировать игру.
Проект быстро двинулся с места, где-то за три месяца я уже накатал подобие какой-то игры в красивой оболочке. В начале проекта я еще работал и учился, точнее числился в университете, написав бакалавра мне оставалось не так много, но в итоге я решил, что у меня больше нет на это времени и нет просто напросто сил учится еще около года. Отмечу что у меня уже была работа на 40 часов в неделю, хорошая зарплата и бессрочный контракт, который я в скором времени спущу в унитаз. Ребенок родился, шли недели, месяцы, я стал меньше заниматься спортом, практически перестал, стал очень много из-за стресса есть, по вечерам и ночам работал над игрой. Подошел 2014 год и помчался вперед с новой силой, две банки ред булла в день сменились тремя, на работе мне отказались давать повышение из-за того что я не закончил университет, фактически меня взяли в заложники ситуации. Год был жестким, когда я засыпал в 12 или час ночи, я просыпался в пять утра и ощущал будто только что лег в кровать — я не мог поверить что уже прошло 5 часов. По сути проект не имел никакой отдачи, я тратил деньги, тратил время, я сдавал физически, проводил мало времени с женой и ребенком, бросил после стольких лет учебу, да, и родители у меня были из тех, кто вечно тюкали по этому поводу. Но где-то должно было пойти в плюс?
Jesse, you asked me if I was in the meth business or the money business. Neither. I'm in the empire business.
Когда-то много лет назад, когда СССР только распалось мой отец устроил у нас в квартире подпольное казино. Там собирались довольно интеллигентные люди поиграть на деньги в преферанс, дурака, шахматы, сику, нарды и другие игры. К чему это я вообще? Неудивительно, что лет в 6 я уже умел играть в 5 Card Draw Poker. Нет речь совсем не об этом. После переезда в Германию, мои родители совсем исчезли из жизни, она превратилась в какой-то депрессивный нескончаемый поток лет. Затем у отца нашли рак простаты в продвинутой стадии. Операция прошла нормально и неожиданно это его вернуло к жизни, он начал заниматься Антиквариатом.
Теперь все же поясню с чего я зашел с какого-то непонятного угла.
Занимаясь антиквариатом, отец познакомился с людьми из бывшего СССР которые хотели диверсифицировать свой бизнес и вложить свободные деньги в какой-то проект. В общем и целом все сводилось к тому что 250.000 евро на развитие за 50% процентов игры. Не буду вдаваться в подробности «переговоров». Скажу честно сейчас бы я естественно согласился. Но тогда мой неадекватный максимализм был не готов делится такой частью проекта, и я захотел 250.000 евро за 20% проекта, естественно на этом все закончились. Отмечу, что и ментально, смотря назад — я был абсолютно не готов.
Так а причем здесь казино в СССР спросит меня внимательный читатель.
Один из тех самых давних друзей отца, имея большие вложения в недвижимость, тоже заинтересовался проектом и тоже захотел диверсифицировать бизнес. Этого знакомого я знал еще с Москвы и проведя, пару переговоров мы остановились на том, что если ему удастся продать какую-то недвижимость в быстрый срок, то он войдет 50 на 50 за сумму около 500.000 долларов. Точка недвижимости к сожалению не продалась, проблемы с недвижимостью в Москве сейчас известны, а может быть и он сам в итоге разуверился в таком рискованном деле.
Kickstarter, Greenlight, Facebook and Co
Итог. 2014 год подходил к концу. Я встал на весы — 102 килограмма. Но, не все должно было быть неудачно, я поставил игру в Greenlight на Steam и 30-го Декабря мне пришел подарок — игра в короткий срок прошла отбор. Думаю, забавным фактом моей отсталости в играх является то, что начиная разработку Темного Лесника в 2013 году, я мало что знал о Steam и даже не уверен, был ли у меня на то время там аккаунт.
Естественно кроме Greenlight были совсем неудачные кампании в Kickstarter и Indiegogo, а также бесполезная трата денег на рекламу в Facebook. Да и в том же Кикстартере я умудрился заплатить пару сотню долларов, чтобы мою игру разместили на каких-то неизвестных и богом забытых сайтах.
А теперь коротко о каждой платформе.
Кикстартер — сюда надо приходить подготовленным, фанаты должны ждать и быть готовыми, когда вы запустите проект. Если вы пришли и думаете, что здесь толпится куча людей которые листают страницы и ждут куда бы закинуть деньги, то вы ошибаетесь. После первого неудачного дня ваш проект уйдет с радаров и на этом все, камбэка не будет. Также вас первые дни завалят спам емейлами люди у которых базы данных инопланетных юзеров и они готовы вам за сто баксов принести приток таких кликаний, которые наконец вас сделают счастливым обладателем несметных сокровищ.
Фейсбук — лайки, это фейк, у меня около 2000 лайков на фейсбуке в группе Dark Forester. Я уверен никто из этих людей не покупал мою игру. Я даже почти уверен, что этих людей не существует. Не тратьте свои деньги.
Indiegogo — это смешно. Если вы не спроецировали машину времени или у вас готов аппарат телепортации, то там ловить нечего.
Greenlight — Вот он победитель, но нет, не потому, что они обратили на мой проект внимание. У Steam база игроков в 100.000.000. Как вы думаете сколько посмотрело людей на мой проект на Indiegogo? 50 человек. А сколько на Кикстартере? 500 человек! А сколько на Steam Greenlight? 100.000 человек!!!
Но все же, вы должны ваш проект естественно засовывать и на Indiegogo, и на Кикстартер, и естественно на Steam Greenlight, и даже создать группу в Facebook, просто не тратьте деньги.
И затем все стало совсем плохо
Два первые месяца после одобрения Steam проходят в великой эйфории, я прибавляю еще сил. И делаю, следующую большую ошибку — запускаю игру в Early Access, как Альфа версию. За неделю я заработал около 3.000 долларов, впрочем нет 1600, остальное ушло на налоги и Steam, но урон нанесенный этим решением гораздо больше этих наконец-то сладких денег, этой хоть какой-то отдачи за два года. Игра падает в рейтинге, мне поначалу все это не понятно, как так, ведь игра моя и что вам товарищи американцы не понятно, что это ранняя альфа и тут еще не может все работать! Но, на самом деле игра жутко сыра. Игра напоминает игры конца девяностых, когда вы покупали диски вместе со вторым варкрафтом, там был десяток стратегических игр, которые вы тут же после первого бага выключали.
Но я не сдаюсь, я обещаю кучу патчей и начинаю работу над ошибками, хотя, я очень далек был еще от сути того, что надо было на самом деле делать.
Но в начале года случается, то что в итоге сбивает меня и выводит на путь войны. Теперь я расскажу, как все стало совсем плохо и я начал крестовый поход во имя своей игры.
В мае 2015 года меня напрочь сваливает сильнейшее воспаление легких на пять недель, после первой недели я выглядел, как зомби из The Walking Dead. Не знаю, был ли это недосып за два года, ред булл льющийся по моим венам вместо крови, наверное все вместе или просто несчастный случай, что в поезде около меня может быть сидел больной человек. Так или иначе все это сопровождает череду неприятных событий. С работы после третьей недели болезни приходит два письма, инициированные моим шефом: «Abmahnung» и «Ermahnung» — это что-то вроде вас ставят на работе на учет, если вы допускаете хоть одну ошибку, то вас могут по любому поводу уволить. А теперь что же стояло в этих письмах. В первом из них стояло, что под страхом увольнения мне запрещено заниматься разработкой игры в свободное время. Во втором письме стояло что я во время болезни обещал на Steam выпустить патч, и соответственно, если я могу писать в чате на стиме, то вероятно мог и работать.
Nobody fucks with blowfish
Но я не рыба еж. Моя фирма была дочерней конторой одной известной швейцарской фирмы. В тот же вечер я написал на работу что увольняюсь.
На работе я был довольно ценным работником из-за быстрого выполнения задач. работая в Scrum каждый работник получал примерно на две недели 10 Storypoints, я выполнял в основном не меньше 20, мне просто было скучно сидеть без дела. Многие работники после выполнения задач уходят с головой в социальные сети или другие странички.
Но я не просто написал что увольняюсь, я также пригрозил, что засужу фирму за нелепые влезания в личную жизнь и давление на человека во время больничного, а также по полной программе проехался по своему шефу. В итоге шефа моего уволили через 6 дней после этих событий. Меня же просили остаться, но я был непреклонен, мне нужна была война, так я мог себя еще больше мотивировать. Через три недели после увольнения я подал в суд на бывшую фирму.
Конечно не буду лукавить, увольняясь у меня возник план, взять приватный кредит на 12.000€ все у тех же знакомых отца и отработать все лето над игрой, попутно катая, в покер в Штутгарте. К сожалению, отыграв в хороший плюс 3.200€. Мой напарник, с которым мы играли еще в студенческие времена отыграл без тормозов. В итоге его пару раз очень грамотно развели за столом, а пару раз он просто залудоманил и так как мы имели общий банкролл, месяц скатился в ноль. С покером пришлось завязать, так как нужны были деньги просто напросто на существование в ближайшие месяцы.
Четвертый месяц подходил к концу. Финала игры не было даже на горизонте. Суд замер в ожидании, пока я и другая сторона строчили друг на друга обвинительные письма.
Деньги заканчивались и на мне навис в дополнение к студенческим кредитам еще один кредит с выплатами 650 евро в месяц.
Напоследок в компьютере который я взял за 3.000 евро в рассрочку по моей вине сломалась материнская плата и процессор (лучше даже не описывать, как такое могло случиться с человеком работающим программистом). На пятый месяц ситуация стала критической — деньги исчезли. На то время Unity стоил 75 долларов, а у меня была еще и лицензия на Android Pro. Без денег я уже не мог платить за Unity. В итоге я остался лишенным движка Unity Pro и основного компьютера на ближайшие 6 месяцев, а соответственно и разработка игры зависла в воздухе.
Мне с семьей пришлось в срочном порядке отказываться от съемной квартиры и переезжать в квартиру к родителям (да, это все с маленьким ребенком и женой).
The Empire Strikes Back
Это первая часть истории. У меня есть план написать 5 частей этой “увлекательной” литературы. Для тех же, кто расстроился и негодует над безалаберным разработчиком, я лишь упомяну, что будет ждать вас в продолжении, в 2016 году я выиграл суд без адвоката в чужой стране по трем пунктам, четвертый был аннулирован. Я все таки нашел довольно быстро работу и Темный Лесник уже играл роль на собеседованиях! Оказалось что игра на Steam все таки имеет какой-то вес. Моя зарплата увеличилась на 10.000 евро в год в сравнении с бывшей работой. Бросить университет — было лучшим решением в моей жизни, но я никому этого не советую, где бы вы не жили — вы живете в системе. Я выплатил не только последний взятый кредит, но и в сумме за год порядка 30.000 евро. Я снова вошел в отличную спортивную форму, а также выпустил Бетку Dark Forester, в которой все еще тупит A* Алгоритм, и которую я все еще надеюсь, никто не будет покупать до релиза. И конечно это история о том, как я менялся сам. Ну, а как все это было, я расскажу в продолжении этой истории, если будет какой-то интерес.
Часть первая: «Во все тяжкие» или суровые реальности разработки Dark Forester.
Часть вторая: A* Алгоритм на JS для Unity 3d или как медленно умнеет Темный Лесник (полный код и описание на JS)
Часть третья: “Во все тяжкие 2” — Темный Лесник карабкается вверх.
Часть четвертая: «Теория одной карты» — по мотивам Темного Лесника
Часть пятая: Equity Dark Forester или как должен кончиться сериал.
Автор: Moskow