Змейка. Развитие жанра

    Brave Train

    Все началось с того, что я получил тестовое задание на вакансию Unity-разработчика: написать игру «Змейка». Чуть позже от вакансии по субъективным причинам пришлось отказаться, но к тому времени я уже начал делать проект и, чтобы не пропадать работе, решил его развить, закончить и выпустить. Так я обзавёлся своей «Змейкой», которую никогда до этого делать не собирался.

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

    Начал я, как обычно, с изучения существующих на рынке проектов. Много славных змеек я пересмотрел! В добавок, к моменту начала работы над игрой (весна 2016) вышло ещё два проекта в этом жанре, которые стали очень популярны – это “Snake Legends” и “Slither.io”. “Slither.io”, безусловно, восхищал простотой и динамикой, но мне как-то хотелось статического поля и сингл-плея, поэтому я больше обратил внимание на “Snake Legends” – в нём мне понравилось положение камеры, и я решил взять за основу своей игры такой вид игрового поля.

    Snake Legends

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

    1) Поле состоит из квадратных ячеек (не шестиугольных).
    2) Змейка движется по клеткам в четырех направлениях, а не свободно.
    3) Вид должен быть в 3D.
    4) Игровое поле должно быть относительно небольшим с крупными клетками и выразительной змейкой.
    5) На поле должны быть препятствия.

    Мне очень понравилась идея “Snake Legends” о том, что змейка – это хоровод людей, который увеличивается подбором новых персонажей (условие классической змейки) и уменьшается бонусами (обеспечивает «бесконечный» игровой процесс), и я начал думать в этом направлении.

    Идея № 1


    По детской площадке ходит ребёнок, который является «головой» змейки, и подбирает воздушные шарики, которые выстраиваются за ним в цепочку. Сокращаются, естественно, лопнув.

    Идея № 1

    Плюсы: визуально – не змея, а незаезженный образ.
    Минусы: геймплей уж очень будет похож на “Snake Legends”.
    Вывод: надо думать дальше, развивать идею.

    Идея № 2


    По детской площадке ходит ребёнок и собирает игрушки. Чтобы их складывать в змейку, он предварительно собирает вагоны-платформы. Т.е., составление змейки происходит в два этапа: сначала нужно подобрать пустую платформу, которая «нарастит» змейку, а потом подобрать игрушку, которая займёт платформу. Этот процесс можно делать вразброс, например, сначала набрать 3-5 пустых платформ, а потом собирать только игрушки. Также существуют «высокие» вагоны (не платформы), которые наращивают змейку, но не дают посадочного места для игрушки, таким образом усложняя игру. На поле одновременно находится ограниченное количество вагонов и игрушек, например, 2 вагона и две игрушки.

    Идея № 2

    Плюсы: плюсов много.
    Во-первых, совсем уж оригинальный игровой процесс.
    Во-вторых, широкие возможности для визуального разнообразия: вагоны, игрушки, различные персонажи в качестве ребёнка – всё это должно хорошо смотреться.
    В-третьих, т.к. условия достаточно сложные, то появляется возможность выдавать задания. Например: «Собрать 7 игрушек за такое-то время» или «Собрать 5 зайчиков». А это разнообразие уровней.
    В-четвертых (как продолжение третьего), возможность построить как уровни на прохождение, так и бесконечный игровой режим «на выживание».

    Казалось бы, вот хорошая идея для игры, и я её, действительно, долго и детально прорабатывал. Но не доработал. В голове поселилась предательская мысль: «А не слишком ли это сложно для широкой аудитории игроков?». В итоге, сложился один жирный минус: «Слишком сложно», который заставил меня думать дальше уже в сторону упрощения правил.

    Идея № 3


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

    Идея № 3

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

    Минусы не были замечены. Мои размышления наконец-то привели меня к стройной концепции. Погуглив, я не нашел ничего подобного. Раз нет – надо делать!

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

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

    Опытным путем было установлено, что поле 8х8 клеток маловато и негде развернуться, а 20х20 клеток на мобильных устройствах выглядит сильно мелко. Итог – четыре локации средних размеров 10х10, 12х12, 14х14, 16х16. Почему именно чётные – не знаю. Так исторически сложилось.

    2) Локаций делаем ограниченное количество: несколько тематических эпизодов по 4 локации, дабы в процессе создания игры не погрязнуть в рисовании. Для релиза делаем один первый эпизод.

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

    Локации

    3) Как в классической игре «Три в ряд» будем начислять монеты за сокращённые одинаковые вагоны. Главной целью игры ставим накопление монет.

    Причём, у нашего паровозика возможны интересные комбинации, когда сомкнувшиеся после сокращения вагоны вновь образуют «выигрышную» комбинацию и вновь сокращаются. Возможно 4 подряд каскада сокращений – по количеству цветов вагонов. За каждый следующий каскад удваиваем количество призовых монет.

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

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

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

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

    Локомотивы

    7) Большое количество многоступенчатых заданий вида «Собрать 200 монет на тяжёлом уровне сложности». Три рейтинга игроков по уровням сложности.

    Все эти идеи после напряжённых и не очень девяти месяцев ночных трудов вылились в игру “Brave Train” – смесь жанров «Змейка» и «Три в ряд». Релиз на Android состоялся 22 декабря. Приглашаю всех в Play Market оценить результат.

    Brave Train

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

    P.S. Загадка на внимательность: угадайте, что послужило прототипом для антуража первого эпизода?

    P.P.S. Мне самому показалось мало «змейки + три в ряд», поэтому я уже готовлю обновление для “Brave Train”: «змейка + три в ряд + пазлы», в котором на поле, помимо вагонов и бонусов, можно будет подбирать части пазлов и потом складывать их.

    На этом всё. Надеюсь, было интересно.
    Всех с наступающим Новым Годом!
    Реализации ваших планов и моря новых идей!
    Метки:
    Поделиться публикацией
    Комментарии 77
    • +2
      Раздел разработка.
      А где кроме ваших идей и рекламы что-либо о самой разработке?
      Код где?
      • +9

        Я не автор, мне кажется разработка она не из одного только кода состоит.


        Автору спасибо. Андроида нет чтобы посмотреть, но идея и оформление красивые. Портируй на iOS!

        • +1
          Конечно вы правы. Не из одного кода. Путь программы ведь начинается с идеи.
          Так что данной статье еще расти…
          • 0

            Про идею тут как раз есть, но нет про реализацию. Но это же Unity. Даже на хабре полно статей по разработке на этой платформе.

          • 0
            Шикарные арты и наброски. :)
            Теперь сижу, за утренним кофе и рисую в векторе паравозики :)
            А можете, выложить наброски, или ссылку дать где можно посмотреть на них?
            Еще вопрос, какие вы Вы использовали (если использовали) какие-то библиотеки для создания игры?
            • 0
              Спасибо. Наброски и рендеры отдельных объектов обязательно опубликую, но уже после НГ. На все сразу времени не хватает. Приглашаю Вас присоединиться к группе ВК: https://vk.com/bravetraingame — тут буду публиковать ссылки на материалы.
              Из сторонних библиотек — только пак эффектов:
              https://www.assetstore.unity3d.com/en/#!/content/10172
              Ну и программную специфику, вроде твинов и социалки. Остальное делал все сам.
              На некотором этапе экспериментировал с использованием красивого пака города в мультяшном стиле:
              https://www.assetstore.unity3d.com/en/#!/content/17254
              но потом передумал. Решил, что пусть будет хоть и попроще, но эксклюзив.
          • +9
            Разве разработка заключается только в коде? В посте достаточно интересно описан процесс разработки от идеи до готового продукта с пробами и результатом. Если все будут писать только код, то кто будет придумывать концепции и методом проб и ошибок их воплощать? ИМХО разработка это не только строчки в IDE, но и скетчи на бумаге, черновые записи в блокноте и пустые банки газировки в мусорном ведре.
            • +2
              Обязательно напишу еще. Даже уже придумал, что: в игре получились неплохими алгоритм подтягивания оставшихся вагонов после сокращения одних из середины змейки — пришел к нему путем проб и ошибок, и прием повышения «отзывчивости» паровоза на управление.
              Однако, именно эта статья — о рождении и развитии самой идеи.
            • +2
              Ну, нет тут хаба о Дизайне Игр (надо бы создать) => потому хаб Разработка Игр наиболее подходящий.
            • 0
              Идея хорошая и воплощение тоже! :)
              Вот еще идея по модернизации, помните мультфильм «Паровозик из Ромашково» где
              он постоянно опаздывает НО помогает другим, вот можно добавить такие моменты.
              • 0
                В общем мультфильм помню, в деталях, к сожалению забыл. Буду пересматривать и много думать!
              • +1
                Мне уровни на картинках очень напомнили эпизоды мультфильма про Чебурашку, где они строили площадку для детей.
              • 0
                Классно сработано, не выглядит поделкой — ПРОДУКТ!!!
                • 0
                  Только не понятно, какое там управление. А это интереснее всего, эх :(
                  • 0
                    Из меню паузы во время игры можно поменять способ управления. В окне помощи (кнопочка с вопросиком) можно почитать описание управления.
                    Но вижу, вижу, что недоработал и управление, и обучение ему. Уже лечу с обновлением.
                    • +1
                      По-моему всё понятно. Паровозик едет сам. Если надо повернуть — просто тычете пальцем в экран — с той стороны от паровозика, в которую хотите повернуть.
                      • 0
                        Да. И перед релизом я ошибочно посчитал, что это очевидно.
                        Но по отзывам оказалось, что для очень большого количества игроков было бы удобнее следить за направлением движения змейки и управлять ей относительно направления движения: кнопками влево и вправо. А такого способа управления я не предусмотрел. Дорабатываю.
                        • +1
                          Ну вообще-то удобство управления — дело привычки. Скорее всего жалуются те, кто привык играть в другие игры подобным способом. А я на смартфоне практически не играю, поэтому меня текущее управление ничуть не напрягло.
                    • –1
                      слишком яркие деревья на первом скриншоте, они не должны так сильно бросаться в глаза. Сейчас явный перебор с количеством «цветастых штук» на экране.
                      • +1
                        Прочитал отзывы, в которых жалуются на неинтуитивное управление, хочу предложить еще один вариант.
                        Проводить пальцем по экрану параллельно новому направлению движения (естественно, с широкой допустимой погрешностью) в любом месте экрана.
                        • 0
                          Совершенно верно! Добавляю такие способы управления:
                          1) Нажатием на левую или правую стороны экрана змейка поворачивает относительно своего направления движения, соответственно, влево или вправо
                          2) Тоже самое, но две виртуальные кнопки под большой палец правой руки
                          3) Как Вы предлагаете — смена направления движения росчерком.
                          • 0
                            Можно просто дельту Х считать, например.
                            • 0
                              Чуть по-подробнее можно Вашу идею?
                              • 0
                                Я имел ввиду — рассматривать любой жест как свайп (как написали ниже). Т.е. в не зависимости от формы жеста, учитывать лишь направление: слева-направо или справа-налево.
                                • 0
                                  Я понял. Уже 8й способ управления получается.
                            • +1
                              Я бы «стряхивал» паровоз в нужном направлении наклоном устройства, пользуясь гироскопом. Если был бы такой тип управления.
                              • 0
                                Я бы сделал смену направления по свайпу — влево/вправо — поворачивает паравозик относительно себя.
                                Но по тапу в левую/правую сторону экрана тоже отлично.

                                А много вариантов управления наверное не есть хорошо, не нужно предоставлять игроку слишком много выбора в настройках. Он теряется.
                                • 0
                                  Эх, какой-то способ не додашь — минусят, слишком много дашь — минусят. Сейчас остановился на том, что будет 7 способов управления и детальная, наглядная демка каждого способа. А дальше будем посмотреть — может что-то и уберу.
                                  • +1
                                    Очевидно то, что способ управления в такой игре должен быть не только понятным, но и быстрым.
                                    Лишние можно будет отбросить после испытаний, скорее всего останутся два-три.
                                    • 0
                                      Добавьте все варианты и разрешите игроку в настройках между ними переключаться (если невозможно одновременно все варианты заставить работать). Затем собираете статистику по тому, что игроки используют и в новых релизах оставляете только удобные варианты.
                                      • 0
                                        Спасибо за совет. Добавлю статистику по управлению.
                              • +1
                                Какая неожиданная забавная идея.
                                Описание, может оказаться даже интереснее самой игрушки. ;))
                                • +1
                                  Интересная статья и хорошая идея, спасибо. Очень мне графика понравилась, сами рисовали? Может подскажете, в чем обычно рисуют графику такого типа (и где этому научиться :))?
                                  • +2
                                    Спасибо. Рисовал сам.
                                    Во-первых, набирался идей и выбирал стиль на Pinterest. Большую роль в выборе стиля — low-poly — сыграл тот факт, что рисовать мне предстояло самому и я не хотел затягивать этот процесс. Поэтому остановился на более простом графическом стиле, таком, который мог осилить сам.
                                    Во-вторых, живости картинке придали запеченные тени — это делалось средствами Unity. Без таких натуралистичных теней картинка была бы очень бедной.
                                    Для создания моделей можно воспользоваться любым доступным 3д-редактором, например Blander. Делал развертки моделей, в фотошопе рисовал текстуры.
                                • 0

                                  В начале года тоже загорелся идей сделать уникальную змейку.
                                  И тоже были идеи смешивания с три в ряд.
                                  Но в итоге остановится на упражнениях на запоминание.
                                  http://ru.brainexer.com/convolution.html

                                  • +1
                                    Вы подтверждаете мою веру в единое информационное поле. Сам много раз сталкивался с тем, что стоит только что-то придумать, как видишь это у кого-то еще.
                                  • 0
                                    Многошаговое схлопывание было в Zuma. Что не делает его менее прикольным :)
                                    • 0
                                      Надо посмотреть.
                                      • +1
                                        В зуме игрок сам выбирает куда вклинить шар определенного цвета, в змейке же по канону новая часть всегда к хвосту/голове крепится. Не получится собирать длинные комбинации
                                        • 0
                                          По описанию,
                                          Собрали подряд три одинаковых вагона – сократили все вагоны такого вида из состава.
                                          Т. е.
                                          ggrrgrbgbb + g => gggrrgrbgbb => rrr bbb => аннигиляция.
                                          Должно получаться.
                                          • 0
                                            Да, можно досокращаться до пустого поезда
                                            • 0
                                              Я не это имел ввиду. В match3 у любой вариации можно делать цепочки, когда на 1 ходу будут исчезать сразу несколько фигур. В Зуме игрок сам выбирает куда вклинить шар, практически без помех (разные туннели и когда змея прячется сама за себя), тут же в паравозиках новый вагон всегда цепляется к хвосту и игрока по сути останавливает рандом. Маленько не то, что предлагает зума.

                                              А в Вашем примере, ошибка
                                              ggrrgrbgbb + g => gggrrgrbgbb => rrr bbb => аннигиляция.

                                              Правильно будет
                                              ggrrgrbgbb + g => gggrrgrbgbb => rrgrbgbb
                                              • 0
                                                Согласно описанию именно этой игры, собрать надо три подряд, но исчезнут в результате вагоны того же цвета по всему составу, что таки может породить цепную реакцию. В чём-то стеснённей, чем Zuma, в чём-то свободней.
                                        • +1
                                          А идею с игрушками не планируете довести до игры? Думаю, что тоже будет играбельно! Имеющийся движок для паровозика не позволит сделать это с меньшими затратами?
                                          • 0
                                            Писал статью и думал, а ведь хорошая же идея! Все может быть, все может быть…
                                            Вот, хабравчане помогут отточить идею, тогда возьмусь.
                                            Или, может, кому-то еще эта идея придется по душе — буду только рад.
                                          • +2
                                            Интересная идея! Действительно вдохнул новую жизнь в старую игру =)
                                            • 0
                                              Делай и 3Д змейку — с самолетом.
                                              • 0
                                                … с перемещением в трех измерениях и на огромном пространстве. В итоге, к «змейке + три в ряд» добавится механика попадания по части змейки, висящей в воздухе. Здорово!
                                                • +1
                                                  Это уже War Thunder какой-то )
                                                  • +1
                                                    Хотел доредактировать предыдущий, но не успел:

                                                    Идея 3D-зации змейки: самолёт летает внутри кубического мира, заполненного препятствиями, но ограничен движением по плоскости секущей, параллельной стороне куба — одна из координат XYZ (любая) фиксируется, и на какое-то время это обычная 2D-змейка; но при особом взаимодействии (подбор бонусов, касание объекта, использование заряжаемой способности) плоскость сечения меняется на перпендикулярную, и самолёт (или космолёт) движется уже по ней. Особенность такой схемы = один «уровень» включает несколько плоских карт, между которыми время от времени происходит переключение, что требует определённой перестройки от игрока.
                                              • 0
                                                Весьма интересная игра у вас получилась. Тоже получил этим летом в качестве ТЗ сделать 3д змейку, и решил сделать нечто оригинальное, решил в качестве головы и туловища змейки сделать заблудившихся в лесу дровосеков, что в итоге переросло в игру:
                                                https://itunes.apple.com/us/app/lost-in-the-woods-3d/id1173426931
                                                Очень интересно, как у вас организовано движение хвоста за головой и передвижение змейки по клеткам. Если бы вы могли поделиться своим кодом или алгоритмами, было бы здорово!
                                                • 0
                                                  Как раз про алгоритм движения хочу написать еще одну статью. Если вкратце, то физика выключена, включается только в момент аварии для красивого разлета вагонов, все вагоны едут по пути, заданному координатами точек поворотов, в момент поступления команды на поворот путь преломляется в текущей точке и достраивается новый сегмент. Кодом вечером из дому поделюсь.
                                                  • 0
                                                    Ну, судя по тому, что вы описали, поворот у меня работает примерно так же. А вот как вы сделали так, что хвост повторяет траекторию движения головы, мне очень интересно) У меня получилось только сделать так, чтобы предыдущий элемент змейки смотрел на впередистоящего, и двигался за ним на заданном расстоянии.
                                                    • 0
                                                      У меня путь — это ломаная на всю траекторию движения поезда. С поворотом добавляется новый сегмент, а если все вагоны покинули первый сегмент, то он из пути удаляется. Т.е., вагоны не ориентируются по предыдущему (так у меня был сделан первый вариант алгоритма, в моем исполнении оказался ненадежным), а жестко следуют вдоль ломаной, следя за тем, чтобы не опередить на своем пути впереди идущие вагоны.
                                                • 0
                                                  Выглядит отлично. С управлением я так и не справился. Сам присматривался к low poly играм и моделям. Хотел сделать свой редактор для моделей. Понял, что это утопия. И хороший инструмент не сделаешь хорошо, поэтому взял blender. Я пошел по более трудному пути — свой движок 2D и 3D. В начале года планирую несколько статей по ходу разработки, пока застрял на триангуляции и упаковке текстур — об этом напишу вначале года.
                                                  • 0
                                                    Спасибо. Управление попробуйте поменять с меню паузы. Если не получится — дождитесь обновления, постараюсь всем угодить.
                                                  • +1
                                                    Вы большой молодец. Не самое увлекательное тестовое задание стало для вас толчком сделать что-то более интересное, и в итоге получилось очень здорово. И идеи, и реализация (в том числе с точки зрения классной графики) очень впечатляют.
                                                  • 0
                                                    Управление мне не понятно. Плохо предсказуемо. Контринтуитивно.

                                                    Отличная статья, отличное исследование, отличная (в остальном) игра!
                                                    • 0
                                                      Я выпустил обновление, в котором добавил еще 3 вида управления и наглядную демонстрацию принципов. Посмотрите. Интересно узнать, получилось ли у меня решить вопросы многих игроков по управлению.
                                                    • 0
                                                      А почему у вас нет управления как на этом скрине?

                                                      image

                                                      Первый тип похож, но он не наклонён.
                                                      Управление виртуальным стиком вызывает дикий диссонанс — ожидаешь работу диагоналей, а действие не отличается от перового типа.
                                                      Также подсказки, прерывающие процесс, очень навязчивые — из-за них терялся и врезался. Разве вы не читали, что нельзя резко прерывать процесс? Это дико раздражает.
                                                      • 0
                                                        Замечательные вопросы! Все по теме. На самом деле — это даже тема отдельной статьи. Хотелось бы обсудить хотя бы в рамках комментариев…

                                                        1) Я не стал копировать управление «Snake Legends», а делал своё. Совершенно верно, контрол на скрине является аналогом первого типа управления у меня. Но у меня они именно кнопки — аллегория на кнопки со стрелками клавиатуры или кнопки джойстика консоли. Если представить, что вы нажимаете на клавиши клавиатуры, то они же не поворачиваются в соответствии с изометрией поля, а Вы вполне нормально ассоциируете вертикальные кнопки клавиатуры с наклоненным видом поля. Есть масса старых классических игрушек, где поле в изометрии с угла, а управление — на клавишах со стрелками — и все нормально это воспринимают.
                                                        К тому же, мое поле может быть и в виде с угла, и в виде спереди, в отличие от «Snake Legends», чьё поле только с угла. Получается, мне надо разворачивать свой контрол в зависимости от положения камеры. А наглядно ли это — повернуть первый мой тип для вида с угла, если для вида спереди он вот такой — прямой?

                                                        2) Джойстик у меня — это практически копия первых моих кнопок, но с немного другой тактильной составляющей: на джойстике Вы зажимаете сердцевину и, не отпуская, перемещаете по сторонам. Замечания по поводу наклона джойстика такие же, как и для кнопок. К тому же скажу, что джойстик — больше эксперимент. Он с большой долей вероятности лишний.

                                                        3) По поводу подсказок… Возможно, я ошибаюсь, но, имхо, это единственный способ побудить современного игрока прочитать хотя бы предложение из пяти слов — это вывести его на весь экран прямо посреди игрового процесса. Но, я сделал это только для первого раза — потом играйте себе спокойно. Если не показать предложение с описанием, то посыпятся жалобы на непонятность данного бонуса. Предложите свой вариант, буду признателен, учту и с удовольствием внесу в игру.
                                                        • 0
                                                          А самую серьёзную проблему назвать забыл — отсутствие реакции на нажатие, пока змейка не доедет до конца клетки. В первое время не понимал, почему нажатие не срабатывает. Надо бы при нажатии сразу подсвечивать клетку куда повернёт змейка.

                                                          Насчёт подсказок вот недавно было: https://habrahabr.ru/company/miip/blog/317918/
                                                          • +1
                                                            Надо бы при нажатии сразу подсвечивать клетку куда повернёт змейка.

                                                            Мелькнула в голове мысль про ж/д поворотный механизм — ручной стрелочный перевод.
                                                            • 0
                                                              Спасибо, статью изучу. И подумаю, что можно добавить для большей отзывчивости змейки.
                                                              Один такой прием мной уже применен — это подсветка, которая непосредственно связывает паровозик с клетками поля. Без нее даже не совсем понятно на какой клетке сейчас змейка.
                                                            • 0
                                                              Думаю что разработчики (как минимум начинающие) будут Вам признательны, если Вы добавите механизм сбора статистики того, сколько пользователей выбрали тот или иной способ управления в игре, а потом поделитесь данными (новая статья!). По-моему мнению, широкий набор говорит о том, что разработчик просто не знает как лучше/правильнее сделать и всю отвественность скидывает на конечного пользователя… Будем учиться вместе ;)
                                                              • 0
                                                                Да, добавить статистику — в ближайших планах.
                                                                На счет «разработчик не знает»: да, именно так оно и выглядит. Однако изначально-то я поставил только 4 вида управления. Но посыпались замечания: почему нет вот этого, давай вот это. Я добавил. А вот возьму, и уберу по статистике наименее используемый джойстик. Опять начнутся записи: «игра — огонь, но убрали мой любимый джойстик, играть стало невозможно, поэтому удаляю и 2 звезды».
                                                          • 0
                                                            Реализация прикольная, плюс масса возможностей развививать, судя по комментариям.

                                                            Несколько замечаний:
                                                            1. Один и тот же бонус может выпадать подряд (цветной вагончик, ключ). Особенно «доставило» 3 ключа подряд, тем более, что дверь уже была открыта =)
                                                            2. Чуть доработать логику цветных бонусов вместо чистого рандом. Зачем выпадает синий паровозик, если у меня ни одного синего вагончика?
                                                            3. Не понятно, на какую локацию я перееду, нужно пояснение.
                                                            4. Удивился, что портал на другую локацию временный. Тогда нужна полоска, по которой понятно, сколько времени осталось на смену локации.
                                                            5. Идея с размерами и разными локациями отличная, но лучше развить её так: игрок сразу выбирает размер поля (например, мне по душе 14 и 16), а при смене локации площадка рисуется рэндомно с рэндомными препятствиями. Благодаря этому не будет «привыкания» к одному полю, больше разнообразия, и можно всегда играть на любимом размере.
                                                            • 0
                                                              Отличные замечания! Спасибо. Обязательно учту с обновлениями.
                                                              1. Надо править
                                                              2. На самом деле, цветной вагон выпадет только, если этот цвет у Вас есть в составе. Возможно, совпал момент выпадения синего бонуса и сокращения синих вагонов из состава. Тогда у Вас на поле оказывается синий бонус, а зачем он — не понятно.
                                                              3. Это да! Калитки имеют жесткую привязку к другим уровням, но это можно отследить только долго поиграв и внимательно понаблюдав за тем, куда Вы попадаете. Как развитие вашей идеи: поднимать над открывшейся калиткой табличку, куда она ведет, и чтобы каждый раз это был рэндом.
                                                              4. Да, надо.
                                                              5. Тут, к сожалению, не получится. Я думал над способом разнообразия рэндомом полей, но, в итоге, остановился на фиксированных полях, которые отличаются только от уровня к уровню, а внутри себя никак не кастомизируются. Виной всему — запекание теней. Я выбрал красивую картинку, а не возможность настраивать поля. Разнообразие будет достигнуто добавлением новых эпизодов и уровней.
                                                            • 0
                                                              А чем не угодили обычные стролочки в углу для управления? Благо место на экране есть. Да и простор для редакции 2.0 есть — там кнопки с бустами для паравозика прицепить
                                                              • 0
                                                                Всем угодили. И они есть в выборе управления. Только одни игроки хотят стрелочки по сторонам света, а другие — влево и вправо относительно движения.
                                                                • 0
                                                                  на скринах не видно контролов, посему рискну предположить что кнопки были стандартно аки джойстик вертикально-горизонтально? Если так попробуйте сделать с наклоном в 45 как игровое поле и по ходу движения змеи протестировать — думаю будет хорошо
                                                              • 0
                                                                В идеале хорошо бы сделать универсальный движок, на котором можно реализовать все варианты игры — и с шариками, и с паровозиком.

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