RallusGames

RallusGames

На Пикабу
1249 рейтинг 19 подписчиков 0 подписок 9 постов 4 в горячем
Награды:
5 лет на Пикабу
13

Как я выкладывал головоломку на Яндекс Игры

Прошло 2 недели, как я выложил головоломку-нонограм "Угадай, кто я?" на Яндекс Играх:

https://yandex.ru/games/app/343860?lang=ru

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

Регистрация в Яндекс Играх и Рекламной сети Яндекс

Регистрации прошла быстро и просто - в этом помог и интуитивно понятный интерфейс и руководства и видеоролики от самого Яндекса. Описывать своими словами не имеет смысла, всё необходимое находится по ссылке:

https://yandex.ru/dev/games/doc/ru/services/about-monetization

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

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

Обложка игры

Обложка игры

Модерация в Яндекс Играх

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

- модерация заняла менее суток. Хотя в интернете чаще натыкался на информацию про 3-5 дней. Возможно зависит от масштабов самой игры.

- был сформирован целый список с ошибками, хоть и не все имеющиеся. Хотя в интернете люди писали, что проверка идёт до первой ошибки.

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

Грабли и методы их обхода

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

Грабли 1: нет звука.

Решение: нужно загружать звук ресурсом отдельно.

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

Кстати на firefox на мобилке звук дико хрипит. Я думал проблема с моей игрой, но во-первых звук хрипит и у других игр на сервисе яндеска, во-вторых на других обозревателях всё норм. Я долго игрался с качеством и типом звука - результат одинаковый. Так что кто использует firefox на мобилке - сорян.

Грабли 2: не отображаются китайские иероглифы.

Решение: нужно загружать шрифты отдельно.

Ранее я тестил на пк и мобилке(APK) и иероглифы были. А вот при запуске из браузера шрифты пропадают. Предполагаю, что на пк и мобилке (APK) подгружался дефолтный шрифт, а в браузере этот функционал не работает. Решение проблемы - положить шрифт вместе с игрой. Но вот если последние шрифт латиницы и кириллицы объединены и весят 109КБ, то иероглифы весят 10.3Мб. У меня вся игра без иероглифов весит 9.8МБ. Так что от поддержки китайского языка пришлось отказаться.

Грабли 3: не сохраняется прогресс.

Решение: нужно хранить прогресс на сервере.

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

Грабли 4: не подключена монетизация.

Решение: нужно в html-файл index игры прописать коды RTB блоков.

Игру решил монетизировать с помощью полноэкранных рекламных блоков после завершения уровня и не чаще раз в 5 минут. Сделал всё по видеогайдам и следуя руководству. В черновике на Яндекс Игры Консоль рекламные блоки прекрасно выходили. В рекламной сети Яндекса значилось куча рекламных блоков, которые создались автоматически и, как я ошибочно думал, подхватываются они тоже автоматически. В профиле значилось "Монетизация подключена". Но модерация не проходила и 2 последних раза одной из причин было сообщение о неподключенной монетизации. В итоге я решил пойти методом тыка и создал полноэкранный блок и в конце создания вылезло сообщение с кодами которые нужно добавить в index.html игры. Почему об этом везде умалчивалось - я не знаю.

Грабли 5: должны отсутствовать ссылки на любые виды ресурсов и упоминание товарных знаков и фирменных наименований.

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

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

В результате работы над ошибками, оные были устранены и, спустя 3 заваленных модерации было получено заветное письмо с текстом: "Замечаний не имеем. Игра, которую вы загрузили в нашу консоль, была опубликована в нашем каталоге."

Вывод по выкладыванию игры

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

Показать полностью 1
14

Завершил работу над игрой-головоломкой. Релиз в Google Play и Яндекс Играх!

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

Сыграть можно как на андроиде в Google Play:

https://play.google.com/store/apps/details?id=com.RallusGame...

так и в Яндекс Играх прямо из браузера на ПК и андроид:

https://yandex.ru/games/app/343860?lang=ru

Разрабатывал её на протяжении полугода, в одиночку, в свободное от работы и отдыха время. Использовал Unity3D, Blender, GIMP, Inkscape, Audacity. Это пятый по счёту проект и имеющийся за плечами опыт реально помог. Сложности возникли лишь с WebGL и Яндекс Играми, т.к. ранее с ними дела не имел и наступил на ряд граблей, но это тема для отдельного поста, который я выложу позже.

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

Если игра пришлась по душе - буду рад лайкам посту и самому приложению - значит не зря стараюсь) А если есть вопросы по разработке или игровому процессу - пишите в комментах - с удовольствием отвечу)

Скриншоты игры:

Завершение обучения

Завершение обучения

Процесс решения первого слоя головоломки

Процесс решения первого слоя головоломки

Готовый результат

Готовый результат

Меню с разгаданными уровнями и следующим неразгаданным

Меню с разгаданными уровнями и следующим неразгаданным

Показать полностью 4
20

Небольшое дополнение Rail Lords + бонус

Приветствую!


Для игры Rail Lords вышло обновление 1.1.0, добавляющее один этап с восемью уровнями, на которых имеется новый игровой элемент - кузня, позволяющая ремонтировать поезда.

Так же ранее вышел патч 1.0.1, вводящий изменения, которые должны были сделать процесс игры приятнее, такие как: ускорение поездов на 33%, удаление "скучных" уровней, изменение расположения игровых объектов на некоторых уровнях, изменение текстуры поезда и менее весомые изменения.

https://play.google.com/store/apps/details?id=com.SneakyPlat...


И небольшой бонус - представляю таймкиллер Blob Plop на андроид.

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

Всего 2 режима: спринт - где надо собирать очки, и выживание - где надо накапливать время. Игра на память, реакцию и удачу.

Мой рекорд 25700 очков в спринте и 52 уровень в выживании.

https://play.google.com/store/apps/details?id=com.SneakyPlat...

На данный момент оба проекта завершены, и сейчас идёт работа над новым - рогаликом на ПК.


Приятной игры!

Показать полностью 2
24

Rail Lords и грабли

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


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


Один или в команде


Мысли поучаствовать в разработке игры крутились достаточно давно. Во время студенчества несколько раз принимал участие в качестве 3d-моделлера в различных игровых проектах с студентами-единомышленниками. К сожалению, чаще всего такие затеи заканчивались ничем - иногда проекты были слишком тяжеловесны, иногда у участников не хватало времени, терялся интерес и т.п. Из всего произошедшего вывел то, что надо трезво оценивать свои силы и начинать с малого.Решил, что буду заниматься над несложным проектом в одиночку: и со временем попроще, и можно будет посмотреть с разных углов на разработку.


Выбор ПО


Требования к ПО были простыми: бесплатное (в т.ч. для коммерческого использования), обеспечивать необходимыми функциями, иметь большую базу уроков. Поэтому взамен изучаемых ранее 3Ds Max и Photoshop пришли Blender и Gimp. Движок взял Unity. Для звука использовал Audacity.


В голове представляется лучше


Перед паровозиками хотел сделать другую игру - аркаду. Суть: управляем рыбкой, едим рыбок поменьше и растём, уворачиваемся от рыбок побольше. 1й уровень Spore на минималках, но со своими особенностями. Так как с графикой знаком ближе, начал с моделек, текстур, анимаций рыбок. И это была большая ошибка (благо моделек мало сделал) - после создания прототипа на движке, геймплей оказался чертовски уныл, хотя в голове он рисовался интересным и динамичным. Аркаду пришлось бросить, и теперь всегда начинаю с прототипа на движке с кубиками и шариками вместо моделек.


Выбор концепции и её изменение


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

Выбор пал на идею обратить широко распространённый жанр Tower Defence, и предложить игроку не защищать башни, а атаковать их (позже я узнал, что уже есть целый жанр и называется Anti Tower Defence). Т.к. движение юнитов шло по заданным маршрутам - юниты стали поездами, а маршруты железной дорогой. Чтобы атаковать башни, поезда обзавелись пушками, а сами башни, чтобы иметь ценность для игровых задач, обросли замками.Изначальная концепция Anti Tower Defence усложнилась и превратилась в стратегию, которая сводилась к сбору ресурсов в радиусе влияния замков игрока, на которые можно было создавать различные поезда и захватывать замки противника и напоминала упрощённую версию игры для пк из 2000-х "Дорога на Хон-Ка-Ду" (интересная игра кстати, с удовольствием сыграл бы в ремейк), однако прохождение уровня занимало много времени, а картинка сумбурной, т.к., если отображать всю карту, дисплей перегружался мелкими объектами, а при отображении части карты многое уходило из под взора игрока, к тому же в этом случае надо было писать ИИ противника и балансить карты, что в одиночку сделать не просто, к тому же хватает дополнительных задач. Стратегия превратилась в головоломку, где количество поездов и объектов было лимитировано, а ИИ отсутствовал.


Обычный стиль vs low-poly


Внешний вид игры по начальной задумке должен был выглядеть совершенно иначе. Планировалось делать полноценные 3d-модели с диффузными картами, картами нормалей, освещения и т.п. Но сделав вариант поезда (который надо было доделывать, т.к. текстура выглядела слишком реалистично и мрачновато) прикинул сколько времени ушло на одну модель, прикинул сколько моделей всего и решил изменить оформление в пользу low-poly.


Модель со всеми картами:

Без текстуры (1910 треугольников):

Упрощённая конечная Low poly версия:

Сам не любитель low-poly, но играл в игры с подобной визуализацией, которые показались достаточно симпатичными - к примеру "For The king" и "Long Dark". Преимущество такого подхода в колоссальной экономии времени на создание объекта - как на саму модель, так и на текстуру. Если на обычную модель может уйти вечер, то на простую low-poly модель тратится менее получаса.


Диффузная карта всех объектов в игре:

Важность цвета


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

Свет и постобработка


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


До пост-обработки:

После постобработки:

Графический интерфейс


Создание графической части интерфейса было новой задачей, с которой не сталкивался ранее. И так как не планировал развиваться в этом направлении решил использовать готовый вариант. Посчитав, что сэкономленное время стоит 5$, приобрёл подходящий по стилистике вариант в Unity Asset Store. Конечно пришлось дорабатывать, дорисовывая элементы, но это проще, чем начинать с нуля. Вообще существует множество ресурсов где можно отдельно приобретать ассеты - модели, текстуры, иконки и многое другое, вплоть до готовых прототипов игр, и они могут занимать пробелы в конкретных навыках.


Аудио


А вот звуковая часть была неожиданно серьёзной проблемой. Если остальные аспекты я мог худо-бедно сделать самостоятельно, то сгенерировать звуковые эффекты уже не мог. Обращаться с денежкой в студию/к фрилансерам для такого простого проекта было неразумно, покупать банки звуковые наборы тоже - отдельные нужные звуки находились в разных наборах. Пришлось довольствоваться бесплатными наборами вычленяя из них нужные эффекты. На помощь пришёл упомянутый Asset Store, где помимо платных ассетов, имеются и бесплатные, а так же сайт freesound. Причём пришлось потратить несколько вечеров на поиски подходящих звуков. Интересный факт: звук поезда в игре на самом деле звук щётки трущейся о кафельный пол, во всяком случае, такой был комментарий автора.


Время


Времени уходит очень много. Сколько ушло целиком на игру сказать не могу, т.к. много уходило на изучение некоторых вопросов. Всего потрачено около полугода. Как правило по будням сидел по 2-4 часа в свободное от работы время, иногда сидел на выходных. 2 месяца ушло на разработку работающей игровой базы объектов(код, модели, анимации, текстуры), 2 месяца ушло на создание уровней, 2 месяца на тестирование и доработку.


Разработка в одиночку: хорошо или плохо?


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

Что касается проектов посложнее, то наверно плохо - так как нельзя достойно выступать в разных ролях на всех этапах разработки, да и физически сил на всё не хватает, что сказывается на качестве игры (к примеру, звук и оптимизация в Rail Lords плохи, а так же хотелось бы увидеть больше уровней). Так же сложные проекты превращаются в долгострой, и не всегда хватить сил довести их до конца.


Итог:


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


А что дальше?


Обычно выходит так: если ты новичок и берёшь сложный проект  долгий по времени, ты в процессе прокачиваешь скилы и тебе приходится переделывать начало работы которое твоему текущим скилам уступает. И так может продолжаться бесконечно. В результате потрачено огромное количество времени, а на руках имеешь недоделанный долгострой. Причём для меня это касалось как 2d, так 3d, так и разработки игры.Или есть вариант, где ты берёшь проекты попроще и завершаешь их как есть. В таком случае, через некоторое время у тебя есть ряд реализованных идей, по которым видно, как твой навык растёт.

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

Показать полностью 8
275

Rail Lords

Приветствую!


В свободное время занимаюсь разработкой игр и рад представить недавно завершённый проект на андроид - головоломку Rail Lords.


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


Скриншоты из игры:

Видео прохождения одного из уровней:

Проект не является коммерческим, т.е. игра доступна бесплатно в Google Play Маркет и в ней отсутствует реклама или какой-либо другой способ монетизации.


Приятной игры!


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

Показать полностью 2 1
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества