3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 1120|回复: 0
打印 上一主题 下一主题

[原创] 有没有人即想保持发电机默认功率,有时又想提高功率(有点错误又改过了)

[复制链接]

141

主题

857

帖子

2871

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
270
金元
17914
积分
2871
精华
0
注册时间
2014-11-30
跳转到指定楼层
主题
发表于 2022-4-23 11:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fanvalen 于 2024-7-7 20:41 编辑

今下午有测了一边发现造出的发电机功率还是有问题
造出来的发电机不打芯片f2显示居然也有3.5倍 ,就是不知道实际发电有没有加那么多电量
从原来的+350f改成*8f,如果是加的50f的地方是0+350就是1+3.5,我需要的是没打芯片时是1+0,所以乘才是正确的

今天我说的就是工程师调整的微芯片,这个东西有时效性但是效果不太好,今天我就提高一下他的效果
找了一圈没找到这个微芯片的效果在哪改,
那我们来直接改结果
首先随便找一个可打芯片的发电机
煤炭发电机就你了GeneratorConfig
buildingDef.GeneratorWattageRating = 600f;
上面的600f我们都知道是默认功率600w
跟踪一下发现Generator里有重新赋值
public float WattageRating
        {
                get
                {
                        return this.building.Def.GeneratorWattageRating * this.Efficiency;
                }
        }

        public float BaseWattageRating
        {
                get
                {
                        return this.building.Def.GeneratorWattageRating;
                }
        }

发现一个WattageRating和BaseWattageRating
WattageRating里面有一个乘法,另一个则没有
那我可不可以理解成有乘法的就是打了芯片的后的功率
看一下this.Efficiency是什么值
private float Efficiency
        {
                get
                {
                        return Mathf.Max(1f + this.generatorOutputAttribute.GetTotalValue() / 100f, 0f);
                }
        }
等于一个
1+x/100f
等于多少呢
都知道打了芯片的功率提高了50%
return this.building.Def.GeneratorWattageRating * this.Efficiency;根据这个计算600w*1.5倍得到900w
那么1+x/100f=1.5
x=50f
要修改倍率
this.generatorOutputAttribute.GetTotalValue()这个改不了
那我直接在结果上乘可以吧
(this.generatorOutputAttribute.GetTotalValue() *8f)
50f*8f=400f
400f再除100f等于4
1+4=5好家伙直接提升到5倍
最后你们需要修改的地方是private float Efficiency
        {
                get
                {
                        return Mathf.Max(1f + (this.generatorOutputAttribute.GetTotalValue() *8f) / 100f, 0f);
                }
        }

芯片持续效果的时间由小人基本属性等级影响高等级的小人持续时间就长,那搞小人等级呗
不想搞等级的我还有一个方法
Tinkerable.MakePowerTinkerable下有个
tinkerable.effectMultiplier = 0.025f;这是什么效果倍率说的是持续时间倍率

tinkerable.effectMultiplier = 0.025f*10f;直接提高10倍时间爽歪歪
上面还有一个
tinkerable.SetWorkTime(180f);打芯片所用时间,艾玛用了一天的1/3,要是机器多你不用干别的了就跟发电机耗着
so 你们懂得干它
以上数值仅供参考
本来我想搞一下农民呵护效果的也是没找着
有知道的大佬指点一下
虽然有了果虫甲虫的高效率但不是都能获得到这动物,还是小人直接操作爽



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2026-3-27 05:05 , Processed in 0.027649 second(s), 16 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表