Добрый день.
Сегодня я хочу поговорить об игре "Сапер". Это такая игра, в которой нужно очистить поле, не задев ячейки с минами. В этой статье я решил описать варианты этой легендарной игры, которые я бы хотел опробовать.
Статья построена по аналогии с материалами с требованиями и пожеланиями к программам, но здесь все описанные пункты были отнесены к категории "Было бы интересно".
Итак, начнем с самих мин.
Двойные мины. Это когда в одной ячейке находятся сразу две мины. Это, конечно, должно повлиять на соседние клетки с цифрами.
Тройные мины. Тут одна ячейка может содержать уже три мины.
Отрицательные мины. Это когда в ячейке содержится нечто уменьшающее числа в соседних клетках. В реальности такое я бы назвал "ямой" - вместо мины сапер проваливается в яму, из которой не может выбраться. В таком случае может появиться ноль - это когда в ближайших клетках и мина, и яма.
Разнообразие мин. Те, кто играет в Progressbar 95, поймут. Ячейка может показать несколько чисел - сколько поблизости красных мин и сколько, скажем, желтых.
Теперь к тому, как определяется соседство с минами.
Ортогональные. Ячейка считает только мины, располагающиеся на соседних ячейках по горизонтали или вертикали.
Ход конем. Ячейка делает относительно себя все возможные ходы шахматного коня - две клетки в одну сторону, одна в другую. После этого она показывает, сколько мин "обнаружено" таким способом.
Двойное соседство. Ячейки, соседствующие с миной по горизонтали или вертикали, удвоят число для этой мины. То есть если ячейка показывает единицу, то мина точно находится по диагонали.
Дальний обзор. Ячейка может указать на мину, даже если надо сделать два хода короля между ними. Но и тут возможны разные варианты: либо только по горизонтали или вертикали, либо как в обычном случае, но с добавлением ячеек прямо в двух шагах от мины (по одной линии), либо весь квадрат 5x5.
Добавят интереса и альтернативные сетки.
Цилиндр. Два конца поля соединены между собой. Ячейки в последнем столбце могут указывать на мины из первого столбца, и наоборот.
Тор. Тут уже все концы соединены между собой, образуя тор. Будет считаться, что у каждой клетки, включая "угловые", по 8 соседей.
Лента Мебиуса. Аналог цилиндра, где последний столбец соединен с перевернутым первым. Подсчет соседей становится более интересным.
Бутылка Клейна. Нечто среднее между тором и лентой Мебиуса. Одна из двух соединенных пар краев "склеена" так, что последний соединен с перевернутым первым.
Проективная плоскость. Тут уже обе пары краев "склеены" так, что последний соединен с перевернутым первым.
Нестандартные формы. Не только прямоугольные формы сгодятся для игры "Сапер". Можно выставить букву L, кольцо, пирамиду, увеличенное полимино или другую необычную форму из квадратных клеток.
Другие мозаики. Будет интересно поиграть в "Сапера" на шестиугольном, треугольном или другом необычном поле. Соседство клеток будет определяться совершенно по-другому.
3D и 4D-поля. Существуют программы, позволяющие играть в "Сапера" в высших измерениях. Причем трехмерный вариант может быть как в полном варианте (весь кубик - поле для игры), так и только "на поверхности", т.е. гранях различных трехмерных фигур.
Кстати, для трехмерной версии игры ячейка будет иметь сразу 26 соседей (при условии, что поле - полный куб), а в 4D-версии - целых 80!
И напоследок...
Режим приключения. Игровой персонаж находится непосредственно на игровом поле. Он может перемещаться по открытым клеткам, при условии, что они соседствуют по горизонтали и вертикали (и, возможно, по диагонали). Могут допускаться несколько жизней, монстры, которых можно безопасно устранить, и выход на следующий уровень.
А что вы думаете по этому поводу? Пишите в комментариях.