长假期间,在几个群里被一款极具正能量的游戏给刷屏了:
游戏名《家国梦》
毕竟是开发过王者荣耀的天美工作室出品,游戏画风看着挺舒服,又是我这种佛系玩家+强迫症喜欢的放置类游戏。于是乎,沉迷了好几天……
简单给没玩过的朋友介绍下,这个游戏的主题就是城市建设,有点类似以前的“偷菜”游戏,到点收钱然后继续升级。游戏还加入了照片收集功能,主要是全国各地的著名景点、文化、美食等,这点像之前很火的《旅行青蛙》。
作为一个曾经的游戏从业人员,我体验了几天后,除了觉得游戏界面风格确实不错外,也不得不佩服下游戏里的数值设计。如果你是一个经常玩放置类游戏的玩家会有体会,很多此类游戏玩一下午之后就会感觉很无趣。而《家国梦》这点上做得不错,另外各省市及好友排行这个设计也是大大增加了玩家“肝”的动力。
不过,我今天不是来推游戏。是想借此游戏,说两个点,也许对你会有启发。
首先一点,这个游戏有30个建筑,但是只有9块地,同时会有各种不同的政策影响建筑的收益。所以,安放不同建筑是会影响收益高低的,且在一定的条件之下必然存在一个最优的摆放方式。这实际上就是算法中一个典型的最优化问题。
只要有完整的数据、明确的规则,这就是一道可解的数学题。并且有人还真这么做了:
有人会说了,游戏嘛,随便玩玩就好啦,搞成这样都没有乐趣了。这样想当然是没任何问题啦。但偏偏有人喜欢钻研此类问题,而且绝对不会限于这一个游戏,他们遇到生活中各种问题都可能会去琢磨下。久而久之,就出现了分化:有人到临找工作时,发现简历上怎么也想不到什么特别可写的;而有的人则能折腾出各种项目经验来。
就拿这个游戏收益策略来说,你把完整数值扒出来,分析下各种规则加成,如果能拉一张带公式的 Excel 的表格,再配上几个收益曲线,那就是一个游戏数值策划的案例。照这个路子去拆解几个热门游戏,就足够拿去应聘游戏策划岗位了。
而如果更进一步,你把这些做成一个带界面的 GUI 桌面软件,或者一个在线网页供全网访问,那就是一个具有“实用价值”的小项目。放在简历里能加分,哪天在网上火一把也不是没可能。
最近我们搞项目开发小组,不少同学为了选题而头大。其实如果你平常有意识地比别人多想一步,可能就会发现很多值得用编程来解决的问题。
第二点我要说的是,你猜我是怎么找到上面这些分析文章和工具的?
我在布置建筑的时候就想到了关于最优策略的问题,我知道一定有和我一样想法的人。本着“不重复造轮子”的原则,我打开了 Github,搜索了下“家国梦”:
好么!除了最优策略的分析工具,连自动收钱、自动卸货什么的也都有了……
玩游戏用外挂,尤其是玩竞技类游戏,那我是绝对反对的。我要说的是,Github 绝对是个巨大的宝藏,用好它可以节约大量时间,那就等于是节约了金钱和生命!
对于一个编程学习者来说,除了把 Github 作为代码上传的“网盘”之外,几个建议的使用姿势:
1. 寻找现成的轮子。当你的目的是为了实用而非学习时,并无必要每个功能都自己实现,尤其是一些很通用的功能。通常 Github 上都会有成熟的解决方案。你可以直接拿来或略经修改后使用,也可以作为模块引入到自己的项目中。不过需要留意下项目中的 LICENSE,确保是符合你的使用场景的,以免造成侵权。
2. 学习优秀代码。很多优秀的开源项目都在 Github 上,你可以通过阅读这些代码来学习更好的编码风格和设计模式(需要有一定的基础后进行)。一般来说,star 数量高的项目会更好。
3. 获取学习资源。现在有很多人会把 Github 当作资源目录或者学习文档来使用,比如很多 awesome 系列(awesome-python-cn 之类)收集汇总了各种学习资源。尽管这种使用方式遭到不少开发者的反对,但对于学习者尤其初学者来说,的确是一个快速获取优秀资源的捷径。只是希望各位切记,像松鼠一般只顾收藏资源是没有什么意义的,不如认认真真把少数几个教程学完学透彻。
单单作为一个代码版本控制系统来说,Git 并不是多么不可替代的创新,但在其基础上衍生出的 Github 却着实改变了开源界甚至整个开发界的生态。因此,了解并使用 Github 是非常有必要的。
对于 Github 的使用技巧,可以参考下我们之前转载的一篇文章:如何在 GitHub 上找到你要的代码?
文中提到的一些项目和帖子地址,有兴趣可以自行去尝试:家国梦建筑摆放计算https://github.com/SQRPI/JiaGuoMeng写了个计算建筑摆放最优策略的脚本https://bbs.nga.cn/read.php?tid=18677204家国梦建筑最优化计算器exe版https://nga.178.com/read.php?tid=18754763单建筑收益公式及一些tipshttps://bbs.nga.cn/read.php?tid=18675554家国梦最优组合计算在线版http://other.qikor.com/jiaguomeng/
其他内容回复左侧关键词获取:python :零基础入门课程目录新手 :初学者指南及常见问题
资源 :超过500M学习资料网盘地址项目 :十多个进阶项目代码实例如需了解视频课程及答疑群等更多服务,请号内回复 码上行动[推荐阅读]经验:选专业 | Py转行 | 我用Py | 新手建议