我正在寻找可用于试验棋盘游戏的程序或库(主要是国际象棋,但不一定——其他类似复杂的棋盘游戏也可以)。我将测试不同的游戏算法。
这就是我需要的:
如果可能的话,我想让我的程序与 gnuchess 和 crafty 之类的玩家对抗,但也可以对抗它自己和人类玩家;
如果我的播放器程序可以通过 TCP 与“服务器”通信就可以了,但如果它有一个 C 接口(不是 C++,因为那样我必须编写一个包装器)会更好;
我可能想更改游戏规则(棋子的初始位置、棋子数量,甚至移动规则);
灵活(例如,如果库/服务器验证国际象棋移动,那没关系,但我希望这样的功能是可选的,因为我想在一些实验中将其关闭);
免费(我可能想进入源代码并可能更改一些位)。
如果有人能指出我这样的图书馆/服务器,我将不胜感激......
非常感谢!
PS:我想包括一个“棋盘游戏”标签,但似乎我需要更多的声誉......
PS 2:我想接受两个答案(它们是互补的)。遗憾的是 StackOverflow 不允许这样做。