Подарков мешок

             – Ящик! – рявкнул отец Кабани и надолго замолчал, делая странные движения щеками... 
             – Ящик… – повторил отец Кабани упавшим голосом. – Это мы говорим, будто мы выдумываем. На самом деле все давным-давно выдумано. Кто-то давным-давно все выдумал, сложил все в ящик, провертел в крышке дыру и ушел… Ушел спать... 
     
    А. и Б. Стругацкие "Трудно быть богом"
     
     
    На носу Новый год и время дарить подарки. За год было сделано немало. Мой проект растёт на глазах и, что самое главное, становится умнее. Как именно он это делает — отдельная история, которую я обязательно расскажу, как нибудь, в другой раз. Сейчас — время заглянуть в мешок и посмотреть, что приготовил для нас Dagaz.

    Начать свой обзор, я хочу с великолепной игры Тревора Трурана "Бац!", разработанной по мотивам одноимённого произведения всеми любимого Терри Пратчетта. С этой игры я начал (по серьёзному) осваивать Zillions of Games. Теперь в неё можно поиграть в вебе. Кстати, доску для игры рисовал мой сын (а я её только чуть-чуть подредактировал).


    Картинка кликабельна (как и все последующие в статье). Для меня «Бац!» хорош своей асимметричностью. Игра за троллей довольно тривиальна. Подходя вплотную, они убивают всех, кто находится поблизости. Дварфам, напротив, приходится потрудиться. Они более мобильны и их больше, но чтобы атаковать тролля (запрыгнуть на него), им приходится строить линию. Дварф, находящийся с краю, может «отпрыгнуть» на число шагов не превышающее размера собранной группы (тролли умеют «прыгать» аналогичным образом).

    В современном мире, настольные игры, как правило, симметричны, но в древности это было не так. "Лиса и гуси", "Асальто", "Французская военная игра" — все эти игры ассиметричны (и были невероятно популярны, в своё время). Также ассиметричны игры семейства "Тафл", сохранившиеся до наших дней благодаря трудам Карла Линнея, а также неуёмной любви финского народа к разнообразным развлечениям.


    Белым необходимо сопроводить своего короля от «трона», расположенного в центре доски, к любому из угловых полей. Их противники стараются помешать сделать это. В отличии от аналогичных игр на больших досках, все фигуры, а не только король, могут перемещаться всего на один шаг, в любом из ортогональных направлений. Во всех играх семейства действует древняя форма кооперативного захвата. Для того чтобы убрать фигуру с доски, её необходимо с двух сторон окружить своими фигурами (одним ходом можно захватить до трёх фигур).

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


    Ещё одна игра, на которую, скорее всего, оказал влияние «Тафл». Средневековые "Фермерские шахматы". Сходство с Шахматами, впрочем, довольно отдалённое. Я уже писал об этой игре раньше. Для победы, необходимо провести двух своих королей в центр доски — «святое место». Вообще, надо сказать, что Шахматы далеко не сразу стали такими, какими мы привыкли их видеть.

    История с географией
    Всё началось, пожалуй, с Аштапады — индийской доски, размером 8x8 полей, использовавшейся для "боевых гонок". Игры подобного рода распространены в Индии и по сей день, но правила самой «Аштапады», к сожалению, утеряны. Ясно только, что разметка самой доски связана именно с этой игрой. Для определения дальности хода фигур в игре использовались кости D4 (с четырьмя гранями). Сами фигуры должны были, по спирали обойдя всю доску, дойти до центра доски.

    В какой-то момент, на этом основании, родилась сложная тактическая игра "Чатуранга", разделившая фигуры на четыре типа войск (название «Чатуранга» переводится как «четырёхчастная»). Где-то в сети, я видел (и с тех пор никак не могу найти) объяснение хода фигур, исходя из результата броска костей (напомню, что в игре использовались кости с четырьмя гранями).

    • "1" (в некоторых наборах "5") — Пешки и короли, перемещающиеся всего на один шаг. Пешки двигались «только вперёд» и (единственные из фигур) брали не так как ходили (на одно поле вперёд, по диагонали).
    • "2" — Слон (в некоторых источниках «лодка»). С этой фигурой больше всего путаницы. По всей видимости, первоначально он ходил на две клетки в ортогональном направлении. Потом направление сменилось на диагональное (встречается ещё один вариант перемещения, сохранившийся в тайском "Макруке" — на одну клетку в четырёх диагональных направлениях или на одну клетку вперёд, как ноги и хобот слона). Перемещаясь на две клетки, слон, как и привычный нам шахматный конь, мог «перепрыгивать» фигуры (в индийских боевых гонках, фигуры перепрыгивались, не блокируя движение).
    • "3" — Конь перемещался на три шага (два вперёд и один вбок). Столь причудливый способ перемещения связывается с тем, что в Аштападе, выполняя ход на три шага, фигура довольно часто двигалась именно таким образом (на поворотах). Разумеется, конь, как и слон, мог перепрыгивать другие фигуры.
    • "4" — Колесница (в некоторых источниках слон) — самая дальнобойная фигура. Перемещалась на любое количество клеток по прямой (в ортогональном направлении), но не могла «перепрыгивать» другие фигуры.


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

    Персидский "Шатрандж" внешне почти ничем не отличался от «Чатуранги». Изменились правила превращение пешек, но, самое главное, впервые появились концепции шаха и мата. В «Чатуранге» требовалось захватить или «оголить» раджу (оставить его без фигур). В «Шатрандже» шах стал неприкосновенной фигурой. Запрещалось оставлять его под угрозой, а для победы требовалось поставить его в безвыходной положение (мат или пат). Оголение короля считалось ничьёй. Поскольку, в связи с тотальной тихоходностью фигур, дебюты в Шатрандже были весьма неторопливы, большое распространение получили табии — начала игры с оговоренных игроками позиций:


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


    В этой игре, возникшей задолго до Фишера, только порядок расстановки пешек жёстко регламентирован. Остальные фигуры игрок волен расставлять (на своей стороне) так, как ему заблагорассудится (ну разве что первая линия всегда зарезервирована для ладей). Это правило придаёт игре невероятное тактическое разнообразие и делает практически бесполезным «зазубривание» разнообразных дебютов.


    В тесном родстве с Ситтуйином состоит тайский "Макрук". В силу того, что превращение пешек, в этой игре, происходит уже на шестой линии (превращаются они всё в того же слабого «ферзя»), а количество таких превращений не ограничено (в отличии, например, от Ситтуйина) игра в эндшпиле становится весьма своеобразной и на редкость интересной. Известный советский шахматист и экс-чемпион мира Владимир Крамник серьёзно увлекался этой игрой. Вот что он говорил о ней:

    Макрук носит более стратегический характер, чем шахматы,… Вы должны планировать комбинации в более общем контексте. Тайский макрук можно уподобить эндшпилю в международных шахматах.



    Скорее всего, именно Макрук послужил основой для китайской и японской ветвей семейства шахматных игр. Утверждать это со стопроцентной точностью, разумеется, невозможно — слишком сильно эти игры видоизменились, но, во всяком случае, расстановка пешек и в "Сянцы" и в "Сёги" более всего напоминает аналогичную именно в «Тайских шахматах».

    Следующим этапом на пути к Шахматам стало изобретение современного шахматного слона в "Курьерских шахматах" — игре XIII—XVIII веков. Появление дальнобойных фигур, перемещающихся по диагонали, привело к необходимости использования знаменитой «шахматной» разметки доски, в свою очередь сыгравшей огромную роли в развитии и распространении Шашек. Играть в «Курьерские шахматы», как правило, также начинали со своего рода табии:


    После изобретения дальнобойного шахматного ферзя, началась новейшая история Шахмат. Последние изменения в правилах были связаны с добавлением правил "Рокировки", прыжка пешек на две клетки вперёд, с начальной позиции и связанного с этим правила "взятия на проходе". Относительно последнего, впрочем, нет полной ясности. В малазийском "Майн Чаторе" существует похожее правило, но брать можно только пешку, движение которой вперёд заблокировано другой пешкой игрока (это до странности похоже на кооперативное взятие в играх «зажимного» типа, таких как «Тафл»).

    В наше время, вариации этой игры также поражают своим разнообразием. Не все они одинаково интересны, но иногда среди них попадаются настоящие жемчужины. Мне, например, очень понравились варианты игры с неравными армиями.


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


    В Platform Chess все привычные нам шахматные правила также соблюдаются (переучиваться не надо), но сама концепция игрового поля — трансформера буквально взрывает мозг. Для тех же, кто настольным играм предпочитает старые добрые головоломки я подготовил 60 уровней "Сокобана" (клавиатурные стрелки работают).


    Всех с наступающим Новым Годом!

    Комментарии 22

      0
      Для тех же, кто настольным играм предпочитает старые добрые головоломки я подготовил 60 уровней «Сокобана» (клавиатурные стрелки работают).
      Там классические 60 уровней или есть ещё и авторские?
      +1
      В Platform Chess все привычные нам шахматные правила также соблюдаются (переучиваться не надо), но сама концепция игрового поля — трансформера буквально взрывает мозг.
      на видео явно слабая партия… Но вообще круто. Отход от шаха не фигурой, а группой клеток — это прям шикарно. И чужую фигуру можно изолировать. Мне понравилось))
        0
        Да, играет очень слабо. Я сейчас работаю над этим и на тему AI будет, скорее всего, следующая статья. Уже на Хабре и с техническими подробностями. Кстати, AI в любой игре можно отключить, дописав в url "-board", например вот так. А в некоторых головоломках, наоборот, включить.
          +1
          Ещё пешка на первой горизонтали смущает немного, хотя принципиально ничего не меняется…
          AI в любой игре можно отключить, дописав в url "-board"
          Это хорошо. Ещё бы онлайн поиграть)))

          А ведь не сложно сделать и физическую доску!

          В общем отличная игра, как мне кажется. Спасибо!
          Сама идея близка с Пентаго.
            0
            Да, я думаю над использованием PeerJS для игры по сети, но будет это, скорее всего, только во второй версии Dagaz (то есть не скоро). Что касается Пентаго (знаю такую игру), то да, концепция очень похожа. Игр с досками-трансформерами не так много, но они есть. Например "Turn-the-table Checkers".
              0
              А зачем бомбы? Никак понять не могу…
                0
                Это уже моё нововведение (можно играть без них). Уничтожают всю платформу вместе с фигурами. Не взрываются если при этом не будет уничтожена хотя бы одна вражеская фигура (вражеская платформа тоже считается за фигуру).
          +1
          Нашёл несколько интересных моментов
          1. Пешка ступая на последнюю горизонталь сразу в ферзя превращается (хотелось бы выбор иметь)
          2. Если пешка попадает на последнюю горизонталь с помощью платформы — ничего не происходит, т.е. пешка просто стоит и не может ходить, пока платформа не вернётся (тут не уверен, можно ли сделать лучше или нет. но возможно ситуация, когда, например у белых одна пешк, но она не может ходить — вроде не ничья, но ничья :) )
          3. Шах фиксируется даже если между фигурами нет платформы и это, как мне кажется серьёзное упущение. Если короля не могут срубить следующим ходом, то и шаха быть не должно.
            0
            4. Пат не фиксируется. Засчиталось поражение компьютеру, когда я загнал его в пат (хотя пат и не тривиальная задача, с учётом возможности ходить секторами доски)
              +1
              Да, есть такое с патом. Задача не то чтобы не тривиальная. Просто в подавляющем большинстве игр отсутствие возможного хода считается поражением (разумеется, в Dagaz это можно переопределить). В Шахматах, в настоящий момент, проверка завершения игры (checkGoals) просто не выполняется (в Platform Chess она есть, но только потому, что можно случайно подорвать своего короля и это надо контролировать). С учётом инварианта контролирующего нахождение короля под шахом это почти работает.

              Разница между патом и матом в том, что при отсутствии разрешённых ходов, в последнем случае, король должен находится под угрозой. Проверка этого довольно затратна. Необходимо выполнять дополнительную генерацию списка возможных ходов, чтобы определить угрозы. Вопрос производительности стоит очень остро (это одна из причин по которой боты играют так слабо). Но тут есть два момента. Во первых, в Шахматах можно выполнить проверку угроз королю без полноценной генерации ходов (в Platform Chess этот номер уже не пройдёт из за сложных ходов платформ и бомб).

              Вторая возможность связана с теми усовершенствованиями AI, над которыми я работаю сейчас. В частности, я строю то что сам называю «покрытием». Это не очень затратная операция, поскольку она выполняется один раз за ход. Вот здесь можно посмотреть как это работает. Белые, на первый взгляд, играют вполне разумно. Всё это за счёт анализа «покрытия», поскольку просмотр ведётся всего на один ход вперёд. Я могу использовать «покрытие» не только для нужд ботов, но и для проверки целей игры. Думаю, это поможет отличить пат от мата без лишних накладных расходов.
              0
              1. Тут у меня проблема, в основном, чисто интерфейсная. Шахматы (и производные от них) — единственная известная в которой результат превращения не детерминирован (то есть, есть выбор во что превратиться). Во всех остальных играх я просто использую confirm для того чтобы задать вопрос о том, нужно ли вообще превращаться (там где превращение принудительное и этого не требуется). С этим тоже есть определённые сложности, поскольку на момент выполнения хода все возможные ходы уже давно сгенерированы (что делает MoveList не самым простым в реализации модулем). Например, у меня есть не закрытый баг, связанный с тем, что запрос превращения происходит при выполнении хода бота (ума не приложу, почему это происходит). В общем, для Шахмат я пока просто не придумал, как поудобнее спросить о том, в какую именно фигуру превращаться.
              2. Об этом просто не подумал. В принципе, превращение пешки при перемещении платформы реализовать не сложно (не помню, было ли такое в оригинальной игре, надо смотреть).
              3. Это тоже моя промашка. Та самая оптимизированная проверка угроз без честной генерации ходов. Совсем забыл, что необходимо проверять расположение платформ.
                +2
                Пункты 2 и 3 исправлены. Пешки превращаются в ферзей, если переехали на последнюю линию на платформе. Шахи сквозь не покрытые платформами поля не учитываются.
          0
          Raidar подкинул ссылку на статью которую я так долго искал.
          Спасибо ему!
            0
            GlukKazan, а нет ли более подробного описания правил Бац! (нашел правила на русском, смутила фраза «Все эти междусобойчики не обязательны (как в шашках)») и Tafl («рядом с троном» — по диагонали например считается?). И если это возможно, то на русском.
              0
              Про «Бац!» я писал статью довольно давно. Ну и разумеется, оригинал на английском. А где вы нашли фразу про междусобойчики? Я не помню такой и не могу её понять в отрыве от контекста.

              Tafl по диагонали не считается, это могу сказать совершенно точно.
              0
              по поводу коммерческой выгоды (я читаю все ваши посты сейчас, так что это относится к другому посту) — я не специалист в раскрутке сайтов, но по тем проектам, что у меня есть, вижу, что настольные игры в браузере людям интересны

              думаю, вам нужно завести отдельный домен — или, если позволяет гитхаб, поставить счетчик посещаемости и оценить траффик на игры. Если он есть, то можно думать, как поставить один баннер АдСенса. Для этого, правда, нужно, чтобы на странице с игрой был какой-то минимальный текст с описанием, иначе Гугль не разрешит (в его манере — даст разместить, а потом заблочит). Это не очень большой доход, но по крайней мере сайт с шахматами окупает у меня свой домен и хостинг и оставляет еще сверху пару чашек кофе раз в несколько месяцев. Я им не занимаюсь, он случайно вырос в позициях.

              Но у вас, с регулярными ссылками-отчетами с Хабра, может выстрелить и получше. Тексты с описаниями или хотя бы правилами игр на их страницах важны для поисковиков, без них они не видят. Я сам не люблю такую возню (тексты писать на сайтах), поэтому думаю, что вы тоже без особого энтузиазма воспримите этот совет. Но все же — если есть регулярный траффик от нескольких сотен посетителей в день, то может выстрелить и получиться.

              Сам я ищу философский камень геймдева, то есть игру, которая выстрелит настолько, что не потребует рутинной работы с текстами и прочей унылой сео-астрологией )
                0
                У меня есть Google Analytics-счётчики, но трафик довольно печальный. Сразу в момент и чуть позже публикации, разумеется, пик, потом где-то 3-5 сеансов в день. Раньше было того меньше. Как пройдёт волна с последней публикации, смогу дать картинку. Про домен, текстовые описания игр, мобильные версии и прочее, согласен целиком и полностью, но времени катастрофически нет. А за кое что надо еще и платить (а я пока не вкладываюсь). В целом, интерес к традиционным настолкам конечно есть, но с разнообразными тайм-киллерами его просто грех сравнивать. Всё таки вещь немного элитарная, а значит маломассовая.
                  0
                  ясно, спасибо
                  жаль, сейчас не 20 век или XIX, я читал книжку про «короля головоломок» Сэмюэла Лойда — на стыке XIX и XX века люди с ума сходили даже по самым простым игрушкам.

                  но я уверен, что потенциал настолок неисчерпан — в том смысле, что там очень много идей, надо которыми следует подумать. А что насчет того, что люди предпочитают таймкиллеры — возможно, это стоит рассматривать как инженерную задачу «как совместить таймкиллер и что-то необычное». В конце концов, выстрелила же 2048 — хотя, казалось бы, много ли людей готово играть со степенями двойки. Оказалось, что много ))
                    0
                    Как обещал, картинки: 01 02 03. До момента публикации, счётчики были временно отключены.

              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

              Самое читаемое