星露谷物语 运势系统源代码测试解析 运势怎么计算
4月末入手stardew valley,玩了一个档。基本上能玩的元素都玩到了,觉得这个游戏的许多地方都很有趣,重要的是这个游戏是xna的,因此想看一下。在网上也没有什么比较好的关于运势系统的分析攻略,所以就选择了这个来分析。
首先打开游戏中的人物状态这里,发现有5个人物的属性等级,farming,mining,foraging,fishing,combat这5个技能类型,在这里我发现其实同等级的技能类型不止有5个,而是6个。
第六个是Luck,也就是幸运等级,只不过这个不会显示在玩家可见的状态栏里。
这就解释了吃某一些料理的时候会增加人物的运气等级,其实增加的就是这个属性。
通过代码发现,这个运气等级其实和我们每天早起看电视的那个运气并不是同个东西。
在代码中显示:运气等级在代码中的名称叫做:LuckLevel,而每日的运气名称叫做:dailyLuck,许多取决于运气的几率事件都是将这两个运气值同时进行计算的。
这段代码显示的就是每天在电视上看到的内容,会根据每日随机的运势值来进行显示
那每日运势这个东西是如何计算的呢?
是这一句话进行随机的
意思大概是,会首先在0.0-1.0之间进行随机一个数字,如果这个数字小于0.8,同时玩家是有“魅力”的,这样的话那运气是固定为0.1,也就是“非常开心”,但这个还不是最幸运的情况,最幸运需要到0.12。如果这个数字大于0.8,或者玩家不是“有魅力的”,那么就会对玩家再进行一次随机,相当于是在-0.1-0.1之间随机。这个概率就比较平均了。
在游戏中,我们一般会遇到几种运势:
1.精灵非常开心(大于0.07)
2.精灵很开心(0.02-0.07)
3.命运掌握在自己手中(-0.02-0.02)
4.精灵不太开心(-0.02--0.07)
5.捣蛋(小于-0.07)
但是,在代码中发现还有三种不同的运势,我是没有遇到过,不知道有没有人玩到过这三种运势:
1.The spirits are joyous! Someone gave them a nice offering today, and they are very pleased.意思大概是今天精灵极开心,会带给你特别好的一天。(0.12)
2.This is rare. The spirits feel absolutely neutral today.意思说这很罕见。今天的精灵绝对中立。(0.00)
3.The spirits are furious. Apparently someone tried to give them a worthless offering... Hmm. It's unwise to play jokes on the spirits!意思是精灵很愤怒。显然有人试图给他们糟糕的东西,给精灵开这个玩笑很不明智!(-0.12)
不过,在代码中分析,按照正常的随机算法,是不会出现0.12或者-0.12的,不知道这是不是作者没完成的设定,或者我还没有发现。而0.00这个值是可以出现的,和它自己说的一样,这个确实比较罕见(0.5%几率)。
还有就是最上面说的玩家是有“魅力”的,这个时候,有90%的几率是好运(80+20*50%)。那什么是有魅力的呢,这个我还没有仔细的分析过,貌似只有作者Debug的时候才用到,或者与创建人物时写的那个”喜爱的东西“有关。
那这个运势都会影响什么东西:
1.动物出产的产品
2.矿洞死亡后物品掉落
3.夏天的闪电
4.作物收获
5.蟹笼
6.送礼
7.敲碎石头后掉落物品
下面逐一进行介绍。
« 1 2 3 »友情提示:支持键盘左右键"←""→"翻页