Что будет, если взять известную игру сапëр и изменить игровой процесс на обратный? Получится игра минëр
Так выглядит расклад в минëре на новичке.
Если задача в сапëре разминировать поле, то задаче в игре минëр наоборот — заминировать.
- Цель: расположить на игровом поле заданное количество мин
- Каждая цифра означает количество мин, которые нужно расположить в квадрате 3х3 с центром в этой клетке
- ПКМ – поместить мину в клетку
- ЛКМ – пометить клетку, как пустую
- Средняя кнопка мыши – пометить все смежные клетки как пустые, если нажатая клетка готова
- Играть тут schibir.github.io/mineslitter
Интерфейс такой же как в сапëре — в левом верхнем углу расположен счетчик мин, которые осталось расположить на поле, а в правом — затраченное время.
В отличие от сапёра здесь игроку доступна сразу вся информация об игровом поле. Каждая цифра означает количество мин, которые нужно расположить в квадрате 3х3 с центром в этой клетке. Вот так выглядит решенное поле:
При этом должно получиться корректное поле с точки зрения сапëра
Так как мину нужно располагать в клетке с цифрой, то для того чтобы она не загораживала эту цифру, клетка окрашивается в черный цвет — это означает, что в ней находится мина. Чтобы поместить мину в клетку используйте правую кнопку мыши. Также вы можете пометить некоторые клетки, как заведомо пустые с помощью левой кнопки мыши (при игре с телефона для этого есть специальная кнопка, которая меняет режим ввода). Если мин расположено больше, чем указано в клетке, то она становится красной, это значит, что вы где-то допустили ошибку. Все это проиллюстрировано на следующей картинке:
В сапëре бывают ситуации, когда невозможно определить расположение мин и приходится ходить наугад. В минëре же такой проблемы нет. На любом поле путем логических рассуждений можно правильно расставить все мины. Причем расклад сходится всегда. Но мне неизвестно всегда ли одному и тому же раскладу соответствует строго одно расположение мин. Это похоже на правду, но доказать я не могу.
В минëре есть три вида поля (как в сапëре): новичок, любитель и профессионал. Для каждого из них можно выбирать уровень сложности, который влияет на количество мин. Например, вот так выглядит новичок на харде:
Как вообще можно начать минировать такое поле? Один из трюков, который можно использовать – это H-паттерн. Найдите на поле две смежные клетки с цифрами отличающимися друг от друга на 3 (т.е. 1-4; 2-5; 3-6; 4-7; 5-8). Теперь можно заминировать три другие клетки со стороны большей цифры и пометить как пустые со стороны меньшей цифры:
Такой же паттерн работает и у бортов, только там пары клеток должны отличаться на 2:
Где поиграть?
Исходники: github.com/schibir/mineslitter
Играть тут: schibir.github.io/mineslitter
Можно играть с телефона или планшета, но там будут недоступны среднее и крупное поле по понятным причинам.
Мои рекорды на момент написание этого поста:
Всем спасибо за внимание. Не забывайте делиться своими рекордами.
Автор: Сергей Чибиряев