正在阅读:轻松编写自己的拖拉机算法,进行算法大战轻松编写自己的拖拉机算法,进行算法大战

2006-02-22 09:58 出处: 作者:smallnest 责任编辑:xietaoming

  ShouldSendCards方法定义了首家出牌的算法。比如该东家首先出牌时,调用ShouldSendCards得到东家应该出的牌,接着调用MustSendCards得到北家应该出的牌,接着调用MustSendCards得到西家应该出的牌,接着调用MustSendCards得到南家应该出的牌,程序然后进行计算,得到下一次的首家,然后通过ShouldSendCards得到首家出的牌……周而复始,直到手中的牌出完。

  通过上面一段的介绍,你也明白了MustSendCards方法的含义,就是非首家应该出牌的算法。

  下面这个SampleUserAlgorithm类就是简单实现了这个接口的一个类。它的源代码可以在游戏的sources目录得到,编译好的配件放在plugins目录。您编译好的插件都必须放在plugins目录,游戏可以自行读取plugins文件下的dll文件,分析并得到编写的插件类。

  这个SampleUserAlgorithm类之所以简单,是因为它的首家出牌算法是随便挑一张牌就出了,而随牌算法假定了首家出的是一张牌,自己随便出了一张此花色的牌。您可以在这个插件上进行完善。

  游戏下载地址(包含了接口和一个简单的算法实现源代码):点击这里,  下载地址2,下载地址三,下载地址四,软件版本1.2.0.356.

  将您编写的插件编译成dll放在游戏的plugins目录,在程序中设置某一方采用您编写的算法,您就可以和程序中内置的算法进行对战了。如果您的算法不合法(比如首家出拖拉机,您手中有拖拉机却不出),说明您的算法还不完善,程序会自动将此方的算法更改为程序中内置的算法。

键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品