2048代码玩具(Python实现)

游戏本身就是一个游戏,一起来发现编码的乐趣。

QQ:124663063

Step1
安装 Python ,这里我使用的是Python 3.6.2版本。

Step2
双击打开index.pyw文件。

Step3
按键盘上的h键查看使用说明。

Step4
开始玩。

Step5
玩腻了(废话,早就玩腻了,什么时候的游戏了)

Step6
在命令行中敲入
python index.pyw 8 3
不出意料,你会得到下面这个界面

现在让我们开始不一样的2048吧(请看下一章)
大场地
在命令行中敲入执行语句的第一个参数可以设定场地的大小,就像下面那个语句里的8。
python index.pyw 8出现的界面就像下图一样,这时候你试着玩玩看。

是不是发现漫无目的,完全没有尽头,有种向地平线去的感觉?
实际上,这个尺寸不是给人类玩的了,是给机器玩的,让我们看看下一节。

闪电侠
接下来要让一个名叫"闪电侠"的机器人来帮我们跑,我们按下键盘上的a键来召唤闪电侠。
等过一段时间后再按一次a送走闪电侠,然后让我们来看看效果。

是不是有些数字根本没有在以前的2048上见过?有没有概率学方面的大神可以计算出这种随机玩法填满这样的一个场地需要多少种不同的格子,提点小弟一下。
知道种类之后就好算出填满大概要多少时间了,以我的电脑为例,出了上图这种有2M的格子用了大概2个小时,也就是说有21种不同的格子,而以现在这种出2和4的速度,出到1G的格子的时候需要512 * 2小时,也就是出30种不同格子需要1024小时,这么看,闪电侠什么的,也不那么快嘛
看到上面,你肯定会觉得研究概率学然后算出答案是有点意思的,但是这个2048的玩法就没什么意思了。实际上也确实是这样,所以我们继续挖掘出了下面这个玩法。

简单AI
实际上上面的闪电侠根本不能算机器人,只能算一个随机脚本,用来测试机器的CPU性能还差不多,并不好玩。
所以我们想让脚本有一点智能:

哈哈哈,虽然上面已经走到头了,但是有那么一点厉害了。作为脚本,虽然远远没有攻克这个游戏,但是出一点成绩了,原谅我的没有追求
让我来说说这个智能的火苗怎么来的:

http://blog.codinglabs.org/articles/2048-ai-analysis.html
如果哪位大神有什么其他AI的实现也请指点小弟一把,这是我的QQ:124663063。

其他玩法
不多说,看图吧

自娱自乐

"大"数据
鸣谢
博主张洋的AI技术文章http://blog.codinglabs.org/articles/2048-ai-analysis.html
以及最重要的:小丽子的鼓励

下期预告
这次2048的魔改玩的还是蛮愉快的,下次将魔改一个大家都知道的游戏:俄罗斯方块,我保证这是世面上没有的一款魔改,而且我是用自己擅长的网页技术来写,也就是说这是一个页游,哈哈哈,大家有没有想起当年被4399支配的恐惧。

文章更新时间
2017-7-27 : 首次发布