Dagaz: Episódios (Parte 2)

"Um elefante, uma carruagem, cinco soldados e três cavaleiros compõem PATTI, um PATTI triplo compõe SENAMUKHU ..."
e dez ANIKINI compõem AKSHAUKHINI, e esta é a maior unidade militar ...
Henry Lyon Oldie “Uma tempestade no começo”

No último artigo , falei sobre rascunhos e isso não é acidental. Os rascunhos, com seus movimentos compostos, serviam de base ao projeto , constituíam sua espinha dorsal. Até agora, as damas me dão surpresas. Por exemplo, outro dia, consertei um bug de longa data relacionado à opção de captura atrasada. E, em geral, como eu disse, os jogos de damas são muito subestimados. Mas o assunto não se limita apenas a damas ...

Xadrez


O xadrez não nos parece algum tipo de jogo incomum, mas é tudo porque estamos muito acostumados. Tome, por exemplo, um peão . Se você pensar bem, essa é uma figura muito incomum. O único jogador de xadrez que não bate como ele anda. E a regra de entrar no corredor é completamente difícil de considerar algo óbvio (sim, sim, eu sei, isso aconteceu historicamente). Mas não vamos falar sobre o banal. Um peão pode se transformar em outras peças! Além disso, ao contrário da maioria dos outros jogos tradicionais de xadrez , a escolha não se limita a um máximo de duas opções.


Sob esse aspecto, eu tive que aprender a desenhar diálogos gráficos, diretamente na tela. Até esse ponto, os peões se transformavam apenas em rainhas, o que era um pouco inconveniente nos jogos em que as rainhas estavam ausentes. Mas há também aqueles em que o intervalo disponível de formas depende do campo em que a transformação ocorre!


Outro ponto importante é a presença de figuras "reais" no jogo. Obviamente, isso não é uma invenção do xadrez. As figuras principais estão presentes em muitos jogos antigos. Dablot , Damone , Altai Shatra - em todos esses jogos, o "rei" pode ser preso, completando o jogo antes do previsto. Jogos especialmente picantes em que figuras comuns podem se transformar em reis. Em " Shashmati ", por exemplo, o jogador tem uma escolha: obter, como resultado da transformação, uma figura mais forte ou se proteger criando um rei "sobressalente".

Em todos esses jogos, o jogador perde por ter perdido todas as peças reais. Portanto, se "príncipe" e "rei" estão presentes no quadro, para vencer é necessário capturar os dois. Essa compreensão da "regra da morte súbita" é característica de jogos antigos, como Chaturanga , mas já no xadrez de Chatranja o pensamento vai além. Agora o rei não pode ser atacado - esta é uma figura inviolável, mas o jogador não tem o direito de deixar sua figura principal sob ataque! Se for impossível evitar a ameaça à figura real, o jogo termina. É assim que os conceitos de cheque e tapete aparecem.

A rigor, esse não é o caso em todos os jogos de xadrez.
O principal problema dos grandes jogos de xadrez é a presença de vários reis no jogo. Em casos especialmente negligenciados, o assunto é complicado pelas regras elaboradas para terminar o jogo. Por exemplo, em " Ko Shogi ", a vitória é obtida com as figuras "Geral" e "Tropa do meio" ou "Geral" e "Faixa". Ao mesmo tempo, a "tropa do meio" pode se transformar em um "governador" (e as regras para se tornar um "Ko Shogi" são um grande tópico separado), que, nesse caso, também precisa ser adotado. Tudo isso diabolicamente complica os conceitos de cheque e xeque-mate. É muito mais simples permitir que figuras reais sejam capturadas, lidando com a situação que surgiu ao longo do caminho. Outro fator que quebra a idéia é o jogo de mais de dois jogadores.


Aqui, o conceito de xá (como uma ameaça ao rei) se torna ainda mais abstrato. De fato, se o jogador do sul atacou o rei do jogador ocidental, o último não precisa fazer nada a respeito, porque antes que o sul faça o movimento certo novamente, o norte e o leste podem corrigir significativamente a situação. Além disso, Yonin Shogi tem uma regra de redefinição e reis, como outras figuras, podem ser levados para sua reserva. É claro que, para continuar o jogo, o jogador deve manter pelo menos um de seus reis no tabuleiro (e não na reserva) (mais pode haver, mas não faz sentido) e, para vencer, ele deve reunir sob seu comando os reis dos quatro exércitos.

Mas mesmo se considerarmos apenas aqueles jogos em que as regras de "check" e "checkmate" estão em vigor, tudo não é tão simples. Primeiro de tudo, uma verificação completa de todos os tipos de ameaças ao rei é bastante cara. Dado que os ataques, no caso geral, podem não ser necessariamente apenas xadrez (em " Bielorrusso Xadrez " , por exemplo, você pode atacar o rei com damas e a prioridade em levar damas permite que você faça xeque - mate com o rei ) seria tentador gerar todos os movimentos válidos seguido pela verificação de ameaças ao rei. Na prática, isso é muito lento. É necessário duplicar o esquema de movimentação de padrões para verificar possíveis ameaças sem gerar uma lista de movimentações.

Com a verificação do "companheiro", também, houve dificuldades. Durante muito tempo, considerei a condição de derrota a ausência de um possível movimento (levando em conta as proibições de trás do rei sob o cheque, é claro). Em geral, isso não é tão errado, dado que na maioria dos jogos (incluindo o xadrez) é. Mas não no xadrez ! Felizmente, na versão 1.2.7, descobri como corrigir a situação sem sacrificar o desempenho e agora o tap é detectado corretamente. A propósito, a mesma verificação de possíveis ameaças também é usada pelos bots (o que melhora muito a qualidade do jogo), mas, mesmo assim, a IA no Xadrez é nojenta (a biblioteca de estreia ajuda um pouco). Aqui só posso pecar comigo mesmo. Mesmo assim, a IA de xadrez de alta qualidade não é minha.


Tudo isso não nega o fato de que nos jogos de xadrez há algo para se confundir. Este jogo, é claro, é uma piada em grande parte (e não tenho confiança de que consegui corrigir todos os erros em sua implementação), mas é bem possível jogar seriamente no espírito do " Momentum Chess ". Com a interpretação do próprio tapete, também são possíveis opções. Por exemplo, um rei pode ser geral ou pode haver uma peça no jogo que sempre deve estar sob o cheque (há uma, no entanto, é impossível). Em geral, o xadrez é divertido.

O que mais pode ser aprendido com este jogo? No xadrez, há um movimento muito divertido, durante o qual duas peças se movem simultaneamente. Claro que estou falando de roque . Para o meu projeto, esse conceito é tão importante quanto o movimento composto emprestado dos rascunhos. Existem muitos jogos nos quais pode ser aplicado. Dameo , Abalone , Ordo - em todos esses jogos, as peças se movem simultaneamente. Mas você pode ir ainda mais longe!


Concordo, isso está muito longe do conceito original de roque, mas por que se limitar? É necessário extrair tudo dos conceitos inerentes ao máximo.

Source: https://habr.com/ru/post/pt472908/


All Articles