|
楼主 |
发表于 2019-6-1 07:22:02
|
显示全部楼层
part.1
1,因为考虑天鹰的保持需要90%的能量,所以提高了骷髅弓手的施放条件,有精英和BOSS才自动施放,也避免在过图时,满足了怪物数量条件就施放,降低了天鹰的覆盖率
2,为了提高单位精魂量内骷髅弓手的覆盖率,将消失前1.5秒改为了0.5秒
3,我还没转散件尸矛,所以这个思路仍然仅供参考
.IfTrue(ctx => ctx.Skill.Rune == 4).ThenContinueElseNoCast()//弓箭手符文
.IfCanCastSkill(100, 150, 1000).ThenContinueElseNoCast()
.IfInTown().ThenNoCastElseContinue()
.IfCastingIdentify().ThenNoCastElseContinue()
.IfCastingPortal().ThenNoCastElseContinue()
.IfOnCooldown().ThenNoCastElseContinue()
.IfPrimaryResourceAmountIsAbove(ctx => (int)(40 - 40 * Hud.Game.Me.Stats.ResourceCostReduction) + 1).ThenContinueElseNoCast()//确保有保底能量
.IfEliteOrBossIsNearby(ctx => 60).ThenContinueElseNoCast()//附近60码内有精英和BOSS
.IfSpecificBuffIsActive(Hud.Sno.SnoPowers.AquilaCuirass, 1).ThenContinueElseNoCast()//天鹰激活
.IfSpecificBuffIsActive(Hud.Sno.SnoPowers.Necromancer_SkeletalMage, 6).ThenNoCastElseContinue()//骷髅法师激活
.IfSpecificBuffIsAboutToExpire(Hud.Sno.SnoPowers.Necromancer_SkeletalMage, 3, 1000, 500).ThenCastElseContinue()//弓箭手BUFF即将过期(0.5秒以内)
;
part.2
注:确实在实战中碰到了“为了保持10个骷髅法师”而能量跟不上,又或者即使召唤出了10个骷髅法师,始终在能量低位召唤导致伤害不足的问题,因此做出了如下调整及想法,至于把侦测范围从60码调低至55码也是为了提高骷髅法师在生存时间内产生更多一点的输出,毕竟一次召唤,满打满算也只有10秒,戒指特效低的话,只有8~9秒。
1,夺魂者裹腕特效一个生命球提供30%的能量,外加吞噬存储的能量,那么只要吃上3个生命球就能立刻在能量高位释放出骷髅法师了,也不必刻意等到99%或者100%了
2,分三种情况,第一种,有精英,保持最少2个骷髅,精魂可以在较高位释放骷髅法师;第二种,没有精英,刚接触一个小怪,保持最少2个骷髅法师(来个挡子弹的小弟);第三种,没有精英,周围十五个以上小怪,保持8个骷髅法师(召唤更多吸引仇恨的小弟)
因此会用到.IfEliteOrBossIsNearby(ctx => 55)和.IfEnoughMonstersNearby(ctx => 55, ctx => 1)以及.IfEnoughMonstersNearby(ctx => 55, ctx => 10)
.IfTrue(ctx => ctx.Skill.Rune == 1).ThenContinueElseNoCast()//精魂灌注符文
.IfCanCastSkill(100, 150, 1000).ThenContinueElseNoCast()
.IfInTown().ThenNoCastElseContinue()
.IfCastingIdentify().ThenNoCastElseContinue()
.IfCastingPortal().ThenNoCastElseContinue()
.IfOnCooldown().ThenNoCastElseContinue()
.IfPrimaryResourceAmountIsAbove(ctx => (int)(40 - 40 * Hud.Game.Me.Stats.ResourceCostReduction) + 1).ThenContinueElseNoCast()//确保有保底能量
.IfEliteOrBossIsNearby(ctx =>,55, ctx => 1).ThenContinueElseNoCast()//附近55码内存在精英或BOSS
.IfPrimaryResourcePercentageIsAbove(90).ThenCastElseContinue()//90%能量时
.IfTrue(ctx =>
{
var buff = Hud.Game.Me.Powers.GetBuff(Hud.Sno.SnoPowers.Necromancer_SkeletalMage.Sno);
return (buff.IconCounts[6] < 3);//小于3个骷髅且满能量施放
}).ThenCastElseContinue()
3,根据上述2,是否在后面加入如下2段
.IfnoEliteOrBossIsNearby(ctx => 55).ThenCastElseContinue()//附近55码没有精英或BOSS
.IfEnoughMonstersNearby(ctx => 55, ctx => 1).ThenContinueElseNoCast()//附近60码内至少1个怪
.IfPrimaryResourcePercentageIsAbove(90).ThenContinueElseNoCast()//90%能量时
.IfTrue(ctx =>
{
var buff = Hud.Game.Me.Powers.GetBuff(Hud.Sno.SnoPowers.Necromancer_SkeletalMage.Sno);
return (buff.IconCounts[6] < 3);//小于3个骷髅且90%能量施放
}).ThenCastElseContinue()
和
.IfnoEliteOrBossIsNearby(ctx => 55).ThenCastElseContinue()//附近55码没有精英或BOSS
.IfEnoughMonstersNearby(ctx => 55, ctx => 15).ThenContinueElseNoCast()//附近60码内至少15个怪
.IfPrimaryResourcePercentageIsAbove(90).ThenContinueElseNoCast()//90%能量时
.IfTrue(ctx =>
{
var buff = Hud.Game.Me.Powers.GetBuff(Hud.Sno.SnoPowers.Necromancer_SkeletalMage.Sno);
return (buff.IconCounts[6] < 8);//小于8个骷髅且90%量施放
}).ThenCastElseContinue() 至于这三段中如何使用.ThenCastElseContinue()和).ThenContinueElseNoCast()以及.ThenNoCastElseContinue()来分开判断和段落分割,我就用不来了。
不过至少,通过提高释放条件,降低释放次数,可以保证更高质量的骷髅法师被召唤出来,略微提高了每次召唤骷髅法师的质量,适当避免了恶性循环的发生。
以上,还请管理大大给出准确的语句构造,我这个懒人是在玩不溜。
|
|