Github 助你实现“家国梦”

简介: 首先一点,这个游戏有30个建筑,但是只有9块地,同时会有各种不同的政策影响建筑的收益。所以,安放不同建筑是会影响收益高低的,且在一定的条件之下必然存在一个最优的摆放方式。这实际上就是算法中一个典型的最优化问题。

长假期间,在几个群里被一款极具正能量的游戏给刷屏了:


游戏名《家国梦》


毕竟是开发过王者荣耀的天美工作室出品,游戏画风看着挺舒服,又是我这种佛系玩家+强迫症喜欢的放置类游戏。于是乎,沉迷了好几天……


简单给没玩过的朋友介绍下,这个游戏的主题就是城市建设,有点类似以前的“偷菜”游戏,到点收钱然后继续升级。游戏还加入了照片收集功能,主要是全国各地的著名景点、文化、美食等,这点像之前很火的《旅行青蛙》。


作为一个曾经的游戏从业人员,我体验了几天后,除了觉得游戏界面风格确实不错外,也不得不佩服下游戏里的数值设计。如果你是一个经常玩放置类游戏的玩家会有体会,很多此类游戏玩一下午之后就会感觉很无趣。而《家国梦》这点上做得不错,另外各省市及好友排行这个设计也是大大增加了玩家“肝”的动力。


不过,我今天不是来推游戏。是想借此游戏,说两个点,也许对你会有启发。


首先一点,这个游戏有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 | 新手建议

干货:如何debug |  一图学Py  | 知乎资源 | 单词表案例:漫威API | 查天气 | 监控大V | 红包提醒

相关文章
|
10月前
|
前端开发 程序员 C#
五分钟教你使用GitHub寻找优质项目
五分钟教你使用GitHub寻找优质项目
158 0
|
Web App开发 算法 搜索推荐
github开源学习项目推荐(2)
这本书里的文字,全部的意义,只有两个字:“启发”。 有些知识,不仅要了解,还要深入了解。为了深入了解,不仅要学习,还要实践,更要反复试错,在成功中获得激励,在失败中汲取教训,路漫漫其修远,上下求索才可能修成正果。小到开车,大到创业,各种所需要的知识莫不如是。面对这样的知识,我们要了解
151 0
|
机器学习/深度学习 算法 数据挖掘
github开源学习项目推荐
洛雪音乐助手是一款完全开源免费的音乐软件,在 github 上已经收获了将近 2w stars 完全开源免费 界面美观,主题多 支持多平台歌单导入 支持自定义音源,享受超高音质 支持多平台数据源,聚合搜索,数据齐全 支持 windows,mac,linux ,android 平台
213 0
|
Arthas 算法 Java
这5个GitHub项目+3个网站,助你一飞冲天!
这5个GitHub项目+3个网站,助你一飞冲天! 小伙伴们周末好呀,这次来更新一波学习资源啦~ 👍 之前推荐过一些书,这次我们就来看看 4ye 平时常关顾的一些学习网站叭!😋 (同时会更新在菜单栏的 宝藏资源 中,方便查找) 资源一览 image-20210807235820378 CyC2018 / CS-Notes 高达 136K star 的项目! 😄 📚 技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计 概览图 地址👉 github.com/CyC2018/CS-… ima
631 0
|
Web App开发 缓存 前端开发
【Github】玩转Github系列之三——史上最全Github加速手段
【Github】玩转Github系列之三——史上最全Github加速手段
2735 0
【Github】玩转Github系列之三——史上最全Github加速手段
|
机器学习/深度学习 算法 搜索推荐
强烈推荐 | 竟然有这么优质的github项目!
不是一个标题党,想出这么一个名称的确有一些自卖自夸的感觉。 一直以来,我推荐了很多其他人的项目和开源的实用工具,这一次我鼓起勇气来推荐一下自己的开源项目,虽然对比于这个标题存在很大差距,甚至在有一些高手眼里有一些班门弄斧的感觉,但是这也的确是整合八个月来的心血,我也一向坚持一个原则,如果能够让一个同学觉得有用,这就值了。
强烈推荐 | 竟然有这么优质的github项目!
|
JavaScript 前端开发
GitHub开源蔡徐坤打篮球
GitHub开源蔡徐坤打篮球
GitHub开源蔡徐坤打篮球
|
设计模式 IDE JavaScript
GitHub 标星 167k!你要的优质书籍这都有,还开源!
GitHub 标星 167k!你要的优质书籍这都有,还开源!
385 0
GitHub 标星 167k!你要的优质书籍这都有,还开源!
Github项目搜索技巧! 教你高效地在GitHub上寻找开源项目
本篇文章是一篇Github项目搜索技巧介绍的文章。主要帮助大家如何熟练使用Github的搜索来找到自己想要的项目。介绍了项目名称搜索,项目详情搜索以及项目描述搜索几种方式。最后介绍了如何寻找到一个高质量的,值得学习的项目。通过这篇文章的指导,可以让你高效地寻找到优秀的开源项目来提升自己的项目经验。
426 0
Github项目搜索技巧! 教你高效地在GitHub上寻找开源项目