Нотация записи ходов Парлетта
Такой нотацией можно описывать любые ходы сотен фигур, не использующих сложные механики. Подробный разбор возможностей в Простых вещах.
[условие][тип хода]lt;расстояниеgt;lt;направлениеgt;[свойства]
Оригинальные секции
Условие
- i - только первым ходом фигуры
- c - только для взятия
- o - не может использоваться для взятия
- L - нахождение на линии. L8Q - превращение в Ферзя на восьмой линии
Тип хода
- не указано - обычное взятие в конечной точке, движение останавливается всеми фигурами
- ~ - взятие в точке приземления “как Конь”
- ^ - взятие перепрыгиванием “как шашки”
Расстояние
- 1 - на одну клетку
- 2 - на две клетки в заданном направлении
- n - на любое количество клеток в заданном направлении
-
- диапазон расстояний
Направление
*
- по всем восьми направлениям+
- по прямымgt;
- по прямой вперёдlt;
- по прямой назадlt;gt;
- по прямой назад и вперёд=
- по прямой в бокаX
- по всем диагоналямXgt;
- по диагоналям вперёдXlt;
- по диагоналям назадn,m
- смещение по координатамrn
- в радиусе0
- сам
Движения “только направо” и “только налево” не заданы, можно использовать gt;gt;
и lt;lt;
при необходимости.
Группировка движений
- / - два движения по прямым “как Конь” (1/2)
- 1-9 - повторяющиеся движения в одном направлении, так можно задать “пунктирные” ходы или повторяющегося коня
- . - несколько ходов один за другим, считающихся одним ходом, прерывается при взятии
- ; - несколько ходов один за другим, считающихся одним ходом, не прерывается при взятии
- amp; - несколько ходов один за другим, с обязательством совершить следующий за amp;, ход недействителен, если нельзя выполнить всю цепочку
- , - несколько возможных ходов, можно выбрать один
- () - группировка движения для повтора
Практика
Попробуем собрать совсем сFерическую фигуру
o2-3+, c2-3X, io2-3gt;.2(~1/2)
- двигается на 2-3 клетки по прямым без взятия; или на 2-3 клетки по диагоналям только со взятием; первым ходом может переместиться на 2-3 свободные клетки вперёд, затем “скакать Конём” два раза в одном направлении.
Попроще
n(~2/2)
- ходит по диагонали перескакивая через одну клетку, со взятием при попадании на фигуру.
n(~2/2),cn+
- добавим к этой фигуре ход по прямым, если она может провести им взятие.
Ещё пример
3(~3/3)
- три прыжка на три клетки со взятием при приземлении, не обязательно в одну сторону.
Берсерк
c3(1*)
- может пройти три клетки в любые стороны, но может двигаться только если ход закончится взятием.
“Сломанные” фигуры
n(n+)
- может ходить по прямым пока не собьёт другую фигуру или не закончит ход.
n(1-8/1-8)
- может атаковать любую клетку поля. Но если сделать on(1-5/1-5),1+
, то уже получим разумную фигуру телепортирующуюся в радиусе пяти клеток и атакующую на одну клетку по прямым.
Расширение: Влияние
[влияние][условие][тип хода]lt;расстояниеgt;lt;направлениеgt;[свойства]
Влияние состоит из: * соседняя фигура * расстояние влияния соседа * направление влияния
Например R1=
означает “Если есть R (Ладья) на расстоянии одной клетки слева-справа”.
Предполагается, что влиять могут только свои. Если понадобится обозначить влияние вражеской фигуры, можно использовать… например (eS1)
- группировку в скобках, с обозначением что это влияние вражеской фигуры. Полная запись влияния своей фигуры может быть записана как (aS1)
.
В варианте Партизан нет Сержанта т.к. используется стандартный набор, но дополнительный ход даёт любая старшая фигура рядом. Потенциально все большие буквы влияния могут быть заняты обозначениями фигур.
Исключение влияния: !S1
- если рядом нет Сержанта.
Влияние Сержанта (S) на Пешку
o1gt;,c1Xgt;,oi2gt;,S1=c1gt;
- если слева-справа стоит Сержант, то Пешка получает взятие вперёд на одну клетку.
Свойства
Модификаторы, изменяющие процесс хода или возможности фигуры.
Рокировку оригинальной нотацией не запишешь. Можно попробовать выразить ход Короля как !hi^n=|R^n=
, подразумевая что должны взаимно “перепрыгнуться” с Ладьёй, это передаст общий смысл.
Рокировка делается “если Король ни разу не был под шахом”. Можно передать только через новый значок условия, допустим, !h. Но это скорее “не находится сейчас под шахом” (!cHeck). По мне так “ни разу не был” попросту лишнее в шахматах. Похоже на способ разрешить ситуацию в одной давней партии, о которой мы не знаем и не узнаем =)
Можно ввести “радиус взрыва”
cA1r
- уничтожает фигуры на одну клетку по всем направлениям при взятииc0amp;cA1r
- уничтожает себя и фигуры на одну клетку по всем направлениям при взятии
Ход Атомной бомбы можно записать так
!hсn+amp;c0amp;A1r,o1*
- если не под шахом, то может брать по прямой со взрывом себя и соседних клеток; перемещается на одну клетку во все стороны без взятия.
Получается, Атомная бомба снова верх инженерного гения ;-)
Расширение условий
Для варианта Партизан нужны дополнительные условия: ходы для белых и чёрных фигур отличаются, так же ходы отличаются в разных секторах.
- w - белая фигура
- b - чёрная фигура
- a - союзник
- e - враг
- A - в союзном (своём) секторе
- E - в секторе соперника
- W - на белой клетке
- B - на чёрной клетке
Дополнительный ход белой Пешки
NBRQK1=lt;wEc1gt;
- белая Пешка во вражеском секторе, если на одной клетке сбоку или сзади стоит любая старшая фигура, получает взятие на одну клетку вперёд.
Дополнительный ход чёрной Пешки
bAo1X
- чёрная пешка в своём секторе получает ход без взятия на одну клетку по диагоналям.
Чёрный Король
bA2X
- чёрный король в своём секторе получает ход на две клетки по диагоналям.