Морской бой
Играй против умного бота прямо в браузере. Расставь корабли — кликай по вражеской доске.
Правила «Морского боя»
Морской бой — классическая игра двух противников на двух полях 10×10. У каждого игрока флот из 10 кораблей:
- 🚢 1 четырёхпалубный (линкор)
- 🚢 2 трёхпалубных (крейсера)
- 🚢 3 двухпалубных (эсминца)
- 🚢 4 однопалубных (катера)
Итого 20 клеток заняты кораблями, 80 пустые. Корабли расставляются на своём поле так, чтобы они не касались друг друга — ни сторонами, ни углами.
Как ходить
Игроки по очереди называют клетки на доске противника. Если в этой клетке нет корабля — «мимо», ход переходит. Если есть — «ранил», и игрок ходит ещё раз. Если палуба была последней в корабле — «убил», бот объявляет это.
Цель — потопить все 10 кораблей противника раньше, чем он потопит твои.
Стратегия — как выиграть в морской бой
- Шахматный поиск. На пустой доске стреляй по клеткам через одну — это гарантированно «зацепит» любой корабль длиной от 2 палуб. Так в среднем ты найдёшь все 2-, 3- и 4-палубные за 50 ходов вместо 100.
- «Добивай» после попадания. После «ранил» проверь все 4 соседние клетки (вверх, вниз, влево, вправо). Корабль точно идёт в одну из сторон.
- Угадывай длинные корабли первыми. 4-палубник занимает много места — после поиска по шахматной сетке его легче находить, чем катера.
- Не размещай флот у краёв. Многие игроки начинают с углов — там корабли часто прячут. Бот это тоже знает.
- «Разбросанная» расстановка. Раскидай корабли по полю — не клади трёхпалубник рядом с четырёхпалубником. Это снижает шансы соперника поймать сразу несколько.
Как играет наш бот
Бот использует двухрежимный алгоритм:
- Режим «охота». Пока нет ни одного попадания — стреляет по «шахматной сетке». Это оптимальная стратегия по теории игр: гарантированно зацепит любой корабль не короче 2 палуб.
- Режим «добивание». Сразу после попадания пробует 4 соседние клетки. Если попадает второй раз — продолжает в том же направлении, пока не «убьёт» корабль.
- После убийства. Помечает все клетки вокруг убитого корабля как «гарантированно пустые» (там кораблей быть не может по правилам) — экономит ходы и возвращается к охоте.
Бот не «читает» твою расстановку — у него нет знания, где твои корабли. Только результат каждого выстрела. Игра честная.
История игры
«Морской бой» появился во время Первой мировой войны (1914-1918) — солдаты в окопах играли друг с другом на листочках бумаги. Современные правила сформировались к 1930-м годам, а в 1967 году компания Milton Bradley выпустила первую коробочную версию Battleship с пластиковыми досками и фишками.
В СССР игра вошла в каждый учебник по информатике 80-90-х как пример программирования. До сих пор «Морской бой» — одна из самых популярных игр для двоих.
Частые вопросы
Сколько кораблей в морском бое?
10 кораблей: один 4-палубный, два 3-палубных, три 2-палубных и четыре 1-палубных. Всего 20 клеток.
Можно ли ставить корабли по диагонали?
Нет, только по горизонтали или вертикали. Это правило с 1930-х.
Можно ли играть онлайн с другом?
Пока — только с ботом. Режим «играть с другом по коду» добавим в следующем обновлении.
Можно ли сохранить игру и продолжить позже?
Текущая игра сохраняется в браузере — если закрыть вкладку и открыть позже, продолжишь с того же момента.