【问题标题】:how to develop a multi player chess?如何开发多人国际象棋?
【发布时间】:2010-02-24 19:15:26
【问题描述】:

我想用 c# 开发一个多人国际象棋,但我不知道如何用 c# 实现国际象棋的限制规则,老实说,我这辈子从来没有做过一点游戏编程所以我不知道如何在这个领域工作。

有没有简单的国际象棋程序源代码示例? 坦率地说,我没有成功搜索国际象棋源代码或如何在国际象棋中实现移动规则。

所以如果你认为你可以帮助我,将不胜感激。

问候。

【问题讨论】:

  • 也许你应该从更简单的开始?
  • 奥斯汀权力?这是一个巨魔问题吗?

标签: c# .net chess


【解决方案1】:

这是 Bing.com 搜索“programming chess”的第一个结果:

https://www.chessprogramming.org/Main_Page

它似乎涵盖了所有基础,无论是玩家对玩家还是玩家对电脑。

【讨论】:

  • 这绝对是最全面的资源。你比我早一秒就得到了答案。 :)
  • @LBushkin:看起来不错。 :) 我一直在研究它,那里有很多很棒的信息。我希望有一个这样的网站来编程 Go,因为我通常更喜欢它而不是国际象棋(但两者都是优秀的策略游戏。)
  • 真的有人用 Bing 吗?
  • 我爱必应!它在第一页返回了很好的结果,通过使用他们的购物搜索,我已经获得了几百美元。 :)
【解决方案2】:

国际象棋是一种复杂的游戏。如果您不熟悉编程或此类编程,我可能会建议您从类似但更简单的东西开始(想到跳棋)。通过这种方式,您可以快速开始工作并学习基础知识(例如表示棋盘、移动棋子等),而不会因与国际象棋的所有细节相关的头痛而受苦。

【讨论】:

  • @danben:实际上编写一个 BASIC 国际象棋引擎并不难。困难的部分是调整引擎以提高可玩性和平衡性。
【解决方案3】:

将棋盘想象成一个包含行和列的二维数组,它由 64 个正方形组成,因此您有 8 * 8。这就是您的程序的基础。接下来你必须考虑的是碎片,以及碎片背后的规则。另外,马、兵、后等的合法走法是什么。

如果将其全部分解成更小的 tid 位,这并不复杂,但我从未编写过这样的动物 :)。规则实际上可以存储在某种资源文件或数据库中。您只需检查在阵列上进行的移动是否有效。如果允许,则不允许。

这只是一个小小的开始......

【讨论】:

    【解决方案4】:

    我会开始here

    首先要创建一个国际象棋引擎。从那里开始,其余代码实际上应该自己编写。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-04
      • 2014-03-02
      • 2013-05-24
      相关资源
      最近更新 更多