Всем привет! В былые годы я, как и многие, фанател от третьих Героев. Особенно мне нравились тамошние тактические бои, очень хотелось иметь что‑то похожее в настольной версии, чтобы кайфовать без компьютера, например, в дороге или на природе с друзьями. Но заниматься переносом правил в виде карточек, полей или фишек не было никакого желания (да и умения, что уж там).

Но однажды я посмотрел на шахматную доску и осознал, что она вместе со своими фигурами выглядит, в сущности, так же, как и юниты в играх серии HoMM. После недолгих размышлений были придуманы простенькие правила, превращающие пешек в аналог копейщиков/троглодитов, а короля — в аналог гидры/чудища. Мы отыграли с приятелем несколько партий, было весело, и захотелось поделиться правилами с Интернетом. Правда без демки это бы едва ли кого‑то заинтересовало, а программировать нормально я так и не научился, поэтому проект ушёл в долгий ящик.

Но в эпоху агентов ламеры вроде меня получили возможность реализовывать то, что раньше не умели. Первым, что я попробовал сделать, стали «Герои шахмат» — так я назвал игру, которую и представляю на ваш суд. Думаю, мне удалось главное — лёгкое вхождение для бывалых геймеров, быстрые динамичные бои и возможность поиграть офлайн с помощью обычной шахматной доски. Ниже — описание игры, правила и ссылочка, чтобы попробовать.

«Герои шахмат»: общие сведения

Итак, если вкратце: «Герои шахмат» (Heroes of Chess) — это вариант шахмат, вдохновлённый боевой системой классической стратегии Heroes of Might and Magic III. Игра проходит на традиционной шахматной доске со стандартной начальной расстановкой, белые ходят первыми. Фигуры перемещаются по доске точно так же, как в обычных шахматах, но механика хода и сражений полностью копирует таковую из легендарной тактики, разве что юниты не упакованы в стек, а двигаются по одиночке. Цель игры — не поставить шах или мат, а уничтожить вражеского короля (то есть, довести его очки здоровья до нуля) и все вражеские пешки, которые способны в него превратиться.

Я специально проектировал игру так, чтобы, если вы играли в обе игры, порог входа для вас был минимальным, а логика и интерфейс — интуитивно понятным и заимствованным из HoMM 3. В данный момент поиграть можно против тупенького бота вот здесь. Если приноровиться, бой происходит довольно быстро, 3–4 минуты.

Если же вам не знакома механика боя из Heroes of Might and Magic III, либо вам интересны детали игры, приведу её правила целиком, они не большие.

Правила игры

Думаю, начать стоит с ключевых отличий от обычных шахмат:

  • Король — полноценный участник боевых действий и самая мощная фигура на доске.

  • За один раунд ходят все фигуры, порядок хода определяется рангом фигуры, а также использованием тактического приёма «Ждать».

  • Когда одна фигура атакует другую, последняя теряет очки жизни, начальное значение которых определяется рангом фигуры — они отмечены в углу фигуры. Фигура уходит с доски лишь когда её очки жизни обращаются в ноль. Начальное здоровье зависит от ранга фигуры, а урон, который она наносит, — от разницы в рангах сражающихся.

  • Атакующие фигуры не занимают место уничтоженной фигуры, а обороняющиеся фигуры могут контратаковать, если пережили атаку.

Это, в общем и целом, основное, что надо знать человеку, далёкому от Heroes of Might and Magic III, чтобы начать понимать, что происходит на доске. Но, давайте углубимся в правила.

Базовые принципы и ранги фигур

Ранг в «Героях шахмат» слегка отличается от ранга в традиционных шахматах.

Фигура

Ранг (характеристики)

Пешка

1

Конь

2

Слон

3

Ладья

5

Ферзь

7

Король

9

Ранг определяет все характеристики фигуры:

  • Очерёдность хода. Самыми первыми ходят короли, самыми последними — пешки. Если у игроков несколько одинаковых фигур, например, пешки, они ходят по очереди: сначала белая пешка, потом чёрная, снова белая и так далее. Отсчёт идёт по вертикалям, начиная с левых фигур (относительно белых).

  • Начальное количество очков здоровья.

  • Урон, который наносит фигура. Он вычисляется как разница рангов атакующей и обороняющейся фигур, но никогда не опускается ниже единицы. При расчёте урона ранг обороняющейся фигуры может быть повышен на единицу при использовании команды «Защита».

Что можно сделать в свой ход?

Когда наступает очередь вашей фигуры (она подсвечивается мигающей рамкой), у вас есть три варианта действий:

  1. Действие (ход/атака). Фигура может атаковать другую фигуру, если, во-первых, та стоит на клетке, соседней с той, на которую может встать ваша фигура, а, во-вторых, она стоит под направлением, разрешённым д��я движения атакующей фигуры. Например, слон не может двигаться и атаковать по вертикали и горизонтали, а ладья — наоборот, не может по диагонали. Разрешённые для перемещения клетки подсвечены тёмно‑зелёным цветом, разрешённые для атаки фигуры — красным, а направление атаки в ряде случаем можно выбрать, наведя курсор на нужную сторону жертвы. При этом фигура перемещается на ту клетку, с которой производится атака, а не занимает клетку атакуемой фигуры в случае, если та выбывает с поля. Исключение составляет конь: он атакует дистанционно, но только в пределах клеток, разрешённых в стандартных шахматах — «буквой Г».

  2. Защита (кнопка со щитом). Если вы не хотите никуда идти (или не можете), фигура остаётся на месте и уходит в оборону. В расчёте урона к её рангу прибавляется 1 до конца текущего раунда.

  3. Ждать (кнопка с песочными часами). Фигура пропускает свою очередь сейчас, но обязательно сходит ближе к концу раунда. Эту опцию можно использовать только один раз за раунд. На первом ходу для удобства всем фигурам рангом 3 и выше выставляется ожидание, поскольку они закрыты пешками.

Каждый раунд делится на две очереди: обычную (в ней порядок определяется правилами, описанными выше) и для ждавших фигур (в ней порядок обращён). Таким образом, чем более ранговая фигура, тем более затяжной тактический манёвр она совершает в раунде.

Другие особенности

Ответный удар. Фигура, пережившая нападение, тут же бьёт в ответ. Обычные фигуры могут ответить на удар только один раз за раунд. Исключение — король: он отвечает всегда и на каждую атаку.

Смерть короля и спасительные пешки. Если вашего короля убили, происходит следующее:

  • Вы теряете управление армией. В компьютерной версии ваши оставшиеся фигуры переходят в режим «Берсерка» и ходят согласно алгоритму бота‑берсерка (об этом ниже).

  • Если ваша пешка‑берсерк сможет дойти до противоположного края доски, она автоматически превращается в нового короля, и вы возвращаете себе полное управление игрой. Король может быть только один, поэтому при живом короле дошедшим до края пешкам доступен обычный список фигур для превращения (конь, слон, ладья, ферзь).

  • Если же король мёртв, а пешек на доске не осталось, вам засчитывается окончательное поражение.

Алгоритм бота‑берсерка

Для того чтобы поиграть в одиночку, я разработал простенький алгоритм для компьютерного игрока. Его основные особенности:

  • Фигуры берсерка всегда атакуют, если есть такая возможность. При наличии нескольких целей к атаке выбираются самые сильные по главному рангу. Если таковых несколько, выбирается та, что имеет наименьшие координаты по вертикали и горизонтали.

  • Фигуры, не имеющие возможности атаковать, совершают случайные блуждания по доске в пределах перемещений, допустимых правилами. Исключение составляют пешки, которые всегда идут вперёд.

  • Бот‑берсерк не использует ожидание и защиту. Исключение составляет случай, когда фигура не может атаковать и не может ходить из‑за того, что заперта другими фигурами, а также самое начало игры, когда всем высокоранговым фигурам автоматически выставляется ожидание.

Игра без компьютера

Как я уже отмечал выше, играть в «Героев шахмат» можно с помощью обычной шахматной доски, правда, для фигур высоких рангов при этом нужно небольшие записи об очках здоровья. Также нужно будет самостоятельно вычислять урон от атак и контратак, но это легко делается в уме.

Команду «Ждать» можно обозначать небольшим смещением фигуры назад в клетке, а команду «Защита» — смещением фигуры вперёд.

Алгоритм берсерка сложно использовать в настольной версии напрямую из‑за наличия генератора случайных ходов, но перед началом игры игроки могут договориться о собственном, более простом алгоритме, например, чтобы неатакующие фигуры двигались только вперёд и налево, а потом назад и направо.

К сожалению, моих навыков (ну и кредитов, да) не хватило для реализации онлайн‑PvP. Но если вы всё же хотите поиграть с другом дистанционно, используйте старый добрый способ игры в обычные шахматы на расстоянии: каждый ставит свою доску и сообщает о действии/ходе другому.

Прочее

Автор игры — Марат Хамадеев. Игра сделана с помощью ИИ‑агента от Perplexity под управлением Claude Sonnet. В игре доступно два языка: русский и английский. Репозиторий проекта с правилами и ссылкой на игру здесь, тоже на двух языках, так что игру можно показать и иностранным друзьям.

О всех багах и пожеланиях можно писать в комментарии или мне в личные сообщения. Весёлой вам игры!