最近迷上了一个小游戏,消灭星星,想到能否用计算机自动处理,一开始觉得很容易,但实际着手后发现比较困难。其中难点在于:

l  变化太多,无法在短时间内穷举。

l  局部影响全局,但又不能决定全局。局部最优不代表全局最优

l  对每个状态没有太好的评估函数,即我们无法简单的比较那个状态好,那个状态差。

在这几点上,POPSTAR和围棋很相似,当然规则上比围棋要简单多了,维度上也比围棋小,可以视为简化的围棋。在CSDN网站上发现有人有同样的兴趣,但后来就没有人回复了。

http://bbs.csdn.net/topics/390145455?page=1#post-395243752

我做了一个小程序,大致的原理是,用四叉树找到所有可消除的块,然后根据块的大小,位置,颜色得到评估指标,并向下搜索一层,根据下一层的状态再进行评估排序,得到评估比较高的状态再进行处理。

由于还没有实现更自动化的方法,因此整个游戏的流程如下:

手机助手截屏-》自动图像识别生成文件-》自动处理文件-》手工操作手机完成,但是后来由于手工输入错误,导致没有达到20万分就结束了,一共进行了54关,时间限制为每题10秒的时间。每个题目的平均分大约为3800,还不足以无限续关,但一般可以达到20万分左右,可以向别人炫耀一下了,呵呵(反正周围的人很少能自己玩到10万分,而用这个程序理论上可以到40万分)。

题目放在了http://download.csdn.net/detail/firefight/5889619,有兴趣的可以自己编程试试。

消除星星的规则在上面的第一个链接中有,补充几点如下:

维度为10*10,颜色种类五种,分别为红,黄,绿,蓝,紫

同颜色的连接在一起的块可以消除,消除的分数为5*(N^2),N为消除的块数

剩余BONUS的公式为2000-20*(N^2),N为剩余的块数,N<10(N>=10后BONUS为0)

过关分数要求为

1000

3000

6000

8000

10000

13000

15000

17000

20000

20000以上都是每关增加4000分,因此如果平均分为4000分的话,理论上可以无限续关。

消灭星星(PopStar)游戏的自动处理相关推荐

  1. 很多小伙伴找我说要一个Python制作的消灭星星小游戏,必须给你们安排好!!

    相关文件 关注小编,私信小编领取哟! 当然别忘了一件三连哟~~ 对了大家可以关注小编的公众号哟~~ Python日志 开发环境 Python版本:3.6.4 相关模块: pygame模块: 以及一些P ...

  2. LayaBox 消灭星星小游戏 (TypeScript)

    LayaBox 消灭星星 (TypeScript) 无聊学习LayaBox随便瞎搞的,毫无章法可言(借鉴网络上找的Html 消灭星星游戏改的) 需要的自己取 – 第一次写这玩意,不知道啥整... 连接 ...

  3. 基于HTML5实现的消灭星星小游戏

    笔者这次又是使用了 MVC 模式来写「消灭星星」.星星「砖块」的数据结构与各种状态由 Model 实现,游戏的核心在 Model 中完成:View 映射 Model 的变化并做出对应的行为,它的任务主 ...

  4. [源码和文档分享]基于HTML5实现的消灭星星小游戏

    笔者这次又是使用了 MVC 模式来写「消灭星星」.星星「砖块」的数据结构与各种状态由 Model 实现,游戏的核心在 Model 中完成:View 映射 Model 的变化并做出对应的行为,它的任务主 ...

  5. 消灭星星网页版java代码,javascript实现消灭星星小游戏简单版

    来看看实现的效果图 游戏规则:双击颜色一样的星星,双击相同的部分就消失了 实例代码 * {margin:0; padding:0;} body {background:#000; width:100% ...

  6. 消灭星星类游戏java语言_javascript实现消灭星星小游戏简单版

    来看看实现的效果图 游戏规则:双击颜色一样的星星,双击相同的部分就消失了 实例代码 * {margin:0; padding:0;} body {background:#000; width:100% ...

  7. H5游戏开发:消灭星星

    「消灭星星」是一款很经典的「消除类游戏」,它的玩法很简单:消除相连通的同色砖块. 1. 游戏规则 「消灭星星」存在多个版本,不过它们的规则除了「关卡分值」有些出入外,其它的规则都是一样的.笔者介绍的版 ...

  8. Shell 仿消灭星星游戏(2013-03-15)

    前言 做一个小游戏练习 shell脚本的语法什么的.入门一般都是俄罗斯方块,不过也都有了,推箱子有用C写过,很简单,网上也有了,就做一个网上还没有人用 shell写过的吧.模拟 IPAD 上一个&qu ...

  9. 消灭星星山寨版-我代表星星消灭你

    前言 消灭星星这个游戏很经典,开始之前,请参考一下以下文章及算法. 感谢作者. 参考地址 PopStar(消灭星星)游戏源代码下载.分析及跨平台移植-第一篇(界面) 关于用到的资源 用到的资源我是直接 ...

最新文章

  1. ACNO.15猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。 到第N天早上想再
  2. 【吉林】2021年下半年软考报考时间及通知
  3. Android SDK Manager 更新慢解决办法
  4. alert 乱码(转 学习)
  5. 计算机软件行业各职位英文缩写
  6. oracle 自定义分词器,自定义分词器和自定义词典
  7. 非因解读 | Multiplex immunofluorescnece-多重免疫荧光结合单细胞蛋白组技术探索肿瘤微环境
  8. VMware虚拟机中下载安装CentOS 7
  9. 使用cookie模拟登陆豆瓣影评
  10. 放慢脚步是为了走得更快
  11. 《SPEA2: Improving the Strength Pareto Evolutionary Algorithm》阅读笔记
  12. 两种特殊卷积:转置卷积和空洞卷积
  13. HTML网页设计期末课程大作业 ~中国茶文化5页面带轮播(HTML+CSS+JS)~ 学生网页设计作业源码...
  14. Hadoop3.2.0 HDFS DataNode管理员指南
  15. Python 根据身份证号计算生日,年龄和性别
  16. 【CTS2019】氪金手游(动态规划)
  17. 游戏出海正当时,突破文化壁垒或成为关键
  18. 作为一名成熟的云原生布道师,我是这么写作的
  19. 2020Cfa最新mock下载和使用
  20. 通过实战测试无线网络的速度

热门文章

  1. html5超链接总结,最全的超链接知识汇总
  2. MFC中GetDlgItem以及SetDlgItem详解
  3. 关于input属性的居中问题
  4. #微软学生开发者峰会
  5. idea的Open Recent
  6. 文章入选人工智能内容榜第一名
  7. 计算机模拟天体的原理,天体物理学中动力学研究的计算机模拟.PDF
  8. IT互联网领军者眼中的2013年
  9. 【Android】Android游戏编程之从零开始
  10. php点击事件唤起微信聊天,vbot微信机器人微信聊天消息详解(15):点击消息