是否有可用于验证国际象棋移动和模拟.NET游戏的库?如果库能够理解代数符号中的移动并且还提供用于移动的简单API,那将是很好的。例如,game.Move(“E2”,“E4”)等。在第二种情况下,库应该能够为移动生成代数符号。 我不想让它移动或下棋等,只是一个游戏验证和游戏模拟的库。 有链接吗?
答案 0 :(得分:4)
查看C# Chess Game Starter Kit。它是一个C#开源应用程序,完全符合您的要求,并且可以免费用于商业用途。
有关源代码的详细说明,请参阅:
答案 1 :(得分:2)
还有sharpchess是开放源码(在GNU GPL下)并为.Net v2编写 它有一个核心引擎和一个WinForm GUI。虽然它确实下棋,但我相信你可能会剥离“游戏引擎”以留下用于模拟的外壳。
网站上的一些要点
* Graphical chess board.
* Helpful high-lighting of legal chess moves, when clicking on a piece.
* Move history displayed.
* Undo/Redo moves.
* Load/Save chess games during play.
* Replay your saved games.
* Paste FEN positions from the clipboard.
国际象棋引擎功能
* WinBoard compatible.
* 0x88 board representation.
* Opening book containing over 1300 varied opening positions.
编程功能
* A well-designed, and hopefully easy-to-understand, object-model that will enable other developers to quickly get involved in the project.
答案 2 :(得分:1)
我在github发布了我的国际象棋运动验证器。
示例:
var board = Board.GetNewBoard();
board.SetPiece<Rook>( ChessColor.White, 'A', 1 );
var result = board.MovePiece( 'A', 1, 'A', 8 );