desenvolvendo jogo de xadrez em python.

2,774 views
Skip to first unread message

pedro igor

unread,
Apr 15, 2010, 9:46:40 AM4/15/10
to python-gamedev-brasil
Pessoal !
Estou planejando desenvolver um chess game em python, para ser mais
específico um com nível intermediário pois vou usar tal game para um
projeto de xadrez escolar aqui do meu município, não pretendo pegar um
outro game open-source para tal fim, pois também usarei tal game para
dar aula de programação em python ou seja vou fazê-lo passo a passo
com meus alunos, quem já criou algo parecido pode me dar dicas de como
a desenvolver tal game. ;) !

Desde já agradeço!!

Kao Felix

unread,
Apr 15, 2010, 12:39:19 PM4/15/10
to python-gam...@googlegroups.com


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

Joao S. O. Bueno

unread,
Apr 15, 2010, 1:00:04 PM4/15/10
to python-gam...@googlegroups.com
2010/4/15 pedro igor <pedro...@gmail.com>:

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.
>
>

Rodrigo Lira

unread,
Apr 15, 2010, 1:08:53 PM4/15/10
to python-gam...@googlegroups.com
http://code.google.com/p/pychess/

Dá uma olhada nesse projeto.

--

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.




--
Rodrigo C. Lira
Eng. de Computação 08.2
Universidade de Pernambuco
http://rodrigolira.wordpress.com


Reply all
Reply to author
Forward
0 new messages