做一个简单的android网络游戏五子棋,能通过手机对战,请问要怎么样的步骤
要实现网上对战的话,你需要一个服务器,固定的ip地址,前期测试你在局域网中可以用自己的电脑做服务器,手机A和手机B作为客户端,使用socket连接服务器,服务器交换两个手机的数据,其实就是把你的蓝牙链路换成了服务器
网络对战五子棋代码编写思想 C++
网络部分:客户端A先启动,并在指定的端口上linsten 客户端B启动,去连接客户端A.他们两个在连接竭力以后,进出到游戏初始化.把界面画出来,等待点击.他们直间传输对方选择的点的坐标,xy 五子棋部分:1:游戏规则,轮流点下棋的位置2:每点击一次或这socket接收到数据算一下是不是赢了.
请问有没有支持安卓手机和iPhone联网对战的五子棋游戏app?或者iOS和电脑联网对战
简单啊 下个扣扣的五子棋就可以了 安卓的话在应用宝里可以下载到 苹果得需要在appstore中下载 至于电脑登陆扣扣以后在游戏大厅里打开就可以 这三个平台可以对战 希望能够采纳
五子棋战法及战术
五子棋秘籍战法 先手要攻, 后手要守.以攻为守,以守待攻. 攻守转换, 慎思变化.先行争夺, 地破天惊. 守取外势, 攻聚内力.八卦易守, 成角易攻. 阻断分隔, 稳如泰山.不思争先, 胜比登天. 初盘争二, 局终抢三.留三不冲, 变化万千. 多个先手, 细算次先.五子要点, 次序在前. 斜线为阴, 直线为阳.阴阳结合, 防不胜防. 连三连四, 易见为明.跳三跳四, 暗剑深藏. 己落一子, 敌增一兵.攻其要点, 守其必争. 势已形成, 败即降临.五子精华, 一子输赢.
想做一个五子棋 人机对战
第一件事: 画好界面,支持两个人对战(在一台电脑上即可),正确走子,正确判断胜负. 第二步: 模拟ai,第一种思路是:系统计算玩家走任意位置,走那里可以赢,计算x(难度决定,可修改)步,取胜利可能性最大的一点(计算量大) 第二种思路:给权重分,例如堵住冲四100分,自己冲四30分,活三20分等等,依得分决定如何走(可能出现电脑弱智,但是程序容易写,计算量小) 第三种思路:和第一种思路相同,但是只计算一步,虚拟出最佳结果后,电脑从玩家的角度计算如何走最好,按照这个结果虚拟电脑的下一步,多次重复找出最佳走法.(效果最佳,但是程序难写) 第三步: 考虑难度设计,系统占用,界面友好等因素 祝你成功
安卓有好玩的支出对战的手机单机五子棋游戏吗?给推荐个
九游a.9game.cn里的有个《涂鸦五子棋》挺有意思的,游戏也支持对战的,去看看吧.具体地址是: http://a.9game.cn/GameG.htm?Id=12924要用手机登陆或用电脑opera浏览器登陆喔
高难度五子棋对战器
1.black stone,黑石,可选级别的难度跨度大,高段非常厉害,文件很小,几M,不过高段对弈反应很慢 2.五子棋大师,比黑石差一点,也很厉害,反应快,50M 五子棋大师有禁手和无禁手规则两种,界面中文易于操作.黑石只有禁手规则,界面全英文,自己查查英文字典吧,不然你也许都搞不清楚那个级别才是最高的 这两个棋力很高,下起来很难赢,容易打击信心,呵呵,个人推荐五子棋大师,反应快,黑石慢得受不了
求一个难度超级大的五子棋与电脑对战游戏!
擦……请忽略楼上两位……从来没听过的软件…… 五子棋公认最厉害的电脑软件是黑石,我当时用的时候版本是3.8,不知道现在如何了.这个软件你可以自己调它的段数.据说调到最高级别的时候能打到一段水平.不过软件的局限就是侧重局部计算缺乏全局观念,所以据说牛人是能下赢的.但作为一个在QQ有禁手200分的人,我下不赢它.
QQ游戏是五子棋水平最高的对战平台吗?
QQ现在在国内是水平最高的平台.(不知道你是说一般的民间玩法呢,还是职业规则.职业规则的话,QQ的三手交换房间是全国水平最高的区,一些现实中的名人都常在里面练手,包括仇云飞,吴博,李一等等.民间的话哪都差不多,大多是菜鸟,因为真正棋力高了以后就会认识到禁手的必要性而去下禁手规则) 其次是中游 国外有专门的五子棋对战平台ORC (最官方的,国际连珠联盟指定的. 在里面你可以看到世界冠军Ando),里面有各种规则,不过都是相对正规的规则,没有什么限制都没有的民间五子棋
求五子棋人机对战算法
总的来说,要让电脑知道该在哪一点下子,就要根据盘面的形势,为每
一可能落子的点计算其重要程度,也就是当这子落下后会形成什么棋型(如:“冲四”、“活三”等),然后通览
全盘选出最重要的一点,这便是最基本的算法。当然,仅靠当前盘面进行判定是远远不够的,这样下棋很轻易掉进
玩家设下的陷阱,因为它没有考虑以后的变化。所以在此基础上我们加入递归调用,即:在电脑中猜测出今后几步
的各种走法,以便作出最佳选择,这也是我们下棋时常说的“想了几步”。如此一来您的程序便具有一定的水平了。
什么?不信!过来试试吧!
总体思路弄清之后,下面进行具体讨论:
一:数据结构
先来看看数据结构,我们需要哪些变量?
首先得为整个棋盘建立一张表格用以记录棋子信息,我们使用一个15*15的二维数组 Table[15][15] (15*15是
五子棋棋盘的大小),数组的每一个元素对应棋盘上的一个交叉点,用‘0’表示空位、‘1’代表己方的子、‘2’
代表对方的子;这张表也是今后分析的基础。
在此之后还要为电脑和玩家双方各建立一张棋型表Computer[15][15][4]和Player[15][15][4],用来存放棋型
数据,就是刚才所说的重要程度,比如用‘20’代表“冲四”的点,用‘15’代表“活三”的点,那么在计算重要
性时,就可以根据20>15得出前者比后者重要,下子时电脑便会自动选择“冲四”的点。那为什么棋型表要使用三
维数组呢?因为棋盘上的每一个点都可以与横、竖、左斜、右斜四个方向的棋子构成不同的棋型,所以一个点总共
有4个记录;这样做的另一个好处是可以轻易判定出复合棋型,例如:假如同一点上有2个‘15’就是双三、有一个‘15’和一个‘20’就是四三。
怎么样!3个数组构成了程序的基本数据骨架,今后只要再加入一些辅助变量便可以应付自如了。应该不会太
难吧?OK!有了这么多有用的数据,我们就可以深入到程序的流程中去了。
二:程序流程
我们主要讨论五子棋的核心算法,即:人工智能部分,而其他像图形显示、键盘鼠标控制等,因较为简单,所
以就不作过多介绍了。
我们看到本程序由六个基本功能模块构成,各模块的具体分析如下:
(1)初始化:首先,建立盘面数组Table[15][15]、对战双方的棋型表Computer[15][15][4]和Player[15]
[15][4]并将它们清零以备使用;然后初始化显示器、键盘、鼠等输入输出设备并在屏幕上画出棋盘。
(2)主循环控制模块:控制下棋顺序,当轮到某方下子时,负责将程序转到相应的模块中去,主要担当一个
调度者的角色。
(3)玩家下子:当轮到玩家下时,您通过键盘或鼠标在棋盘上落子,程序会根据该点的位置,在Table[15]
[15]数组的相应地方记录‘2’,以表明该子是玩家下的。
(4)盘面分析填写棋型表:本程序核心模块之一,人工智能算法的根本依据!其具体实现方法如下:您在下
五子棋时,一定会先根据棋盘上的情况,找出当前最重要的一些点位,如“活三”、“冲四”等;然后再在其中
选择落子点。但是,电脑不会像人一样分析问题,要让它知道哪是“活三”、哪是“冲四”,就得在棋盘上逐点
计算,一步一步的教它。
先来分析己方的棋型,我们从棋盘左上角出发,向右逐行搜索,当碰到一个空白点时,以它为中心向左挨个
查找,假如碰到己方的子则记录然后继续,假如碰到对方的子、空白点或边界就停止查找。左边完成后再向右进
行同样的操作;最后把左右两边的记录合并起来,得到的数据就是该点横向上的棋型,然后把棋型的编号填入到Computer[x][y][n]中就行了(x、y代表坐标,n=0、1、2、3分别代表横、竖、左斜、右斜四个方向)。而其他三
个方向的棋型也可用同样的方法得到,当搜索完整张棋盘后,己方棋型表也就填写完毕了。然后再用同样的方法
填写对方棋型表。
注重:所有棋型的编号都要事先定义好,越重要的号数越大!
OK! 怎么样?有点累了吧?不过千万别泄气!因为好戏还在后头。
Let’s go!
(5)电脑下子:有了上面填写的两张棋型表,现在要作的就是让电脑知道在哪一点下子了。其中最简单的
计算方法,就是遍历棋型表Computer[15][15][4]和Player[15][15][4]找出其中数值最大的一点,在该点下子即
可。但这种算法的弱点非常明显,只顾眼前利益,不能顾全大局,这就和许多五子棋初学者一样犯了“目光短浅”
的毛病。
要解决这个问题,我们引入‘今后几步猜测法’,具体方法是这样的: 首先, 让电脑分析一个可能的点,
假如在这儿下子将会形成对手不得不防守的棋型(例如:‘冲四’、‘活三’);那么下一步对手就会照您的思
路下子来防守您,如此一来便完成了第一步的猜测。这时再调用模块4对猜测后的棋进行盘面分析,假如出现了
‘四三’、‘双三’或‘双四’等制胜点,那么己方就可以获胜了(当然对黑棋而言‘双三’、‘双四’是禁手
,另当别论);否则照同样的方法向下分析,就可猜测出第二步、第三步……
等一等,要是盘面上没有对手必须防的棋型,哪该怎么办呢?进攻不成的话就得考虑防守了,将自己和对手
调换一下位置,然后用上面的方法来猜测对手的棋,这样既可以防住对手巧妙的攻击,又能侍机发动反击,何乐
而不为呢!
但是必须告诉大家的是:猜测法的运算量相当之大,据我的经验,用Pentium-100猜测3步的走法平均需要15
秒以上时间,所以建议猜测量在5步以内。可别小瞧了这5步,有时它甚至会走出让您拍手叫绝的妙着呢!
(6)胜败判定:务须多言,某方形成五子连即获胜;若黑棋走出‘双三’、‘双四’或长连即以禁手判负。
到现在为止,整个五子棋软件就基本完成了,其水平大约在中级上下。当然,这种算法并不是最好的,但我
相信它的基本思路是正确的。