分享
 
 
 

写了两个月的黑白棋对战程序,发现早就有了GGS,互联网上的游戏。

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

1、什么是ODK?

ODK的全称是Othello Development Kit,这是一套用来开发能够连接至GGS(the Generic Game Server

)的黑白棋的开发包。GGS是互联网上一台提供各种棋类游戏比赛的平台,ODK使用的只是其中的黑白棋部分

。连接GGS有很多种客户端,Windows平台上比较著名的是Lion。

如果你已经有了一个黑白棋程序,通过ODK可以在15分钟内将你的程序连接至GGS,同世界上很多程序和

用户进行对战。

2、如何使用ODK?

ODK大量使用了C++中的STL库,如字符串类、向量类、图类等。因此C++编译器是使用ODK的必要条件。理

论上任何C++编译器都可以使用,不过我只用Borland C++ Builder 6和Borland C++ Command Line Compiler

5.5试验过。如我自己写的mk.bat内容如下。

rem -------------

bcc32 main GetMove GGSMessage GGSObjects ggsstream ODKStream OsMessage OsObjects sockbuf

del *.obj

del *.tds

del *.bak

rem -------------

使用VC的朋友注意,选择“Project/Settings...”菜单,翻到“Link”页,将ws2_32.lib加入到你的工

程里,否则不能链接成功。另外,需要开启RTTI,翻到“C/C++”页,选择“category”到“C++ Language”

,选中“Enable Run-Time Type Information (RTTI)”。

您可以先编译一次以确认程序可以正常编译,然后还有一些地方需要修改,很快,您就可以连接到GGS上

了。

3、如何将自己的程序连接到GGS上?

这里需要对ODK中的两个文件进行修改。

1)main.cpp文件中

if (err = gs.Connect("external.nj.nec.com",5000)) {

这里的服务器改成opal.cs.ualberta.ca,ODK中原来那个可能也行,但Lion登陆的是opal.cs.ualberta.ca,

而Lion是不可缺少的,所以还是改了为好。

if (err = gs.Login("greedy","password")) {

这里的第一个参数改成你的用户名(最大8个字符),第二个参数改成你的密码。注:我没试过在用户名不存

在时是否能登陆,如果不行,可以用Lion申请一个。

2)ODKStream.cpp文件中

if (pmsg->sFrom=="n2") {

这里的“n2”要改成你的控制用户名。下面将解释这个控制用户名。

3)上述步骤完成后,再编译一下,如果通过编译,可运行一下看看效果,正常情况下应该能够连接上GGS

,并显示最新消息。

4、如何让你的程序和其他用户对战?

1)首先,您需要在GGS上拥有两个用户,是否注册好像无所谓。其中一个用于上述程序中,以程序登陆;

另一个用Lion登陆,这个就是控制用户名,用Lion登陆后,您应该可以在用户列表里看到您的程序用户名。

然后您应该和您的程序用户名对话(直接在用户名上点击一下就可以了),这样您的程序就会根据您的指令

来行事了。比如你输入“ta 8 ant”,稍等一会儿,您的程序就应该和ant开始下棋了。而输入“quit”后,

稍等一会儿,您就会看到你的程序退出了。(注:ant是GGS上一个常任程序,棋力不强,但也不弱。一般来

说刚刚接触GGS的用户都喜欢和它对战。顺便说一下,我的程序在GGS里的用户名是NowCan,如果您看到,也

可以和我的程序对战一局。)当然,现在您还没有把自己的走棋函数加入,而是用的ODK中的例子,所以勿庸

置疑,你的程序肯定下不赢ant。

2)将自己的智能模块加入ODK。这很容易,只要替换GetMove.cpp中的GetMove()函数即可。具体方法可以

参考ODK中的代码。替换这个函数后,你的程序就可以连接至GGS了。然后再和ant下一局看看。

3)有一个需要注意的地方,GGS虽然未注册也可进行比赛,但不能计成绩。而上面很多用户--特别是程

序用户--不接受不计成绩的比赛。因此,对某些用户的挑战可能对方不会接受,这个也没有办法,只能注

册。

5、ODK还有很多其他的细节,可以参考ODK附带的文档。

ODK的下载地址:http://vip.6to23.com/nowcan1/ai/ODK.rar

Lion的下载地址:http://vip.6to23.com/nowcan1/ai/lion083.zip

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有