Есть ли техника игрового дизайна, которую я могу использовать, чтобы полностью удалить ситуации «Больше не осталось ходов». то есть. игра не должна содержать никаких невозможных сценариев.
Насколько я догадываюсь, все зависит от того, какую драгоценность и где вы даете пользователю после распада группы из 3 или 4 драгоценных камней.
Является ли это возможным ? An always infinitely solvable Bejewelled game?
game-design
level-design
Вишну
источник
источник
Ответы:
Конечно, можно создать бесконечную игру Bejeweled. PopCap сделали это сами с последней версией Bejeweled 3 (режим называется «Zen Mode»).
Прежде всего, вам нужно убедиться, что есть хотя бы один действительный ход при первом создании доски.
Всякий раз, когда игрок делает ход, вы должны рассчитать получившуюся доску и найти действительные ходы. Если ничего не найдено, вы должны контролировать драгоценные камни, которые будут появляться, чтобы восстановить действующую доску. Так как (по крайней мере) 3 драгоценных камня будут удалены одним ходом, и вам нужно будет создать 3 замещающих камня, вы можете убедиться, что эти 3 драгоценных камня сформируют еще один действительный ход с текущей доской. Бесконечный режим достигнут.
Конечно, не идеально, что новый ход появится с новыми драгоценными камнями, но это дешевый способ всегда обеспечить игровую доску. А поскольку создание действительных ходов на самом деле означает смену позиций драгоценных камней, не пройдет много времени, прежде чем станут возможными другие ходы.
Как уже упоминалось, бомбы и другие средства для очистки больших частей доски добавят больше разнообразия в игровой процесс, но они не нужны для обеспечения бесконечного режима.
источник
Да. Это на самом деле было бы возможно. Это не случай проблемы остановки, поскольку случай определен, а не произвольный. Чтобы ответить на это, необходимо ответить на две части; Во-первых, если решение существует, его можно найти, а во-вторых, всегда найдется правильное решение.
Первая часть состоит в том, как найти набор заменяющих плиток (драгоценных камней), которые могли бы создать игровую доску. Это может быть достигнуто с помощью методов грубой силы, просто проверяйте каждый возможный набор замен до тех пор, пока не встретите играбельный (также были бы более оптимальные методы не грубой силы).
Вторая часть состоит в том, чтобы определить, всегда ли будет набор замены, который произведет воспроизводимый набор. Любой набор плиток, удаленных за один ход, будет представлять собой некоторый надмножество наборов из трех плиток, поэтому, если в минимальном случае удаляется только три, если всегда можно найти играбельный набор, то для всех возможных моделей удаленных плиток будет набор для воспроизведения, так как он будет содержать все решения для каждого набора из трех удаленных плиток, который является подмножеством удаленных плиток.
В минимальном случае очистки только трех плиток в строке / столбце, Набор замены, содержащий две плитки типа A, разделенных плиткой типа B (где тип A - это тип плитки выше или ниже очищенного набора из трех в в случае столбца из трех, или влево или вправо в случае ряда из трех). Это приведет к движению, при котором при замене центра этих трех плиток на соответствующую плитку А будет получен набор из трех. Это показывает, что всегда можно найти набор плиток, которые приведут к правильному перемещению вдоль столбца / строки, где были очищены исходные плитки. Ограничение будущих перемещений в этот столбец или строку, будучи действительным решением для бесконечной играбельной игры, не будет очень увлекательным. Но используя все правила для игр с обычным украшением, легко показать, что всегда будет существовать решение, которое позволит также перемещаться за пределы этой строки / столбца. Предположим, что мы добавили три плитки типа A, где A - одна из плиток выше или ниже / слева или справа от удаленного набора из трех. Это создаст плитку в стиле «бомба», которая очистит область при удалении. Если мы затем добавим другой набор плиток, что приведет к совпадению с этой бомбой, область плиток будет очищена. Эта область будет содержать 3 подмножества плиток в других строках, что означает, что будущие перемещения не обязательно будут ограничены одной строкой / столбцом. Это создаст плитку в стиле «бомба», которая очистит область при удалении. Если мы затем добавим другой набор плиток, что приведет к совпадению с этой бомбой, область плиток будет очищена. Эта область будет содержать 3 подмножества плиток в других строках, что означает, что будущие перемещения не обязательно будут ограничены одной строкой / столбцом. Это создаст плитку в стиле «бомба», которая очистит область при удалении. Если мы затем добавим другой набор плиток, что приведет к совпадению с этой бомбой, область плиток будет очищена. Эта область будет содержать 3 подмножества плиток в других строках, что означает, что будущие перемещения не обязательно будут ограничены одной строкой / столбцом.
источник
Вы затронули проблему остановки в информатике.
Учитывая описание произвольной компьютерной программы, можем ли мы сделать вывод, остановится ли она в какой-то момент или запустится навсегда? Есть причина, по которой это называется «проблема».
Короткий ответ: нет, вы не можете гарантировать, что в игре Bejeweled никогда не будет нелегальных ходов. Потому что для гарантии потребуется бесконечное время вычислений.
источник