linlobariov @ 2021-02-26T23:08:00
Начал захлёбываться в информации об играх и подумал, что мне очень пригодится какая-то разработанная система их описания. На этот раз не столько классификация (и даже совсем не классификация), сколько нотация.
Валентин скинул мне по этому поводу мегаэпическую статью «В дебрях нотаций» https://habr.com/ru/post/309096/, но там ставится более сложная задача: описать ВСЕ ПОВЕДЕНИЕ ФИШКИ, да еще алгоритмом. Меня устроит что-нибудь попроще. Например, простой ход фишки по доске и ход со взятием вполне можно описывать отдельно.
Как может двигаться фишка?
- по ортогоналям (хнефатафл, минманг) (+)
- по диагоналям (шашки) (х)
- по всем 8 направлениям (шахматный король, ферзь) (*)
- по конкретному маршруту (ур, дальдоза, нарды). Маршрут или какая-то его стадия могут быть закольцованы ( [] )
- по конкретным линиям-связям (алькерк, фанорона) (/)
- вообще не двигаться (го, шква, реверси) ( () )
При этом могут быть ограничения на:
- движение назад и/или в стороны -Н, -С,
- перепрыгивание других фишек -П
Или наоборот, можно указывать без знака «-», если такое разрешено.
Сам ход может производиться:
- на число клеток (1…999)
- согласно броску дайсов (D или Д)
- на любое произвольное число клеток по линии хода (Л)
- на максимально возможное число клеток по линии хода (М)
- согласно особым свойствам фишки (О) – это, конечно, потребует отдельного комментария.
Тогда свойства хода-без-взятия могут быть описаны так:
Фишка в нардах, уре: Д [] П
Шахматный король: 1*
Шахматный конь: О* П (и дополнительно текст комментария про «ход буквой ге»)
Шахматная пешка: первый ход: 1+ -Н -С или 2+ -Н -С на выбор, остальные ходы 1+ -Н -С
Фишка в тафле: Л+ -П
Фишка в нейтрино: М* -П
Фишка в фанороне или алькерке: 1/
А вот прежде, чем описывать ход со взятием надо понять, какие есть варианты взятия.
- замещение (фишка-агрессор заканчивает ход на клетке фишки-жертвы и занимает ее место).
- зажим (две/четыре фишки-агрессора зажимают фишку-жертву «в клещи»).
- обратный зажим (фишка-агрессор входит между двух вражеских фишек, снимаются обе)
- прыжок (фишка-агрессор прыгает через стоящую рядом фишку-жертву на следующее за ней свободное поле)
- блок (фишка-агрессор своим ходом заканчивает окружение вражеской фишки так, что у той закрыты все возможные варианты движения.
- исключения. Фанорона, да. И не только. Правда, каждое исключение встречается, как правило, всего в одной или паре игр. Ну, тут придется описывать комментарием, че делать.
Еще надо указывать, есть ли одновременное взятие нескольких фишек (чаще для зажимного). Есть ли серийное взятие (как в шашках или той же фанороне). Есть ли взятие группы (для зажима и блока).
Это пока так, заметки. Думаю дальше.