Морской бой
Тот самый, с двумя полями в клетку. Правила русские, флот из десяти кораблей, а вместо соседа по парте — алгоритм, который каждый ход считает, где ваши корабли поместились бы чаще всего. Никакой установки: игра открывается прямо здесь.
Ваше море
Море противника
Нажмите на клетку правого поля. Попали — стреляете ещё раз.
На поле стрелки выбирают клетку, Enter или пробел подтверждают действие. При расстановке R поворачивает корабль. До поля можно перейти клавишей Tab.
Как устроен противник
Он не подглядывает. Видит ровно то же, что и вы: собственные попадания и промахи на вашем поле. Разница только в том, что он каждый ход считает, а вы, скорее всего, полагаетесь на чутьё.
Алгоритм простой на словах и полезный на деле. Способ известен под названием probability density: берём каждый уцелевший корабль, перебираем все места, куда его ещё можно поставить с учётом известных промахов, и складываем, сколько раз каждая клетка оказалась накрыта. Бить надо в самую густую.
Отсюда же берётся его поведение после попадания. Варианты, объясняющие уже известные раны, считаются с большим весом, поэтому карта сама подсвечивает продолжение корабля, и отдельного режима «добивания» писать не пришлось.
Что можно проверить
| Свойство | Как устроено здесь |
|---|---|
| Информация для поиска | Известные попадания, промахи и длины уцелевших кораблей |
| Выбор клетки | Максимальный вес; при равенстве выбор случайный |
| Сравнение расстановок | Среднее число выстрелов на выбранной пользователем выборке |
Результат выборки не является математическим пределом. В анализе Nick Berry используется другой флот: пять кораблей на 17 клетках с допустимым касанием. Его численные результаты нельзя переносить на наши десять кораблей без касания.
Что можно настроить
- Новая партия. Флот расставляется случайно, и сразу можно стрелять.
- Расставить самому. Корабли ставите вы, начиная с четырёхпалубного.
- Повернуть задаёт направление следующего корабля. Клавиша R делает то же на своём поле во время расстановки.
Ставить корабли вплотную игра не даст: подсветка станет красной. Это не придирка, а правило: иначе обводка потопленного корабля теряет смысл.
Без мыши
Нажимайте Tab, чтобы перейти к полю. Стрелками выберите клетку, затем нажмите Enter или пробел. При расстановке это ставит корабль на своё поле, во время боя делает выстрел по полю противника.
После «Расставить самому» и «Повернуть» выбрано своё поле. После «Новая партия» или «Ещё партия» выбрано поле противника. При обычном открытии страницы перейти к полю можно клавишей Tab.
Чего в игре нет
Над игровым полем нет рекламы и покупок. Игровой скрипт сохраняет счёт побед и поражений в браузере; технические данные загрузки страницы описаны в политике конфиденциальности. Сетевого соперника нет: играть можно только против машины.
Разбор правил и приёмов лежит на странице про тактику. Проверить народные советы по расстановке можно в разборе расстановок: там пять стратегий играют против того же алгоритма.
Вопросы про игру
Нужно ли что-то скачивать или регистрироваться?
Нет. Игра целиком написана на JavaScript и рисуется на холсте прямо в браузере. Ни установки, ни аккаунта, ни почты.
По каким правилам идёт партия?
По русским: поле 10×10, флот из одного четырёхпалубного, двух трёхпалубных, трёх двухпалубных и четырёх однопалубных. Корабли не касаются друг друга даже углами. Попал — стреляешь ещё раз.
Почему вокруг убитого корабля сами появляются точки?
Это не подсказка, а следствие правил: вплотную к кораблю других кораблей быть не может, значит соседние клетки заведомо пусты. Отмечать их вручную — лишняя работа.
Насколько силён противник?
Каждый ход он пересчитывает карту плотности по известным попаданиям и промахам, затем выбирает клетку с наибольшим весом. Число выстрелов зависит от расстановки. Сравнить стратегии можно в разборе расстановок.
Можно ли расставить корабли самому?
Да, кнопка «Расставить самому». Нажмите на своё поле либо выберите клетку стрелками и подтвердите Enter или пробелом. Кнопка «Повернуть» или R на своём поле меняет направление. Поставить корабль вплотную к соседу нельзя.
Как играть с клавиатуры?
Перейдите на нужное поле клавишей Tab. Стрелки выбирают клетку, Enter или пробел подтверждают действие: на своём поле при расстановке ставят корабль, на поле противника стреляют. R поворачивает корабль при расстановке, когда выбрано своё поле.
Сохраняется ли счёт?
Сохраняется только число побед и поражений, если браузер разрешает хранение данных сайта. Сама партия не сохраняется: после перезагрузки начинается новая. Очистка данных сайта удаляет счёт.