Ayahuasec 发表于 2015-6-20 21:53:31

【Lua】占据棋(更新新AI)

本帖最后由 Ayahuasec 于 2015-6-28 09:31 编辑

源码没有加密,大家可以自行修改。
游戏说明:
通过数字键移动鼠标(5为左上角开始将光标移到空位),Enter键决定,确定位置后该格及周围4格将成为你的领地,随后由另一个玩家选择下一个位置,直到整个8*8的场地铺满。不能将已占的格子作为选择的目标,但可通过占据旁边的格子以占领对方的领地。铺满后占得格子多的一方胜。
操作:
    2:下 4:左 6:右 8:上
    1:左下 3:右下 7:左上 9:右上
    5:快速选定空位
    Enter:决定
    Tab:清空
    a:简单AI1(直接算法,获得结果较快)
    b:简单AI2(间接算法,运算较慢)
PS:有时间的话我会去研究高难度AI的算法(大概暑假吧...),目前的思路是对AI2做一些改进,但是感觉略复杂,果然做AI就是烧脑子。。

枷锁文件中中文的是用教师软件生成的,实体机可能会出问题。zjq.tns是用luna生成的,大黑3.1测试通过。resource是源码(可以复制到oclua中直接运行,不要学我不按格式的代码风格。。。。。AI不完善,有兴趣可以自行改进)。。。
截图:



6月28日更新1.3版,更新内容如下:
1、升级AI难度,游戏中按B可获取该AI所决定的位置。
2、添加规则:若最后一步仍为方块,则方块的分数减去3分(实际上大概算了一下数学期望应该是2.87.。。。)
大概就这样,AI应该还有改进的空间,我会继续尝试的。。
更新的tns文件:

Ayahuasec 发表于 2015-6-20 21:56:34

为了提取大黑上写的代码,花了两个晚上装虚拟机装1.6版教师软件然后keygen然后升3.1然后开试用然后保存虚拟机然后备份压缩虚拟机所有文件。。为了提取个tns我也是醉了。。。。。Ti干吗不搞一个可以提取tns中记事本内容的东西。。。。非要逼我没正版。。。

wtof1996 发表于 2015-6-21 14:04:45

这源码...其实没格式化然后又没注释和加了密的没啥区别
关于AI:现有的棋类AI无非就是在暴力搜索的基础上做剪枝而已,建议设计一个rank算法然后用minmax搜索,限定一下深度应该还是可以的


Ayahuasec 发表于 2015-6-21 23:28:16

wtof1996 发表于 2015-6-21 14:04
这源码...其实没格式化然后又没注释和加了密的没啥区别
关于AI:现有的棋类AI无非就是在暴力搜索的基础上 ...

搜索每一个点做出来的就是AI1,没什么智商……最高玩出过40:24……打算把实际玩的时候的一些技巧转成代码编进去,这样应该更有效一点。代码因为是大黑上写的,所以没按格式,写AI那段有点乱才用 notepad ++格式化了一下……

feixia 发表于 2015-9-6 20:37:04

赞个

Ladness 发表于 2016-1-29 23:10:37

支持下 希望楼主能增加点难度

zqqyyy 发表于 2016-2-16 18:33:07

:)

zqqyyy 发表于 2016-2-16 18:33:14

:)

tmacmagic1 发表于 2017-3-7 22:46:06

支持下
页: [1]
查看完整版本: 【Lua】占据棋(更新新AI)