找回密码
 立即注册
搜索
热搜: 活动 交友
查看: 42|回复: 3

Threes!游戏及其AI的Python实现

[复制链接]
39 金钱 回复本帖可获得 3 金钱奖励! 每人限 2 次(中奖概率 80%)

9

主题

17

回帖

676

积分

版主

积分
676
发表于 7 小时前 | 显示全部楼层 |阅读模式

〇、 游戏简介


Threes!
是一款由Sirvo LLC开发并发行的益智类游戏,于2014年2月10日发布,游戏平台为iOS。



Threes!为2048的灵感来源。


Threes!曾获得2014年度App Store中国区iPhone年度最佳游戏的荣誉。






一、 游戏规则

它的主要规则如下:

1. 盘面大小为4*4



2. 盘面由1,2,3,6,12,24,48,...,3072,6144,12288和空格组成,合成12288后游戏通关 (人力打到3072就很强了)


3. 相邻的1和2可以合成3,相邻的相同的3*2^k可以合成3*2^(k+1)
  例如: 3和3合成6,6和6合成12

4. 每次可以将盘面向上下左右中的一个方向移动,其间每一行每一列都有可能可以移动或无法移动





5. (每次移动)(合并)(移动方向上)(无法平移)且(可以合并)的(第一组相邻数字块)并(平移剩下数字块与空格)并(添加一块空格)
  例如: 1212→0123 1210→0121 1332→0162 3033→0306


6. 下一块为1,2,3或大数字块,其中大数字块为3选1,中间那个的取值范围为[12,maxnum/16]
  例如: maxnum=192,大数字块必为[[6,12,24]三选一];
      maxnum=1536,大数字块为[[6,12,24]三选一,[12,24,48]三选一,[24,48,96]三选一,[48,96,192]三选一]四选一


7. 盘面上如果1比2多4块,则下一块必不为1,反之亦然。


8. 下一块必出现在下一次发生移动的随机一行内


9. 无法移动则游戏结束


10. 开局时有一个大数字块和7个1,2,3数字块和8个空格 (本人代码实现时将大数字块设为192)






二、游戏技巧


欢迎大家讨论,并贴出自己的最高分!






三、代码实现


因为希望有同学也可以做出这个游戏的AI,所以本贴直接贴出可运行的无AI版代码。


  1. <blockquote>import random,pygame,sys,time
复制代码




四、实现AI





上面四张图是同一局游戏的截图,已经实现了AI合成6144+3072 (可以上手一下看看有多难)


附上[url=【Threes! AI 合成6144+3072】https://www.bilibili.com/video/BV1zd3bzoEvL]视频链接[/url] [url=【Threes! AI 合成6144+3072】https://www.bilibili.com/video/BV1zd3bzoEvL]【Threes! AI 合成6144+3072】https://www.bilibili.com/video/BV1zd3bzoEvL[/url] (在挑战高分的过程中可以借鉴打法)


回帖>=10 或 回帖不同人数>=5 或 有同学从192手打出1536: 给出基础AI实现思路


回帖>=25 或 回帖不同人数>=10: 给出基础AI代码截图


有同学做出从192合成1536的AI 或 从192手打出3072: 给出进阶AI实现思路 (手打记得录屏!)

ps: 该AI开发难度略低于五子棋AI,简单易上手

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 2威望 +5 金钱 +25 收起 理由
littleblackLB + 20 赞一个!
脆脆大奶酪 + 5 + 5 赞一个!

查看全部评分

0

主题

3

回帖

30

积分

提示词程序员

积分
30
发表于 6 小时前 | 显示全部楼层

回帖奖励 +3 金钱

1+1≠2真是太出生了

0

主题

3

回帖

30

积分

提示词程序员

积分
30
发表于 6 小时前 | 显示全部楼层

回帖奖励 +3 金钱


哦不对,2+2也≠4

0

主题

3

回帖

30

积分

提示词程序员

积分
30
发表于 3 小时前 | 显示全部楼层
挑战最低分

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|RealDevClub ( 沪ICP备2024093864号-1 )

GMT+8, 7-5-2025 22:01 , Processed in 0.078728 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表