What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

공전보주를 쿨마다 사용하게 만들 수 없나요?

gstone3g

New Member
Joined
Feb 23, 2016
Messages
56
현재 델세르 공전보주로 돌리게되면

공전보주를 쿨 올 때 마다가 아니라 마력증폭 패시브 5개가 쌓였을때만

공전보주를 시전하네요..(45.1기준) 그러니까...


공전보주를 가장 효율적으로 쓰려면 0.55초에 한번꼴로 써주는게

패시브 5개 다 쌓아서 쓰는 것 보다 데미지 측면에서 훨씬 낫거든요.


공전보주 스킬을 시전하면 0.55초 안에 터지고 다음 보주가

터질때까지 1초가량의 시간이 걸리기 때문에 0.55초마다

보주를 다시 충전해주는게 더 낫다는 이야긴데요..


저승의 칼날-공전 보주 세팅으로 가게되면 안그래도 공속 느린 저칼인데

패시브 5개 다 채우려면 대략 3초정도 걸리게되고 그만큼 딜로스가 크네요..

물론, 주스킬을 저칼 말고 감전으로 쓰면 패시브 쌓이는게 빠르니

1.5초 조금 안되는 시간 안에 한번씩은 보주 스킬이 나가기는 하는데 아무래도

회동 비전 타이밍에는 연타가 아쉬운건 어쩔 수 없네요 ㅜㅜ


세판 헬퍼로 0.7초 딜레이로 보주 연타 넣고 대균 돌았더니

평균 시간이 2분이 줄어드는 마법이 ㄷㄷ



트리니티 게시판에 대충 만들어줄 수 있냐고 적어보기는 했는데

혹시 코드 건드릴줄 아는분 계신가 싶어서 또 올려봅니다@@;
 
Last edited:
private static bool CanCastArcaneOrb()
{
if (!CanCast(SNOPower.Wizard_ArcaneOrb, CanCastFlags.NoTimer) || Player.IsIncapacitated ||
Player.PrimaryResource < 35)
return false;

if (!IsDmoWiz && ShouldWaitForConventionElement(Skills.Wizard.ArcaneOrb))
return false;

if (Legendary.AquilaCuirass.IsEquipped && Player.PrimaryResourcePct <= .91)
return false;

if (IsDmoWiz)
{
if (GetBuffStacks(SNOPower.Wizard_Passive_ArcaneDynamo) < 5)
return false;

if (GetBuffStacks(SNOPower.P2_ItemPassive_Unique_Ring_052) < 3)
return false;

if (IsInsideCoeTimeSpan(Element.Arcane, 2000, 0))
return false;
}

return true;
}
 
이 부분이 공전보주캐스팅가능한 상태를 정의 내리는 부분인데

여기서도 특히


if (IsDmoWiz)
{
if (GetBuffStacks(SNOPower.Wizard_Passive_ArcaneDynamo) < 5)
return false;

if (GetBuffStacks(SNOPower.P2_ItemPassive_Unique_Ring _052) < 3)
return false;

if (IsInsideCoeTimeSpan(Element.Arcane, 2000, 0))
return false;
}


이 부분만 보시면 됩니다. 여기서도 자세히 나눠보면



if (GetBuffStacks(SNOPower.Wizard_Passive_ArcaneDynamo) < 5)
return false;

이 부분은 마력 증폭 패시브 부분으로 5중첩이하일때는 거짓, 즉 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다.

if (GetBuffStacks(SNOPower.Wizard_Passive_ArcaneDynamo) < 6)
return true;

이런식으로 바꾸셔도되고 아예 이 부분을 통째로 지워버려도 됩니다. (단, true로 바꿔버리면 이 줄보다 밑줄들은 씹히니깐 통째로 지우거나 맨 밑줄로 이동시켜야함. 아마도. 그냥 간편하게 통째로 지우는쪽을 추천합니다.)





if (GetBuffStacks(SNOPower.P2_ItemPassive_Unique_Ring _052) < 3)
return false;

이건 무슨 반지 말하는건지 모르겠는데 하여튼 반지 스택이 3미만일때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다. 나침도말인가 싶기도 하고 잘모르겠네요. 깔끔하게 통째로 지워버립시다.







if (IsInsideCoeTimeSpan(Element.Arcane, 2000, 0))
return false;

마지막 시전한 시간이 2초가 지나지않았을때 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다.
2000 부분을 원하시는 시간간격으로 수정하시면 됩니다. 단위는 ms, 1/1000초입니다.
 
Last edited:
즉, 0.7초 간격으로 쏘게 하고싶다면

private static bool CanCastArcaneOrb()
{
if (!CanCast(SNOPower.Wizard_ArcaneOrb, CanCastFlags.NoTimer) || Player.IsIncapacitated ||
Player.PrimaryResource < 35)
return false;

if (!IsDmoWiz && ShouldWaitForConventionElement(Skills.Wizard.Arcan eOrb))
return false;

if (Legendary.AquilaCuirass.IsEquipped && Player.PrimaryResourcePct <= .91)
return false;

if (IsDmoWiz)
{
if (IsInsideCoeTimeSpan(Element.Arcane, 700, 0))
return false;
}

return true;
}


이렇게 수정하시면 됩니다.

보너스로 위쪽의 다른 조건들도 설명하자면




if (!CanCast(SNOPower.Wizard_ArcaneOrb, CanCastFlags.NoTimer) || Player.IsIncapacitated ||
Player.PrimaryResource < 35)
return false;

이 부분은 쿨이 돌아가는 중이라서 시전가능상태가 아니거나 제어방해효과에 걸린 상태이거나 비전력이 35미만일때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다. ( ||는 or의 의미이기 때문에 이 조건들중 한조건만 충족되도 거짓이 됩니다.)





if (!IsDmoWiz && ShouldWaitForConventionElement(Skills.Wizard.Arcan eOrb))
return false;

델세르법사가 아니면서 원소회동속성이 아닐때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다.






if (Legendary.AquilaCuirass.IsEquipped && Player.PrimaryResourcePct <= .91)
return false;

독수리흉갑 착용하고있으면서 비전력이 91%이하일때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다.




다필요없어! 무조건 쿨마다 쓰게 하고싶어! 하시면

private static bool CanCastArcaneOrb()
{
return true;
}

요렇게만 남겨두고 나머지 싹다 지워도 됩니다.
 
Last edited:
이거 복붙한건데 띄어쓰기가 이상하게 되어버렸네요 -_-; 왜이렇지

띄어쓰기 이상한건 감안해서 찾아서 수정하세용

수정하실때 잘못건드리면 트리니티 플러그인 자체를 불러오지못하는수가 있으니 수정전 백업필수
 
이거 복붙한건데 띄어쓰기가 이상하게 되어버렸네요 -_-; 왜이렇지

띄어쓰기 이상한건 감안해서 찾아서 수정하세용

수정하실때 잘못건드리면 트리니티 플러그인 자체를 불러오지못하는수가 있으니 수정전 백업필수
아 뭐죠? 심쿵하는 이 기분? ㅋㅋ

완전 고맙습니다^^
 
이거 복붙한건데 띄어쓰기가 이상하게 되어버렸네요 -_-; 왜이렇지

띄어쓰기 이상한건 감안해서 찾아서 수정하세용

수정하실때 잘못건드리면 트리니티 플러그인 자체를 불러오지못하는수가 있으니 수정전 백업필수

아 혹시 사정거리 관련해서 손볼 수 있는 파트는 없나요?

가끔은 보주 닿지도 않는데 감전부채만 계속 쓰는 경우가 있어서요@@;;
 
private static void MoveToOrbitPoint(TargetArea area)
{
CombatMovement.Queue(new CombatMovement
{
Name = "Arcane Orbit Position",
Destination = area.Position,
OnUpdate = m =>
{
if (CanCastTeleport() &&
ArcaneOrbitCriteria(Enemies.BestRiftValueCluster))
Skills.Wizard.Teleport.Cast(m.Destination);
},
Options = new CombatMovementOptions
{
AcceptableDistance = 6f,
Logging = LogLevel.Verbose,
ChangeInDistanceLimit = 1f,
SuccessBlacklistSeconds = 3,
FailureBlacklistSeconds = 7,
TimeBeforeBlocked = 500
}

});
}

이 부분과

if (IsDmoWiz && TimeSincePowerUse(SNOPower.Wizard_ArcaneOrb) <= 2000 && GetBuffStacks(SNOPower.Wizard_Passive_ArcaneDynamo) < 1)
{
var clusterPoint = Player.ParticipatingInTieredLootRun
? Enemies.BestRiftValueCluster
: Enemies.BestCluster;
MoveToOrbitPoint(clusterPoint);
}

이 부분, 총 2가지가 거리관련 부분입니다.
제가 보주법을 돌려본적이 없어서 어떻게 수정하는게 효율적일지 잘모르겠습니만

AcceptableDistance = 6f

를 수정하면 될건데 너무 많이 줄일경우 그 거리까지 접근하지못하면 멍청이짓을 할게 뻔해서 무작정 줄인다고 좋아지진 않을것같습니다. 애초에 이 부분들 자체가 보주 닿지도 않는데 평타만 계속 쓰는 경우들을 해결하기위해 개발자가 추가 코딩한 부분으로 보이는데 단순 수치 조정으로는 원활하게 해결되지 않을듯 싶습니다.
 
즉, 0.7초 간격으로 쏘게 하고싶다면

private static bool CanCastArcaneOrb()
{
if (!CanCast(SNOPower.Wizard_ArcaneOrb, CanCastFlags.NoTimer) || Player.IsIncapacitated ||
Player.PrimaryResource < 35)
return false;

if (!IsDmoWiz && ShouldWaitForConventionElement(Skills.Wizard.Arcan eOrb))
return false;

if (Legendary.AquilaCuirass.IsEquipped && Player.PrimaryResourcePct <= .91)
return false;

if (IsDmoWiz)
{
if (IsInsideCoeTimeSpan(Element.Arcane, 700, 0))
return false;
}

return true;
}


이렇게 수정하시면 됩니다.

보너스로 위쪽의 다른 조건들도 설명하자면




if (!CanCast(SNOPower.Wizard_ArcaneOrb, CanCastFlags.NoTimer) || Player.IsIncapacitated ||
Player.PrimaryResource < 35)
return false;

이 부분은 쿨이 돌아가는 중이라서 시전가능상태가 아니거나 제어방해효과에 걸린 상태이거나 비전력이 35미만일때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다. ( ||는 or의 의미이기 때문에 이 조건들중 한조건만 충족되도 거짓이 됩니다.)





if (!IsDmoWiz && ShouldWaitForConventionElement(Skills.Wizard.Arcan eOrb))
return false;

델세르법사가 아니면서 원소회동속성이 아닐때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다.






if (Legendary.AquilaCuirass.IsEquipped && Player.PrimaryResourcePct <= .91)
return false;

독수리흉갑 착용하고있으면서 비전력이 91%이하일때는 거짓, 비전보주시전가능하지 않은 상태로 간주하라는 의미입니다.




다필요없어! 무조건 쿨마다 쓰게 하고싶어! 하시면

private static bool CanCastArcaneOrb()
{
return true;
}

요렇게만 남겨두고 나머지 싹다 지워도 됩니다.

띄어쓰기만 주의해서 위처럼 했더니 잘되네요....감사합니다~!!
 
Back
Top