Русский
Русский
English
Статистика
Реклама

Доход от игр

Из песочницы Как я решил сделать игру, вдохновившись Heroes of Might and Magic, и потерял деньги (часть 1, 2)

19.10.2020 14:23:26 | Автор: admin
Данная история будет состоять из трёх частей, т.к. я выпустил три игры:

  • Beasts Battle
  • Necromancer Returns
  • Magicians Legacy

Часть 1


Для тех кто предпочитает смотреть, а не читать, я подготовил видео этой статьи.


В каждом выпуске будут цифры по каждой игре, какой бюджет и доход принесли игры

Сразу скажу, я фанат серии Heroes of Might and Magic и King's Bounty. Играл почти во все части и аддоны, за исключением седьмой части, т.к. время идет, жизнь меняется и на игры времени не осталось.

С данной серией я познакомился в начале 2000-х с игры Герои Меча и Магии 3 еще в школе. Потом начались студенческие годы, прогулы пар, чтобы поиграть с друзьями в героев за одним компом, где ход другого игрока длился вечность, и мы никогда не доигрывали партию.

С 2005 года я начал разрабатывать флеш игры, годы шли. И вот наступил 2013 год, я решил переиграть в HoMM 2. Меня так увлекло, хоть я раньше и проходил игру, в этот раз возникла мысль, а почему бы не сделать свою игру с пошаговыми битвами?!

В данной статье пойдет речь о первой игре Beasts Battle. Я расскажу по порядку, как она появилась на разных платформах: Web, GooglePlay, AppStore, Steam:

image

Разработка flash версии


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

Над игрой работал исключительно в свободное от работы время в течение года. При этом игру бросал 2 раза на длительный срок. Примерно по интенсивности работы было так:

1 неделя разработка механики боя и потом бросил на несколько месяцев
1 неделя разработка покупки войск, окошек победы и т.п. и потом опять бросил на несколько месяцев
2,5 месяца интенсивной работы без перерыва и игра готова.

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

image

Арт


Когда сделал механику битв, то решил показать художнику и своему другу NeexGames, с которым много работал над другими играми, у него есть свои хиты (Heaven vs Hell).

image

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

image

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

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

image

Тестирование


Отправил игру на растерзание в комьюнити флеш игр (тогда оно было активным и флеш был жив!). Было уйма замечаний и советов. И я около месяца улучшал игру. И вот что было добавлено в игру, чего вообще никак не планировал, т.к. не хотел, чтобы разработка еще больше затянулась:

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

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

image

Баланс


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

Расходы


Самое ценное из потраченных ресурсов было это наше время. С художником мы договорились за фикс прайс после продажи игры. Музыку полностью написал бесплатно начинающий композитор, т.к ему нужно было для портфолио. И написал неплохо, в общем нам повезло. Также я заказал картинку для концовки игры за 500 рублей и локализацию на английский за 200 рублей. Это были мои первые траты на фрилансеров. Ой как не просто было расставаться с деньгами) На тот момент я зарабатывал на основной работе 12 000 рублей в месяц.

Продажа flash версии


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

Я выкладываю игру на эту площадку для продажи. И вот волнительный момент. Будут ли предложения?) К счастью в первый же день была ставка в $200 и на следующий день в $500 от другого спонсора. И на этом всё 2 месяца тишины. Я делал рассылки спонсорам, писал админам, ругался, как так, хорошая игра, с хорошей оценкой, просмотров вообще нет! Я приложил очень много усилий, чтобы игру смотрели. Никто не отвечал, и никто не хотел покупать, кроме спонсора, который поставил $500. Всё что я мог сделал. Спонсором была студия Armor Games. Еще на этой площадке была такая возможность, как сделать последний звонок (Last Call), оповестить всех заинтересованных, что я готов продать игру. Я написал, может возьмешь за $800, если мне ласткол не поможет и разойдемся? Он сказал, ок без проблем. Я был очень рад, что он согласился, т.к. мог с художником расплатится. В итоге ласткол и 3й спонсор ставит $1000 за эксклюзив. На что Armor Games сразу перебивает в $1200, жду пару дней и принимаю предложение.

image

Релиз в Web


На сайте спонсора игра получила рейтинг в 50 баллов при запуске, я очень расстроился, если честно) Но постепенно дошла до 64 (уже нормально), 694к просмотров на сайте спонсора за месяц и 600 фаворитов (может немного, но мне очень приятно). В общем я доволен как пошла игра и спонсор тоже) Она оправдала свои надежды. Ведь игра вышла довольно простой, несмотря на все наши старания и труды. И признаюсь, что проект был мне не по зубам, еле как с ним справился.

После этого я продал еще свою игру определенной лицензии нескольким спонсорам за небольшую сумму.

Итог Flash версии игры


Игру от начала до релиза разработали вдвоем за год. Игра принесла $1710.

Разработка мобильной версии


Лето 2014 года, я получил множество комментариев с веб версии от игроков, что улучшить. Я очень горел проектом, был воодушевлен и решил портировать игру на мобилки! Для этого я решил использовать движок Corona SDK (сейчас это Solar SDK). Я хорошо владел движком и потратил 4 месяца беспрерывной работы, чтобы портировать игру на другой движок и все переписать под новый язык программирования. Движок, как и Unity, Unreal и другие мультиплатформенный, поэтому я рассчитывал выйти в GooglePlay и AppStore.

image

Что нового


Полностью изменил баланс покупки войск. Во флеш-версии войска в магазине были конечны, так что в какой-то момент можно было потерять тот или иной тип юнита без возможности восстановления. В мобильной версии я добавил новый параметр, лидерство. Число юнитов в магазине стало неограниченным, но возможность их покупки зависела от количества очков лидерства (а также от количества золота, конечно). Также я добавил третью кампанию за Босса, мне показалась это интересной идеей и чисто для фана, но эта кампания открывается после прохождения любой другой основной. Еще добавил режим ХотСит, когда можно выбрать любую расу и сразиться с другом на одном устройстве.

Также добавил в каждую кампанию хардкорную миссию, она даже отмечена как череп). И весь арт обновил до 720p, а было 640p.

Т.к. это мобильная игра, то после релиза последовали обновления. Были добавлены:

  • новая арена
  • по новому юниту на каждую расу
  • новые достижения
  • артефакты для героев

image

Релиз мобильной версии


Где-то 2015 год. Игру я выпустил полностью бесплатной, без рекламы и донатов. Я очень хотел выпустить чистую игру, когда еще такое будет) Т.к. все хотят заработать. Да и я тоже) Но почему бесплатно и без всего остального? У меня был хитрый план я знал, что буду делать следующую часть. Я рассчитывал, что раз игра бесплатная и без всего такого, то её будут скачивать, играть и наслаждаться. У меня будет трафик, фанаты, комьюнити, которые перейдут на другую игру в будущем.

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

image

Разработка Steam версии


Наступает 2016 год, и я решаюсь выпустить игру в Steam, тогда еще был Greenlight и нужно было попотеть, чтобы пройти, искать варианты, кто же лайкнет игру и так далее. Когда игру одобрили, я создал страницу в Steam. После чего я стал прикручивать API, чтобы работали лидерборды, достижения и так далее. В игре были карточки!!! Сейчас чтобы они были у новой игры, нужно чтобы игра взлетела по продажам.

Что нового

  • Мультиплеер
  • Графика под 1080p
  • Глобальная карта перерисована

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

image

Релиз Steam версии


Была у меня мысль игру выпустить также бесплатной, т.к. на мобилках она бесплатна, но меня отговорили. Сказали, что карточки бесплатным играм не дают. И тогда я поставил цену у игры в $1. После того как добавил в игру мультиплеер (да, это было обновление), я повысил цену игры до $2 это было примерно через 4-6 месяцев после релиза.

Игра вышла 15 июня 2016 года. За 4 года с того момента игра продалась в 3341 копий ($2642). Из них за первый год было продано 2474 копий ($1597), а за первый месяц

826 копий ($698). Это общий доход в Steam, я не вычитаю комиссию и возвраты, налоги. То есть данные цифры можно делить на 2. Вот такая воронка.

Общий итог


В этот раз я в плюсе, если не учитывать потраченное время.
Разработка всех версий игры 14.04.2013 15.06.2016 (3 года)
Выпущена в Web, GooglePlay, Appstore, Steam
Доход $3031за всё время жизни игры в релизе (2014-2020)

Эта игра помогла пощупать рынок и узнать, как всё устроено от начала до конца. Она дала огромный опыт. После чего началась разработка игры Necromancer Returns

Часть 2


Для тех кто предпочитает смотреть, а не читать, я подготовил видео этой статьи.


В прошлой части я рассказал, как я пришел к разработке гексагональной пошаговой игры Beasts Battle, сколько времени было потрачено и сколько заработано денег.

image

2015 год. Работая в офисе и параллельно на себя, я разрабатываю игры вместе с художником. И так вышло, что, продав игру, я заработал 2-х годовую зарплату в офисе. Мы с художником решаем переехать в Калининград и начать разрабатывать на заказ Flash и HTML5 игры. Всё шло отлично, мы каждые 2-3 месяца разрабатывали по игре и зарабатывали хорошие деньги. Я откладывал на квартиру, хотел купить ее за наличку без ипотеки. Но потом Flash умер, а цены на HTML5 игры упали в 5-10 раз. Лавочка постоянного заработка накрылась, и передо мной встал выбор: идти искать работу или рискнуть и, живя на отложенные на квартиру деньги, начать делать свою игру, которая окупит мои вложения, и стать миллионером.

Я решил рискнуть и пойти по второму пути

image

Разработка Necromancer Returns


На тот момент уже вышла игра Braveland, которая мне понравилась. Я понял, что смогу потянуть игру такого уровня и даже добавить свои фичи, которые улучшат идею.

Я прикинул сроки и бюджет каким образом, я до сих пор не знаю, никакого анализа не было, просто пальцем в небо) Я решил, что игру сделаю за 3 месяца и мне понадобится 120 000 р. на фриланс и 50 000 р. на маркетинг. Хаха, какой я был наивный! Мои прикидки были основаны только на собственном опыте и с примерной поправкой на масштаб новой игры: при работе над прошлой игрой, Beasts Battle, я потратил на фриланс примерно 10 000р.

image

Что нового</2>
Я решил сделать карту, по которой перемещается главный герой, как в Braveland, и это было основное нововведение по сравнению с Beasts Battle.

image

Также в игре появились подземелья. Каждого юнита можно было улучшить, как в Героях Меча и Магии. Появилось много артефактов, диалогов, заклинаний и так далее, всё, что принято для такой игры. А еще на тот момент я играл в первого Ведьмака, и там было множество разных побочных заданий. Это меня вдохновило, так что посреди разработки игры я решил ввести квесты. Один даже сделал нелинейный, с выбором.

image

В общем, игра значительно выросла в сравнении с Beasts Battle. Подглядывал я на три игры: HoMM 3, HoMM 5 и Braveland.

Команда
В Beasts Battle мы делали игру вдвоем. Но перед началом разработки новой игры наши пути разошлись. У меня в планах было нанять двоих художников: первый бы отвечал за юнитов и анимацию, а другой бы рисовал всё остальное (арены, локации, интерфейс, комикс, иконки и т.д.). Поначалу так и было, я нанял художников и всё шло нормально. Особенно хорошо работалось с тем, кто рисовал юнитов, мы с ним ранее делали вместе несколько игр на Flash. Но потом я познал всю боль работы с фрилансерами и вообще узнал, что художники могут не уметь рисовать всё. Фрилансеры могут пропасть, могут взять другие заказы, забить на тебя, несмотря на договоренности по деньгам и срокам. Из-за таких вещей всё затягивается.

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

Основная команда: 6 художников, 2 сценариста, 1 композитор, 1 смм и я. На мне лежало всё остальное: программирование, организация процессов, маркетинг, финансирование, конференции и прочее.

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

image

Сроки/бюджет


А что там насчет того, чтобы сделать игру как запланировал? Скажу так: люди нифига не умеют ничего планировать, особенно сроки и бюджеты, если это долгосрочный процесс, а не пойти покушать или сходить поспать. Вышло так, что я жил на отложенные мной деньги и никакого заработка у меня не было, меня никто не содержал, жил я в чужом городе, снимая квартиру. Помимо того, что я сам кушал, я еще оплачивал всю работу фрилансерам, не было таких, кто работал за процент. Работал я каждый день без выходных на протяжении 8 месяцев. И вот у меня остается $1000, я понимаю, что всё игра сделана примерно на 80% и мне не хватает денег её доделать. Я предпринимаю рискованный шаг, от которого уходил всё это время. Искать издателя (спонсора), который поможет профинансировать проект и выпустить его. Я очень не хотел этого, т.к. столько вложил денег и сил, и тут какой-то спонсор просто выложит игру под своим брендом и будет забирать 50% от дохода. Такие у меня были представления об издателях игр) Но я решаюсь и покупаю билет на ноябрьский DevGamm 2016 Minsk, плачу за самолет и бронирую отель.

image

DevGamm 2016 Minsk


Многие разработчики не понимают, зачем нужны эти конференции. Это трата денег и бла бла бла, в общем, все мы нищеброды недалекие (простите). Хочу сказать, что это очень ценное мероприятие и стоит своих денег. Жаль, что сейчас всё ушло в онлайн из-за пандемии. Я участвую в ShowCase и показываю свою игру. Мне дают обратную связь, я завожу полезные знакомства, очень полезные! Столько инсайтов от опытных разработчиков, такие мысли классные тебе говорят, делятся опытом, а ты впитываешь все эти знания и понимаешь какой еще глупенький и ограниченный, живешь в своем вакууме.

Там я познакомился с локализатором игр, и мне подарили $500 на то, чтобы я в их компании заказал локализацию. От их команды со мной работал очень крутой парень, мы до сих пор общаемся, и по итогу он стал вторым сценаристом игры Necromancer Returns и был задействован в третьей игре.

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

image

Денег нет, но вы


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

  • конец года, все готовятся к Новому Году и поиск новых сотрудников неактуален (не сезон для поиска)
  • разрабатывая игры на flash (as3) и html5 (js), я отстал от рынка и моя актуальность как специалиста низкая. В тренде Unity (С#) и UE4 (С++)

Стал ждать, когда НГ каникулы закончатся. Начал ходить по собеседованиям, но всё было что-то не то: то я не подхожу, то мне неинтересно. Чуть не устроился на удаленку за зарплату в 2 раза выше, чем мне было необходимо. А также чуть не переехал в Минск, где зарплата была еще выше. Минск мне понравился, и я был готов, но не сложилось.

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

image

Завершение разработки


Теперь у меня есть работа с зарплатой меньше, чем я хотел, но я хоть могу оплатить аренду и покушать. Также у меня были заказы на портирование чужих игр с flash на html5. А еще мне надо было заниматься своей игрой. В итоге на протяжении 3х месяцев я уделял время 3м разным проектам: основной работе, заказам и своей игре. Потом я перегорел и отказался от заказов. Каждый день я приходил после работы и до ночи занимался своим проектом. И таким образом моя разработка игры затянулась еще на год.

image

Маркетинг


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

image

Релиз


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

И вот, слежу я за метриками, продажами. Моя игра попадает на какие-то страницы как горячая новинка, это хорошо, но на главную страницу стима она не фичерится. И тут я вижу, что в этот же день выходит игра в том же жанре и полностью бесплатно!!! Free-to-play, сочная, 3D и так далее. Вот это был попадос!!! Эта игра выходит в топ, а моя уже никому не нужна, т.к. по графике ей уступает.

image

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

image

Итог


На момент релиза я вложил в игру $15,500. И в течении года ещё её обновлял на $1,500.

За день игра продалась в 144 копий ($879)
За месяц игра продалась в 679 копий ($4,538)
За год игра продалась в 1,908 копий ($13,237)

Из них 30% Steam забирает себе, потом еще возвраты, налоги и можно делить смело сумму пополам.

$13,237/2 $17,000 = -$10,380

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

В третьей части я расскажу о том, как я пытаюсь применить полученный опыт в разработке моего нового проекта Magicians Legacy.

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

Присоединяйтесь, пообщаемся!

Magicians Legacy в Steam
Подробнее..

Как я стал разработчиком игр для мобильных телефонов

23.11.2020 14:22:47 | Автор: admin
Небольшая история от том как я стал разработчиком игр. Постараюсь осветить проблемы, с которыми я столкнулся на своем пути, и поделиться некоторыми цифрами. Программистом работаю давно, с 2001 года, компьютерами занимаюсь с детства, но играми начал заниматься лишь в начале 2014 года. И катализатором этого стала статья на Хабре. Где-то в начале 2014го, читая статейки на Хабре, я нашел статью про то, как один молодой человек сделал простенькую игру для ВК. Простая игра про сражение на самолетиках в 2D. Про саму игру в статье было мало, но меня заинтересовало то, что ему предложили продать игру за 700 баксов. Он отказался и потом пожалел, так как игра принесла ему только убытки. И эта история успеха как-то меня вдохновила.

Я подумал, неужели я не смогу сделать подобную игру? Да я таких в месяц смогу написать десяток. Изучая вопрос разработки для веба, я решил выбрать флэш, кажется, в той статье была игра как раз на нем, хотя его закат был уже предрешен. Итак, я начал осваивать флэш, смотреть ролики на ютубе, пытаться повторять небольшие примеры. Больших раздумий о выборе того, что я хочу сделать не было, я хочу сделать свой Command&Conquers со своим сервером и юнитами :) Рисовать я не умею, поэтому я взял картинки от оригинальной игры, которые можно найти на просторах интернета. Я думал, что если что-то выйдет, я закажу арт для игры у того, кто это делать умеет. Когда что-то получалось, то я выкладывал видосы и скрины на своей странице в ВК. Уже не помню, сколько времени я этим занимался, но, как я планировал ранее, сделать море игр в ближайшие недели у меня не получилось. Основная работа так же съедала много времени, и я двигался очень медленно. Немного позже мне предложил помощь в проекте мой давний знакомый Дима, также большой фанат стратегических игр. Он придал проекту ускорение. Более того, как оказалось, он был знаком с художником, который уже участвовал в создании подобных проектов для PC. Поэтому у него уже были наработки, модели зданий и техники.

Мы пообщались и решили сделать игру вместе. У нас был один программист, это я, художник Сашка и сценарист Дима. Мы договорились, как будем делить шкуру неубитого медведя, придумали название проекта и взялись за работу. Через некоторое время мы отказались от ВК и начали делать игру под мобилки. Так как часть проекта уже разрабатывалась мной на флэше, то и было решено не уходить с него, используя Adobe AIR, можно было писать практически под любую платформу. ( Небольшое отступление, пишу про флэш, как будто оправдываюсь, если честно, не особо понимаю всех нападок на эту технологию, все как будто вместе обиделись на флэш и дружно ушли с него. Мне вообще нравится флэш, поэтому больше никаких оправданий.

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

Игра не отличалась какими то фишками, все игровые механики были заимствованы из различных стратегических игр конца 90х начала 2000х.

Так как игра сделана в изометрическом стиле, то все используемые объекты состояли из заранее отрендеренных картинок. Сейчас их более 8000. Сашка часто их перерисовывал и давал мне наборы, зачастую меняя имена картинок, и это приводило к тому, что и код нужно было править, и в определенный момент пришлось написать уже отдельную программу, которая бы систематизировала картинки и писала код, чтобы этими наборами можно было легко пользоваться. Это экономило много времени. Тумана войны изначально не было, потом я сделал некий костыль из черной картинки, которую дырявил овалами, а затем я подсмотрел алгоритм рисования тумана в движке stratagus. Сам ландшафт-карта в игре была нарисована одной картинкой. На карте заранее указывались места, где нельзя было перемещаться. Для этого я написал некий редактор, где можно было обозначить эти места некими прямоугольниками. А уже в игре загружал их в массив и постоянно перебирал, наткнулся ли юнит на данный прямоугольник или нет. Что удивительно, это было очень быстро, да и карты составлялись с наименьшим количеством данных мест. Алгоритмов поиска пути я не знал, и по какой то удивительной причине решил изобрести свой, несмотря на то, что в интернете можно было нагуглить уже готовые на AS3. Когда юнит натыкался на такой невидимый прямоугольник, обозначающий некое препятствие, например скалу, он начинал поворачиваться по часовой стрелке (на самом деле я уже не помню, в какую сторону он начинал поворачиваться, да это уже и не важно), проверял, может ли он туда идти и продолжал идти, либо снова поворачивал.

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

image

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

image
Вот так вот выглядел доход за первый месяц

Сервер игры


У меня был опыт написания сервера на C++, это совсем простое клиент-серверное приложение с использованием сокетов, в котором у меня было 2-3 клиента Но тут требовалось изобрести велосипед покруче. Я выбрал C# так как к тому времени уже долгое время программировал на нем, а также Microsoft SQL Server для хранения статистики. Нагуглил пример сервера на C#, начал разбираться с реализацией сокетов на AS3 (буду в дальнейшем писать про флэш так). Идея была проста, у меня юниты уже имели очередь команд, которые затем выполняли, нужно просто при добавлении команды юниту на одном устройстве, передавать ее на сервер, а сервер будет эту команду отправлять второму устройству, и обратно. А также некие сервисные функции, авторизации на сервере, создание комнаты, контроля версий игры, игра очень часто обновлялась, в нее добавлялись новые юниты, исправлялись ошибки, и это требовало, чтобы игроки играли одинаковыми версиями и т.п. Относительно быстро мне удалось написать рабочий сервер. И, о чудо! мы можем играть друг с другом! Создание комнат я прикрутил намного позже, а вначале игроки просто могли лишь выбрать карту для создания игры, а второй игрок должен был нажать присоединиться к серверу, и тогда они соединялись и играли на карте, которую выбрал создавший игру игрок. И этот сервер располагался снова у меня в квартире. Постепенно я довел мультиплеер до более- менее приличного вида. Сейчас на одной карте могут играть до 8 игроков, в различных вариантах, до 3-х команд. Также статистику игры и некоторые функции можно смотреть на сайте игры, который я написал на ASP.net. Все игры, которые происходят на сервере, сохраняются в xml файлах, которые можно скачать и посмотреть на клиенте с несколькими режимами скорости. Храню реплеи на диске, а не в базе и их накопилось уже достаточно большое кол-во. Не уверен, что это хорошая идея, но запихивать более 100 гиг реплеев в базу, тоже нет желания. За победу в игре начисляется рейтинг, с небольшими изменениями, это рейтинг рассчитанный по системе ЭЛО. Периодически я сталкивался с различными проблемами оптимизации, необходимости разбираться с приемами асинхронности, нехватки места на сервере и многим другим. И я в конце концов арендовал нормальный сервер. Сначала виртуальный, а потом уже настоящий.

Читеры


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

image

Боты


Игроков на сервере было немного. Некоторые стали боятся терять рейтинг и поэтому не играли. Нужно было добавить обезличенного игрока, которому не обидно проиграть и который мог бы развлекать игроков. Нужен бот. Для написания бота, нужно было решить ряд задач. Если очередь строительства зданий написать просто, то нахождение подходящего места на карте для строительства, это уже сложнее. В офлайн миссиях я, например, заранее прописывал для ИИ места, где он мог строить здания. Но если противник будет строить все по заданному плану и ставить здания в одних и тех же местах, будет не интересно, нужно что- то другое. И я придумал, как можно тут схалтурить. Мне не давала покоя мысль, что на сервере хранятся все игры и в них есть все места, где игроки уже строились, играя друг против друга. Нужно просто систематизировать эту информацию и использовать Так, стоп. А что если я вообще буду использовать полностью стратегию строительства и выпуск юнитов реального игрока, который когда-то уже играл на этой карте и был в том же месте, где сейчас находится бот? Заметит ли кто-то такую подмену? А для честности я еще и буду контролировать выпуск юнитов тем, сколько денег он заработал. Сама игра не эмулировалась на сервере, а работала полностью на клиенте, создавшем игру, и некоторые моменты было сложно понять. Например, сервер не мог знать точного положения подвижных юнитов на карте, информация о положении была лишь в момент, когда юнит заканчивал выполнение команды идти, и еще масса информации была неизвестна серверу. Но я счел их не столь существенными, нужно было иногда передавать на клиент юнитам команду, чтобы они атаковали ближайших противников. Мне показалось этого достаточным. Также я добавил несколько фишек боту, это возможность захватывать свои здания обратно, если их кто- то захватил инженером и не успел продать, необходимость восстанавливать свои здания, если их уничтожили, и многие другие функции, необходимые для выживания на поле боя. На удивление, бот прижился. Игроки играют с ним довольно охотно. И даже сильные игроки, немного зазевавшись, иногда могут проиграть своей же тактике, сыгранной месяц назад против того же бота или реального игрока, но все же надо признать, что до хорошего игрока он не дотягивает. Сейчас бот сыграл уже более 311 тысяч игр, и в 40% битв он выиграл.

Платная версия игры


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

image

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

image

В июне 2015-го года мы запустили платную версию нашей стратегии, и это было совсем не плохо. Игра долго держалась в топах платных стратегий в России и еще в некоторых странах. И принесла где- то 1000$ за первый месяц. Это был первый нормальный доход с игр, я поверил, что этим можно что-то заработать. За все время платная версия на андроиде принесла примерно 22K $ (уже с вычетом гугла).

image

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

Локализация


Про переводы стоит сказать отдельно. В игре сейчас уже 7 языков кроме русского. Большинство переводов мне сделали игроки из разных стран, либо бесплатно, либо за совсем незначительное вознаграждение. Был очень смешной момент. Как-то зайдя на сервак мультиплеера, я заметил резкий рост кол-ва игроков, буквально в 10-ки раз. С одной стороны, это меня обрадовало.

Поглядел статистику показа рекламы, там никаких изменений не заметил. Поглядел некоторые ip игроков, все они были из Китая. Погуглил и нашел на китайских просторах интернета свою игру, полностью локализованную. Кто -то ее распотрошил, перевел все вплоть до картинок и выложил. Также в игре была удалена реклама, разблокированы различные платные функции и т.п. Я смог извлечь из этого выгоду, взял оттуда китайский перевод и поставил себе в игру! Украл перевод из украденной у меня игры. Обновил версии и отключил возможность играть старыми. Удивительным образом игра была очень популярна в Таиланде, хотя не имела локализации из 1.3 М скачиваний 250 тыс скачиваний в Таиланде, который идет первым, за ним Россия с 160 тысячами. Этот график я покажу немного позже.

image

Озвучка игры


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

Музыка в игре была написана нашим художником Александром, а некоторые композиции написал нам Юрий (GraYaSDF).

Реклама


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

image

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

Другие платформы


Также я выпустил игру на iOS, и потом в стим. Это очень просто, используя технологию Adobe Air. Некоторое время, у меня была даже браузерная версия игры в ВК. Но там даже близко не было тех скачиваний что на андроиде. Поэтому основной платформой для меня является андроид.

Другие мои игры


Я написал про одну игру. На самом деле их уже три. Они по сути являются одной, так как сделаны на одном движке и являются закосами под уже варкрафт Warage и дюну Expanse.

image

Заключение


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

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru