菱角D孤单 菱角D孤单
关注数: 37 粉丝数: 198 发帖数: 7,983 关注贴吧数: 18
关于生命恢复 之前有人问关于怒气的时候,我发现我以前的一些想法是错误的 例如,自定义一个增加攻击力的技能,为test好了 给test设置等级为2级, 然后,触发里如下操作: 1,给单位添加test, 2,设置单位的1级test的DataA的数据为1000, 3,为单位升级test技能, 4,为单位降级test技能。 这样,该单位就能获得1000点绿字攻击。护甲也可以这样。 以及,加速手套,速度之鞋,类似添加绿字的同样可以。 这么做的好处就在于,不用二进制添加删除技能了。 然而,这个方法对增加生命上限、生命恢复、绿字属性无效, 魔法应该也是如此,没测试过,懒癌犯了。 不过,像邪恶光环,这类光环类的,可以用这种方式改变,只是过程需要变化一下: 1,给单位添加test, 2,设置单位的1级test的DataA的数据为1000, 3,删除单位test技能, 4,删除单位test的魔法效果, 5,给单位添加test。 目的是为了刷新光环buff(不过这类技能删除技能会保留数据,不像上面的一类) 但这次问题引发了我一个思考,为什么生命恢复不能改? 我直接使用japi修改,SetUnitState(农民, ConvertUnitState(83), 1000.00) 即,将农民回血速度改为每秒1000,但实际游戏中无效。 于是,我将农民回血改为仅在白天,进游戏,当游戏从晚上变为白天时,这个回血才生效。 而如果农民回血改为始终,进游戏,变化时间依然不会生效,按原来的恢复速度回血。 好,接着,我再将农民改为仅白天回血,并给他个恢复戒指的技能, 用japi修改数据法,将恢复技能改为1000, 晚上,按+2的来算;白天,还是按+2的来算。 由此,我得到一个结论: war3单位生命恢复机制,应该是把所有满足回血条件的单位放到一个单位组里,然后中心计时器回血。 这个阶段由于是按计时器内记录的单位回血,所以即便单位本身的回血变化了,不会更新到计时器中。 当单位遇到了回血条件变化时,满足的加入计时器,不满足踢出计时器, 而在加入的过程中读取单位本身的生命恢复速度,因此才能完成回血速度的更新。 魔法恢复方面应该也是如此吧。 至于恢复戒指类技能,是类似另外单独的持续治疗技能。因为在夜晚,农民不回血的情况下,我给他添加恢复戒指技能,他开始回血了。但这个数值只读取添加这个技能的时候,之后改变技能数据并不会更新。而删除技能再添加,并不会保留之前我们更改的数据。 至于邪恶光环这类技能,可能是由于光环类技能不叠加的关系,导致数据可以保留,因此,删除技能再添加技能可以保留之前更改的数据,以让它更新。同样,它也是持续恢复生命类的,根据固定值或生命恢复百分比的值,来持续回复生命。 这些都不是直接将数值添加进单位生命恢复速度这项属性中的!!! 喜欢测试的人可以去试试看,无论怎么测,生命恢复速度都只有一项,且添加恢复戒指与邪恶光环,都不会变化。
关于是否敌人的判定 关于一个角色是否是玩家敌人(罗盘上显示是红名的) 1,关于战斗时的判断,攻击目标中包含玩家 * 玩家提示[警惕]时,敌人知道玩家存在,虽然未发现玩家。此时攻击目标包含玩家。 * 玩家提示[潜行]时,敌人不知道玩家存在,可能在与其他人作战。此时攻击目标不包含玩家。 * 无论是否在战斗中,若其对玩家有敌意,攻击玩家的意向一般为100。 1)在战斗中,无论是否该角色是玩家的队友、或在玩家阵营中,只要其攻击目标包含玩家,就会攻击玩家。 IsInCombat == 1 && IsCombatTarget player == 1 2)无论是否在战斗中,无论是否该角色是玩家的队友、或在玩家阵营中,只要其具有原本的攻击玩家的意向,就会在战斗中攻击玩家。但有时候在战斗进行一段时间后,该意向值反而为0,不过仍在攻击玩家。 GetShouldAttack player > 0 * 攻击意向会决定攻击的目标、仇恨值的转移。 * 即便角色自信为0,一进入战斗中就只会逃跑,其也处于战斗中,以玩家为攻击目标,攻击玩家意向为100。 2,无论是否在战斗中,非玩家队友的角色,若满足以下侵略性条件,均会以敌人红名显示 1)侵略性为疯狂时,会攻击任何靠近的人(如果是玩家队友,有些角色会在战斗中变红名,但不会攻击玩家,之后变回) getav aggression == 3 && getplayerteammate == 0 2)侵略性为强时,会攻击中立者与敌人 getav aggression == 2 && getplayerteammate == 0 && getfactionrelation player < 2 3)侵略性为中时,仅攻击敌人 getav aggression == 1 && getplayerteammate == 0 && getfactionrelation player == 1 * 侵略性指标: 0 - 无,不主动参与战斗。 1 - 中,主动参与战斗,仅攻击敌人。 2 - 强,主动参与战斗,攻击非自己人的其他任何人与敌人。 3 - 疯狂,主动参与战斗,攻击任何敌人,靠近优先。 * 对于侵略性为无时,角色不会主动攻击,除非被玩家攻击或脚本触发。此时会因处于战斗中而被第一条规则检测到。 * 阵营指标:(多个阵营按各个阵营rank值最高的取) 0 - 无关系。 1 - 敌人。 2 - 联盟。 3 - 朋友。 * 联盟与朋友的区别就是类似“动物之友”特技中,动物不会帮助联盟,而会帮助朋友。“联盟”是1级,“朋友”是2级。 3,无论是否在战斗中,若敌人满足以下犯罪条件,均会以红名显示 1)玩家偷窃了别人的东西,无论是谁(包括队友),只要他不高兴了,都会攻击玩家 GetActorCrimePlayerEnemy == 1 2)玩家攻击杀害了一位无辜的村民而导致其它中立村民的敌对。当然,如果这些村民中有人是玩家的队友或与玩家阵营是联盟或朋友的关系,则会帮助玩家,同时也不会获取阵营是玩家敌人的flag。 GetActorFactionPlayerEnemy == 1 && getplayerteammate == 0 && getfactionrelation player < 2 貌似就这些吧,辐射3里面也没看到自带的判断是否为玩家敌人的函数。
自己做了个机械师宝宝的测试 机械宝宝大致数据 基础生命=玩家基础生命×4×周目加成的倍数 基础近战攻击=玩家基础攻击×2 电击攻击=每轮为玩家基础攻击×3 左边技能 ================================= 振奋人心:给一个队友恢复护盾 3秒内每秒恢复10%最大值 [按50000的盾来算,不确定是固定值还是百分比] bug:有时会给敌人回复护盾(如果敌人有盾值真的会回复) cd:20s 消失的时候如果技能放出来,不会中断 优先级最高的技能,也是导致部分其它技能bug的原因。 因为机制导致宝宝本来打敌人时,突然要给你回盾,导致攻击技能丢给你,或者回盾技能丢给敌人。 -------------------------------------------------- 机关算尽:宝宝或你杀敌,宝宝存在时间+5s,每层你和宝宝近战攻击+4% 虽然视觉效果有一次爆炸的感觉,但实际没有伤害。 剩余存在时间上限60秒不变,就是58秒剩余时间杀一个敌人后只能变60秒 bug:有时候人杀敌但宝宝不在战斗的话貌似不加时间跟层数。 -------------------------------------------------- 壮硕小马:每级+自己4%血,+宝宝2%血 宝宝刚招出来的时候血会不满的(该技能加了血上限但没给当前的血), 在招出来准备完毕之后(大概半秒后)才回满血。 -------------------------------------------------- 吵闹爆破:一次爆裂打击 范围:中等 伤害:爆炸伤害,114000 附加:大部分会被击退至该技能范围外 过程时间:3s cd:26s 特殊:攻击加成可以提高次技能伤害! -------------------------------------------------- 不分彼此:你的盾复制给宝宝 如果盾带反弹尖刺效果,造成的伤害算宝宝的,不给你叠加疯狂状态 中间技能 ================================= 灼热视线:灼烧单个敌人 距离:中等 伤害:火焰伤害,11500×16(次)=184000 [这里不知道为什么数出来16次,难道持续伤害频率是5/s吗] 附加:燃烧伤害,1000×4(频率)×8(秒)=32000 过程时间:3s cd:13s 对生物打起来很好,对机械打起来很糟糕 消失的时候如果技能放出来,不会中断 bug:若学习振奋人心技能,有时会对玩家释放,不过不造成伤害与效果。 -------------------------------------------------- 电击风暴:你爆击杀敌或宝宝杀敌触发,产生一个电场 电场持续3s,满级时每秒电击伤害5400×4(频率),这不是状态伤害 被电场伤害会有触电效果,每秒伤害2000×4(频率),每次更新触电持续5秒 理想输出:5400×4×3+2000×4×8=128800 这个伤害来源始终视为玩家造成的,因此再怎么用此技能杀死也不会自我触发 由于是玩家造成的伤害,可以触发电光火石效果(触电概率燃烧,cd:1s) 燃烧伤害:1250×4(频率)×5~8(秒)=25000~40000 -------------------------------------------------- 轰天裂地:宝宝会发个光球,玩家射击它会爆炸 距离:远(光球飞行超过大概两个爆炸直径范围会自灭且不爆炸) 爆炸范围:中等 伤害:电击伤害,159000 附加:触电伤害,8900×4(频率)×2(秒)=71200 过程时间:9s!!!在3s时发射 cd:35s 特殊:攻击加成可以提高次技能伤害! 特殊:敌人会把球视为扔的石头一样的东西去打,貌似优先级较高,但他们怎么打都不会炸。 缺点:发招的时候会向上后退飞,但出招跟收招速度太慢;球必须玩家打中才会炸,平砍不行 bug:如在发射时玩家护盾掉了,宝宝想加盾时,光球发射方向会转过来 有时光球会发射往尴尬的方向 很考验玩家配合宝宝的技能,用的好破盾神技,远程优先级挺高的 -------------------------------------------------- 闪耀时刻:元素武器射击宝宝,使宝宝攻击带该元素伤害 可附加元素:火焰、电击、酸蚀、熔渣 可根据元素附加效果,如燃烧、触电、酸蚀与熔渣,效果概率伤害不详 如果附加元素,则造成的伤害是攻击力的两倍! 如,宝宝攻击力1000,上火焰元素后,每次攻击造成1000无元素伤害与2000火焰元素伤害! 该元素附加伤害可以加成或被抵抗,用火打人的时候输出超高! 缺点:如果给宝宝上火焰元素,自己换其它有元素的枪,很考验你射击准度,不然给宝宝上另一个元素了。此外,后期宝宝技能多的话普通攻击次数少,怪乱跑的话也很难抓到不如技能打。 丘林这把枪(电击+熔渣双元素),打宝宝只会给宝宝上电击效果。 -------------------------------------------------- 右边技能 ================================= 机械暴乱:旋转范围狂抓 范围:小 伤害:无元素伤害,14000×9(次)+26000(普通攻击)×1(次)=152000 过程时间:3s cd:14s 特殊:攻击加成可以提高次技能伤害! 特殊:如果有闪耀时刻附加元素效果,每次伤害独立触发一次元素攻击效果! 如果有火焰元素附加,则造成的伤害会是 无元素的14000×9(次)+26000(普通攻击)×1(次)=152000 加上火焰元素的52000(闪耀时刻两倍攻击伤害)×10(次)=520000 这是个很恐怖的伤害!!! 缺点:范围小,有时候难打中人或完全打出伤害 -------------------------------------------------- 此次测试以52级机械法,反复对49级机遇城的无盾工程兵进行比较! 用视频录制软件录下来后,放慢重复看得到的结果,数值上不精确但也差不多了 总结一下伤害: ============================================== 普通攻击:无元素伤害26000(元素+52000) -群,攻击加强可增 吵闹爆破(爆裂抓):爆炸伤害114000 -群,攻击加强可增 灼热视线(火激光):火焰伤害184000+32000 -单 轰天裂地(光球):电击伤害159000+71200 -群,攻击加强可增 机械暴乱(旋转):无元素伤害152000(元素+520000) -群,攻击加强可增 电击风暴(杀死电爆):电击伤害128800(燃烧+25000~40000) -群电单燃,玩家输出来源
首页 1 2 下一页