Search
Write a publication
Pull to refresh

Comments 22

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

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

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

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

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

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

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

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

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

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

Articles