...

пятница, 18 апреля 2014 г.

Еще один 2048, теперь треугольный

image

В нашем клубе уже было описание игры 2048. Признаюсь, с первого раза игра мне не понравилась. Однако после прочтения следующей статьи, с подсказкой игровой стратегии, все изменилось. Я уверенно установил приложение 2048 на телефон и несколько раз сыграл. Родив через пару-тройку часов блок 8192, я затосковал и снес игру, решив сделать свой вариант. Вариант 1) нескучный и 2) для тупых.


Судя по отзывам приятелей и личному опыту, цель была достигнута. Приятелям мой вариант показался 1) нескучным, а для меня — 2) самый раз.



Уменьшил число клеток до 10




Действительно, при большом числе клеток игра становится однообразной. При 10 клетках — напротив, игровой раунд длится не более 5 минут, время сравнимое с обслуживанием одного человека из очереди в СберБанке. На 10 клетках мастер может создать блок 2048.

image


Изменил топологию на треугольную




Доска из прямоугольной превратилась в треугольную. Блоки стали шестигранниками. Это добавило комбинаций и возможностей выбраться из западни, которую иногда подбрасывает arc4random()%nxy;

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

По пути создания новой доски, я перебрал три или четире шестигранных варианта. Треугольник оказался самым хитовым. Ромб — длинноват, звездочка — островата, треугольник из 6-ти клеток — простоват.

Последний шанс




Если на доске несколько пустых клеток, я бросаю случайно блок с 2-кой.

Если на доске остается лишь одна пустая клетка, я бросаю в нее 2-ку, только если среди соседей нет 4-ки. Иначе — 4-ку. Запутано объяснил. Иными словами — если осталась лишь одна клетка,… Черт, не могу сформулировать. Ладно, при этом условии мастер действительно может создать блок 2048.

Небольшой бонус




Небольшой бонус я добавляю к игровым очкам в случае одновременного схлопывания нескольких блоков.

Если схлопывается 4 блока, вместо двух, я добавляю игроку 2 премиальных очка.

Если схлопывается 6 блоков с одного хода, я добавляю игроку 8 премиальных очков.

Если схлопывается 8 блоков одновременно (что теоретически возможно), я добавляю игроку 16! премиальных очков.

Алгоритм сборки




Игра напоминает мне сборку кубика Рубика- послойно. Как лук. Мы, великаны, любим лук.

Сначала собираешь верхний слой — держишь на нем самый толстый блок, затем второй и так далее.

Исходя из принципа слоев, я написал бота.

Вот небольшое, немножко незатейливое видео на 1 минуту как бот делает блок 2048.



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


Трудности одобрения в яблочном гастрономе




К сожалению, при проверке приложения в Apple appstore, я несколько пострадал от собственной хитрости. Изначально игру хотел назвать Trio 2048.

Этимология подобного названия очевидна.

Но, глядя на имя приложения, я вдруг решил выбросить букву T и уменьшить возраст. Женщинам и программистам это простительно.

Получилось Rio 2014 — что соответствуют грядущему футбольному событию. Чувствуете CEO-хитрость и коварный умысел?

Однако хитрость не удалась. Я попал (удивительно! ) на любителя футбола из review team, и он велел изменить название. Иначе говорит, заморожу счета в американском банке. Пришлось переименовать в Rio 2048 и ждать очередного вердикта.

image


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


Пост во время поста имеет дополнительную ценность, не находите? Ведь пока его создаешь, не грешишь…


.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий