Posso adaptar um motor de xadrez a um motor de xadrez chinês (regras diferentes)?
Você pode adaptar o processo que ele usa, mas duvido que você possa adaptar a implementação exata a qualquer grau.
Vejamos as "peças" de uma máquina de xadrez.
Para construir uma máquina de xadrez, você primeiro deve criar uma função que possa dizer quem está ganhando e por quanto estão ganhando em qualquer estado do tabuleiro. Isto inclui o valor das peças, bem como a vantagem posicional. Depois, você poderia usar isto para descobrir qual a melhor sequência de jogadas, simplesmente olhando para quantas permutações de, digamos, as próximas 10 jogadas ou assim.
Você então adiciona um livro de abertura e um livro de finais, que essencialmente são padrões armazenados que conhecem a melhor sequência de respostas de abertura, e a melhor sequência uma vez que há muito poucas peças restantes.
O problema de fazer um motor para o xadrez chinês, no entanto, seria que você precisaria fazer sua própria função que pudesse analisar a vantagem das peças e a vantagem posicional, e descobrir os valores exatos das posições e peças. Você também precisaria gerar um livro de abertura (um pouco mais fácil, normalmente raspado de jogos de profissionais) e um livro de finais (novamente, um pouco mais fácil, feito analisando estados de tabuleiro com menos de um certo número de peças)
Este é na verdade um problema bastante interessante, uma vez que você poderia seguir exatamente as técnicas usadas para criar motores de xadrez, mas com um conjunto diferente de jogadas e valores. Boa sorte a experimentar isto!