Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Теория Match 3 (2 стр)

Теория Match 3 (2 стр)

Поделиться

Страницы: 1 2

ReviriПостоялецwww28 фев. 201615:38#15
Barabus
> Вы не понимаете о чем идет речь.

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

BarabusУдалёнwww28 фев. 201615:47#16
Reviri
> Какую он максимальную сложность может выдать? Один доступный ход в любой момент
> времени.
Да.

> Игрок все равно будет находить за несколько секунд и на этом вся сложность
> закончилась.
Ошибаетесь.

Меньше возможных решений -> дольше поиск решения. Это очевидно.

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

FantargПостоялецwww28 фев. 201615:51#17
Barabus
> дело за алгоритмом генерации поля
В массив заноси несколько вариантов стартовых, или строго по одному на каждый уровень.
Если безуровневая игрушка, тогда можно и прописать хоть сотню стартовых позиций, пусть вытаскивает случайную и считывает в поле.
Не понимаю, зачем генерировать реал-тайм при стартовых начальных позициях?

> К шаблонам это имеет отношение на стадии генерации первого поля.
Как пропишешь в массивы такое и будет поле. Шаблонов нет, ты же будешь свое поле "рисовать".
Шаблонные схемы? Так их и в статьях и пишут, какие они алгоритмы поиска реализовывали, свои.

Barabus
> В противном случае, отталкиваясь от рандома, придется очень долго пересоздавать
> поле, пока не выйдет то, что соответствует нужному количеству решений.
Видел и такие игрушки, где на глазах поле создается и само по себе играет, пока не обрушит все выпавшие комбинации матч'ей.
Сидишь и тупо ждешь, когда наконец игроку дадут ход:)

Я видимо не могу понять тебя до конца, ты реализовывал проверку поля для подсказки игроку, показать какую фишку можно сдвинуть?
Этот блок проверки "подсказка игроку" пишется на основе блока проверки на легальные сдвиги фишек.
В чем трудность додумать далее, как генерировать следующие цвета или наоборот усложнять игроку жизнь?

BarabusУдалёнwww28 фев. 201616:09#18
Fantarg
> Как пропишешь в массивы такое и будет поле.
Шаблон - это и есть
> свое поле
:)
Только его надо не
> "рисовать"
а генерировать, основываясь на требуемом числе решений для поля.

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

> Так их и в статьях и пишут, какие они алгоритмы поиска реализовывали, свои.
Не видел ни одного. Везде совет: "нагенерируйте рандомом и решайте до стабильного состояния, результат давайте игроку". Это очень тупенький подход.

> Видел и такие игрушки, где на глазах поле создается и само по себе играет, пока
> не обрушит все выпавшие комбинации матч'ей.
Я тестировал поля с разными размерностями и количеством цветов. Поле большой размерности с малым количеством цветов играет само в себя очень долго :)

При рандоме такие можно усложнять, превращая Match 3 в Match 4, Match 5, Match 6... Ну или увеличивая число цветов.

Правка: 28 фев. 2016 16:20

ReviriПостоялецwww28 фев. 201616:24#19
Barabus
> Меньше возможных решений -> дольше поиск решения. Это очевидно.

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

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

BarabusУдалёнwww28 фев. 201616:30#20
Reviri
> Поиск решения - это не только физическое нахождение возможного хода, но и
> продумывание последствий хода.
При чистом рандоме последствия непредсказуемы и бессмысленно их продумывать.

При спланированной генерации фишек после любого хода гарантируется наличие числа решений на поле, соответствующих уровню сложности.

Правка: 28 фев. 2016 16:34

ReviriПостоялецwww28 фев. 201616:43#21
Barabus
> При чистом рандоме последствия непредсказуемы и бессмысленно их продумывать.

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

> При спланированной генерации фишек после любого хода гарантируется наличие
> числа решений, соответствующих уровню сложности.

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

BarabusУдалёнwww28 фев. 201617:21#22
Reviri
> Вам не нужна помощь в создании мач3.
Хех. Конечно же не нужна.

Я ж в нулевом посте описал то, что я ищу.

KamilleПостоялецwww18 окт. 201712:18#23
Barabus
Секрет сложных матч-3 не в формулах "генерации" фишек или поля, а в грамотном левел-дизайне;)

Правка: 18 окт. 2017 12:18

leonardo98Постоялецwww18 окт. 201712:27#24
Kamille
> Barabus
> Секрет сложных матч-3 не в формулах "генерации" фишек или поля, а в грамотном
> левел-дизайне;)

Barabus - Удалён

тема мертва

gudleifrПостоялецwww18 окт. 201712:40#25
leonardo98
> тема мертва
А жаль.

Match 3 - это разновидность пасьянса. Т.е. есть какая-то случайная вводная, и для победы ее надо как-то упорядочить. В играх этой категории главное - баланс тактики и стратегии. Тактика: снять побольше за раз. Стратегия: сейчас сниму поменьше, зато потом... все поле разом. Распасы против набора комбинации. Следовательно, для интереса надо дать возможность снимать помногу - всякие бонусные камни. И дать возможность комбинации - долгоиграющие бонусы, замкИ-ловушки на поле. Для продвинутых - сложные цепочки последовательных снятий. (А еще можно вспомнить, что это старая добрая настольная игра - Мельница, в советское время выходил вариант - Засада).
 

Правка: 18 окт. 2017 12:43

Страницы: 1 2

/ Форум / Программирование игр / Игровая логика и ИИ

2001—2017 © GameDev.ru — Разработка игр