Desde já agradeço!!
Oi Igor,
Nunca programei um jogo de xadrez, mas na cadeira de Inteligência Artificial da graduação a gente tinha sempre que fazer um jogo de tabuleiro. Eu começaria escrevendo o jogo para 2 jogadores humanos para criar as regras corretamente. Depois eu escreveria uma IA (se necessário).
Acho que é uma boa idéia que cada jogada seja um string que tu envia pro tabuleiro. Dessa forma tu não prende a forma de interação do jogador com a engine do jogo. No xadrez até já tem um código pra expressar jogadas (mas eu não sei ele pq eu não jogo :)). Um jogador humano, por exemplo, poderia digitar diretamente o string da jogada desejada numa interface de terminal, enquanto em uma interface gráfica seria só converter a ação que o usuário fez com o mouse para o código de jogada resultante. Na hora de fazer a IA é só fazer com que ela gere o código da próxima jogada para interagir com o tabuleiro.
Talvez tenha um algoritmo super específico para xadrez, mas o normal nesse tipo de caso é usar o algoritmo MInimax [1] para fazer a IA. Ele é genérico e tu vai precisar de pelo menos uma função de avaliação específica para xadrez, mas já é um lugar por onde começar.
[1] http://en.wikipedia.org/wiki/Minimax
--
Kao Félix
Oi Igor --
faz algum tempo que em computação, existe uma sepáração bem nítida
entre a interface do jogo de xadrez,e o "engine" em si -
Quase todos os programas livres, e achoq ue todos os programas de
xadrez "hig-end" permitem que você coencte um outro engine.
Isso permite tambem que o program de interface, alem de poder usar
vários engines, possa ter jogadores conectados remotamente, quer
diretamente, quer via um Internet Chess Server (como o FICS) que usa
o mesmo padrão.
Deixa ver se consigo achar uma especificação de como rola isso.
Pra ovce fica facild ividir o trabalho tambem, entre interface e o
xadrez em si.
Tá aqui: http://home.hccnet.nl/h.g.muller/engine-intf.html
Boa sorte ai, e nos mantenha informados!
js
-><-
> Você está recebendo esta mensagem porque se inscreveu no grupo "python-gamedev-brasil" dos Grupos do Google.
> Para postar neste grupo, envie um e-mail para python-gam...@googlegroups.com.
> Para cancelar a inscrição nesse grupo, envie um e-mail para python-gamedev-b...@googlegroups.com.
> Para obter mais opções, visite esse grupo em http://groups.google.com/group/python-gamedev-brasil?hl=pt-BR.
>
>
--
Você está recebendo esta mensagem porque se inscreveu no grupo "python-gamedev-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para python-gam...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para python-gamedev-b...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/python-gamedev-brasil?hl=pt-BR.