Dots Go. Игра-мутант из Color Lines

image

Я давний фанат шариков (которые Color Lines) — люблю пособирать линии, поставить новый рекорд. И всегда сам хотел сделать какую-то подобную игру: чтобы было и казуально, и с возможностью для более вдумчивой игры. Но, не было идеи. Пока как-то раз под новый год я не выпил лишнего не решил использовать новогодние праздники с пользой, и попробовать таки слепить свой собственный паззл. И о том что получилось, я хочу рассказать в этой статье.

Какую игру делать?


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

Тогда я подумал —, а почему бы не попробывать улучшить сами Color Lines? Мне всегда не нравилось управление в 2 клика. На десктопе в этом проблемы нет, но при игре на телефоне тапать два раза по маленьким клеточкам это не user friendly (собенно если дело происходит в трясущемся транспорте). Можно ли сохранить (хотя бы частично) достоинства Color Lines, но при этом сделать управление в один тап?

Новые правила


Посмотрим на то, как устроено управление в Color Lines. При каждом ходе игрок задает следующие параметры:

  • шарик (первый клик)
  • конечное положение (второй клик)
  • маршрут шарика (задается неявно правилами)


image

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

  • шарик (первый клик)
  • конечное положение (задается неявно правилами)
  • маршрут шарика (задается неявно правилами)


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

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

Это почти в точности правила Зумы, только там игрок выбирает тапом конечное положение (направление выстрела шарика), а сам шарик (цвет) задается правилами игры (генерируется случайным образом):

image

И тут появилась мысль скрестить Color Lines с Зумой. Пусть будет доска и «змея» из шариков двигающихся вокруг нее. Игрок может тапнуть на любой шарик на змее и тот вылетит на доску и будет двигаться по прямой пока во что-нибудь не упрется. Как и в Зуме «змея» сдвигается заполняя образовавшийся промежуток. А задача игрока по-прежнему собирать цепочки одного цвета.

Было сделано несколько прототипов и поиграв с ними я пришел к такому варианту:

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

Размер доски стал поменьше, чтобы шарики были не слишком маленькими на мобилках, а длина цепочки шариков, которую нужно собрать, уменьшилась до 3 (куда нынче без матч-3?).

Разработка


Определившись с правилами оставалось сделать саму игру. С точки зрения кода она простая, а вот с точки зрения дизайна пришлось повозиться.

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

В итоге, я решил отказаться от классической доски в клетку и заменить ее на разлиновку для игры Го. По-моему этот вариант получился самым простым визуально, и кроме того, подчеркивающим суть игры — шарики двигающиеся по прямым линиям. «Змея» в этом случае обозначена просто более темным цветом разлиновки:

image

Также, новая линейка подсказала и название для игры — Dots Go. Тут и намек на популярные игры (Hitman Go, Dots) и на доску от игры Го. Да и звучит бодро и динамично.

Ну и конечно прикрутил к игре лидерборды и Facebook, чтобы можно было удобно меряться ЧСВ как со знакомыми людьми, так и со всем миром.

Результаты


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

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

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

© Habrahabr.ru