一只双眼皮 发表于 2018-7-13 18:14

【2018.07.13】漫漫长夜 1.35版 圣火令mod 《命运》系列随机向的1.35复刻(公开部分代码修改位置!想成神的可以对照动手了)

本帖最后由 诉说一世哀愁 于 2018-12-16 23:09 编辑

从1.30 复刻到1.35 的《命运》版随机向Mod
因其中有数个新制“方法”,制作速度比普通mod慢一丝丝(好吧实际上慢了不少)

功能介绍及所改代码位置(有动手能力的可以自己试着改一改,摆脱伸手党成为大神的机会,请自己把握)

1、肥羊瘦狗:猎物获得肉的最小值*50%-最大值*150%
InitializeResourcesAndConditions

2、寒温难测:烤肉耐久随机加减0-100,不再固定+50
SetCookedGearProperties

3、鹰视狼顾:木炭开图随机0.5-3倍范围、枪开镜1不加视野
DoDetailSurvey 开图
ToggleZoom和UpdateZoom 开镜

4、损益均衡:所有物品随机加减耐久
Degrade

5、颗粒归仓:植物采集时有概率采空,也有概率翻倍,还有概率原地重生
CompletedHarvest 先随机 50% 不消失
EnterInspectMode 再随机 25%空 50%正常 25%增加

6、夜礼服假面的蔷薇:玫瑰茶使用时产生额外的随机效果

新制函数GiveHealth
新制函数RoseTea
OnFirstAidCompleted 调用RoseTea

<=2 水-50%饱食-50%(+50 -1250) 食水降低为减益,25%
>=5 精神-50%(+50)      精神降低增减益不定(比如空血满精神时为增益)50%
>=7 补血50(+50)      补血增益25%
=3 4 时无特殊效果      无效果25%

7、隐藏属性:隐藏七 代码位置不公布

8、烧火引(以此证明咱是原代码持有者)
RefreshFuelSources

没有测试!没有测试!没有测试!
因为公司比较忙,放出未测试版。如有bug请及时回馈
**** Hidden Message *****

司空藏天 发表于 2018-7-13 22:58

先来探路!

大木熊 发表于 2018-7-14 00:15

所有物品随机加减耐久这点,加减多少?是每天都计算吗?

一只双眼皮 发表于 2018-7-14 11:42

大木熊 发表于 2018-7-14 00:15
所有物品随机加减耐久这点,加减多少?是每天都计算吗?
每次使用,耐久随机加减。原版损坏速度固定,这不合理。物品的损坏过程是普遍随机又存在突发意外的。比如刀砍肉砍到骨头关节上,砍缺了口子,一次就损坏很多耐久。也可能顺着肌理拉到肉上,相当于磨刀效果,对刀刃没有伤害反有促进。
因此,耐久随机加减是指 :
物品每次使用时,耐久变化乘以损坏系数(新添加的随机系数)范围从 +0.25 到 -1.75 。

比如 磨刀石 耐久为100 ,原版每次使用固定 - 4 ,你知道它使用25次肯定会坏,这就不科学不合理成了一种套路。
现实中,你怎么可能知道一块磨刀石什么时候坏掉呢?

现在变成使用时,有可能最好情况+ 0.25*4= +1 耐久,也可能出现最坏情况-1.75*4= - 7耐久
我们都知道数学统计最终概率是取在中值50% 这个点上的,因此 +0.25 -1.75 的是中值是 -1。
最终磨刀石肯定会损坏,而且每次使用时损坏的系数仍然是-1,但它的损坏过程变得随机起来。

《命运》把选择权从游戏系统交还给玩家。你可以选择随意使用某些工具,它会按正常速度(-1系数)坏掉。
你也可以非常珍惜某件工具,用S/L大法,让它每次都加耐久,或至少不减耐久,就像你在现实中,对一件心爱的物品小心翼翼,它会陪伴你更长时间。
这,就是《命运》


q86268289 发表于 2018-7-20 22:33

谢谢大佬分享

轩暮印 发表于 2018-7-26 12:04

你好,请问你是用什么工具反编译的,以及,反编译后生成的.cs文件怎么重新编译成.dll?
我想木炭开全图以及关闭哈气效果

一只双眼皮 发表于 2018-7-27 15:03

轩暮印 发表于 2018-7-26 12:04
你好,请问你是用什么工具反编译的,以及,反编译后生成的.cs文件怎么重新编译成.dll?
我想木炭开全图以及 ...

反编译工具是dnspy。高版本(需要.net 4.70以上)的dnspy可以直接改代码,即时编译不需要生成.cs 重编。
3.X.X版本的dnspy不需要 .net 4.7的支持,适合win7系统(我用的就是win7),只能用修改IL指令的方式编译。
开图涉及的函数为DoDetailSurvey 用搜索功能找到这个“方法”进行修改。
源代码
this.DoNearbyDetailsCheck(this.m_DetailSurveyRadiusMeters);
this.Enable(true, true);
把this.m_DetailSurveyRadiusMeters 乘以一个定值或range范围值,即可修改开图半径。
一炭开图,*100绝对够了。
呵气我没研究,可通用资源列表查找分析想修改的位置。

轩暮印 发表于 2018-7-28 20:05

一只双眼皮 发表于 2018-7-27 15:03
反编译工具是dnspy。高版本(需要.net 4.70以上)的dnspy可以直接改代码,即时编译不需要生成.cs 重编。
...

谢大神,搞定了,虽然地图都背的差不多了,但是强迫症不能看到干净的地图真的超难受,现在爽了
帮其他有意动手的人踩个坑:请在初始路径下修改文件,不然会编译失败的




一只双眼皮 发表于 2018-7-29 20:44

轩暮印 发表于 2018-7-28 20:05
谢大神,搞定了,虽然地图都背的差不多了,但是强迫症不能看到干净的地图真的超难受,现在爽了
帮其他有意动 ...
知易行难。很多人想试试,却下不了决心动手,或者半途而废了。我从纯白开始制作第一个功能,就是因为某个游戏在测试版,外挂没有同步更新,被逼的。

所以现在再告诉你:在已发布的某个mod中,开放过一炭开全图功能,你会想打我吗:lol
你现在一定不想;P一定的


稀有』『懒虫_~z 发表于 2018-7-30 22:56

哔了狗了,解压码呢?

一只双眼皮 发表于 2018-8-4 14:56

稀有』『懒虫_~z 发表于 2018-7-30 22:56
哔了狗了,解压码呢?

.dll 文件直接替换。不存在打包,何来解压?

xinghenliunian 发表于 2018-12-7 04:12

一只双眼皮 发表于 2018-7-14 11:42
每次使用,耐久随机加减。原版损坏速度固定,这不合理。物品的损坏过程是普遍随机又存在突发意外的。比如 ...

也不合理,假如我宰了几百头(● ̄(エ) ̄●)后,我还特么每次往大腿骨上砍,活该要死在加拿大北部:)

一只双眼皮 发表于 2018-12-7 10:03

xinghenliunian 发表于 2018-12-7 04:12
也不合理,假如我宰了几百头(● ̄(エ) ̄●)后,我还特么每次往大腿骨上砍,活该要死在加拿大北部
...

你说的有道理啊。回头制作新版本,剥皮切肉的时候按采集技能的等级,降低物品基础损伤,再加一次随机。
原版采集技能提高,会缩短采集时间,变相影响刀斧耐久。但这个影响太小。

星辰の羽翼 发表于 2018-12-8 09:38

作者能移植到1.40版本吗

一只双眼皮 发表于 2018-12-12 11:50

星辰の羽翼 发表于 2018-12-8 09:38
作者能移植到1.40版本吗

在等12月的剧情更新所以没移植1.40。
新mod实现了快捷键控制。下次移植,会变成按键有功能,不按键就原版这样的mod玩法。

星辰の羽翼 发表于 2018-12-16 19:13

一只双眼皮 发表于 2018-12-12 11:50
在等12月的剧情更新所以没移植1.40。
新mod实现了快捷键控制。下次移植,会变成按键有功能,不按键就原版 ...
对了我找到一个外网的mod加载器还有一些附属的mod,你的mod能修改成类似的加载方式吗https://github.com/zeobviouslyfa ... aller/wiki/Mod-List]https://github.com/zeobviouslyfakeacc/ModLoaderInstaller/wiki/Mod-List

一只双眼皮 发表于 2018-12-16 22:55

星辰の羽翼 发表于 2018-12-16 19:13
对了我找到一个外网的mod加载器还有一些附属的mod,你的mod能修改成类似的加载方式吗https://github.com/z ...

这个mod很好,以加载器的方式打开。也许下一步会把所有功能都置入按键。按则开,不按则关。
因为目前的圣火令mod制作是完全以代码体现,不牵扯模型,因此没有涉及程序接口,做的完全内置。
有机会会尝试这种作法。

c24659047 发表于 2018-12-18 22:02

感謝大大分享 支持!!!

890815lucky 发表于 2018-12-21 12:58

多谢LZ分享1ganjbun `

Hanxill 发表于 2018-12-22 21:52

一只双眼皮 发表于 2018-12-7 10:03
你说的有道理啊。回头制作新版本,剥皮切肉的时候按采集技能的等级,降低物品基础损伤,再加一次随机。
...

大部分存在使用技巧的工具,其所有的【损耗】都相当于在“交学费”。
也就是:累计损失的【耐久】*学习能力(默认1?)=对应工具使用技巧的增长
技巧增长的效果是什么?
差不多就是:降低每次使用减少的耐久

而装备的耐久损失的原因不同,因此没有对应的使用技巧。
参照现实,对应的是修复技术——每次修复的量都转化为经验,以下一次修复地更好。

一只双眼皮 发表于 2018-12-23 14:46

Hanxill 发表于 2018-12-22 21:52
大部分存在使用技巧的工具,其所有的【损耗】都相当于在“交学费”。
也就是:累计损失的【耐久】*学习能 ...

关于显示一个新能力,首先要解决HUD。就是在技能栏中显示出这个效果。
这方面我很欠缺。因为不是科班出身,是玩家出身的程序猿,没有系统学习过unity框架。
因此从实现方面有难度。需要很多时间。
另外那个总磨损交的学费建议,看明白了。
目前游戏存档中有各种记录比如开枪次数,命中次数等。会记到存档中下次打开游戏加载。
因为损耗值是float,并非int,因此它不是一个方便提取显示的整数数值。让玩家看到一个1.5368978143这样的值是没有意义的。
且把这项数据增加到存档中会破坏原存档的结构。如经过长时间调试,可以避免这种负面影响,会将此功能集成。
建议使用1.41之后的mod。因为从1.41开始突破了单项物品耐久损耗限定,可自由定义每一种物品的耐久消耗速度。
暂时是把磨刀石和擦枪器设定为无限耐久。
这样,在使用工具后,只要注意及时磨刀、擦枪,就可以实现永续利用。
详情参看http://bbs.3dmgame.com/thread-5829751-1-1.html
下一步打算实现青枫、白桦的物资刷新。正在努力啃代码中

long120611 发表于 2018-12-23 17:15

感谢分享

兜兜0522 发表于 2019-1-22 17:28

感谢楼主

lic286324487 发表于 2019-2-21 14:15


感谢楼主

帅的浪费 发表于 2019-4-17 16:09

地对地导弹地对地导弹

fengqing327 发表于 2019-8-11 03:28

11111111111111

YC_123 发表于 2019-8-11 13:18

记得我回复过的。

xiaofs2013 发表于 2019-8-24 12:04

非常nice

愛妳墲誨 发表于 2020-6-12 14:19

愛妳墲誨,如果您要查看本帖隐藏内容请回复

AHDAHGH 发表于 2020-9-14 12:24

感谢分享
页: [1] 2
查看完整版本: 【2018.07.13】漫漫长夜 1.35版 圣火令mod 《命运》系列随机向的1.35复刻(公开部分代码修改位置!想成神的可以对照动手了)