是否有任何库可用于在 .NET 中验证国际象棋移动和模拟游戏?如果该库可以理解代数记法中的移动并提供简单的 API 用于移动,那就太好了。例如,game.Move("E2","E4") 等。在第二种情况下,库应该能够为移动生成代数符号。我不希望它移动或下棋等,只是一个用于游戏验证和游戏模拟的库。有链接吗?
问问题
4702 次
3 回答
4
看看C# Chess Game Starter Kit。它是一个 C# 开源应用程序,可以完全按照您的要求进行操作,并且可以免费用于商业用途。
源代码的详细解释见:
于 2009-09-28T21:40:41.567 回答
2
还有一个Sharchess,它是开源的(在 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.
于 2009-09-28T22:03:30.627 回答
1
我在github上发布了我的chess-movement-validator。
例子:
var board = Board.GetNewBoard();
board.SetPiece<Rook>( ChessColor.White, 'A', 1 );
var result = board.MovePiece( 'A', 1, 'A', 8 );
于 2012-05-11T09:28:25.203 回答