Skip to content
봇관련다크 모드

D2NT 오리 디아런 팁

조회 수
5,458
추천 수
24
등록일

4년여만에 디2로 복귀한 흰여울입니다.


역시나 오리지널(이하 오리) 하고 있습니다.

아이템이 적으니 머리 아플일 없고,

자급자족하며 아이템 장사 안해도 되서 저는 참 만족스럽습니다.


오리 디아런을 봇에서 완벽하게 지원해줘서 참 편하게 쓰고 있습니다.

이렇게 보편화 되기전에 대충 구현해서 사용했던 저로서는 감동이더군요.^^;

거의 모든 사람의 입장을 고려해서 잘 만들어져 있습니다.


몇가지 제 입맛에 맞게 고쳐야 할 부분들이 있는데, 예전만큼 봇에 대한 열정도 시간도 없어서

중요한 부분(생존에 관계된 부분)만 바로 수정해서 사용중입니다.



1. 세컨팔라딘이 로워레지스트 걸리거나 컨빅에 걸리면 세컨팔라딘이 셀베이션 켜고 공격하기.

- 햄딘이 두개 일때 사용하며, 셀베이션을 배워야함.



scripts\libs\common 폴더에서 MyAttack.ntl 파일 사본을 만들어 이름을 MyAttack_SH.ntl로 바꿉니다.
(MyAttack.ntl과 MyAttack_SH.ntl 두개 파일 다 있어야함.)




ⓐ MyAttack_SH.ntl을 메모장 등으로 열어서 아래 부분을 수정합니다.


 else if (MyConfig_AttackSkill[index][3] > -1)
 NTC_PutSkill(MyConfig_AttackSkill[index][3], NTC_HAND_RIGHT);


위 부분을 아래로 교체


 if (MyConfig_AttackSkill[index][3] > -1) // 수정
 {
 if ((me.GetState(28)) || (me.GetState(28)))
 NTC_PutSkill(125, NTC_HAND_RIGHT);
 else
 NTC_PutSkill(MyConfig_AttackSkill[index][3], NTC_HAND_RIGHT);
 }



그리고 아래 부분을 수정합니다.


 else if (MyConfig_AttackSkill[index + 1][3] > -1)
 NTC_PutSkill(MyConfig_AttackSkill[index + 1][3], NTC_HAND_RIGHT);


위를 아래로 수정


 if (MyConfig_AttackSkill[index + 1][3] > -1) // 수정
 {
 if ((me.GetState(28)) || (me.GetState(28)))
 NTC_PutSkill(125, NTC_HAND_RIGHT);
 else
 NTC_PutSkill(MyConfig_AttackSkill[index + 1][3], NTC_HAND_RIGHT);
 }



ⓑ NTCommon.ntl 파일을 열어서 아래 부분을 수정합니다.

function NTC_IncludeLibs()에서

아래 줄 찾아서 삭제하거나 주석처리 합니다.

Include("libs/common/MyAttack.ntl");

그후 function NTC_IncludeLibs()에 아래 부분 추가합니다.

 if(me.account == "세컨햄딘 계정명") // 세컨햄딘계정(셀베이션 배운 팔라)
 Include("libs/common/MyAttack_SH.ntl"); // 추가
 else
 Include("libs/common/MyAttack.ntl"); // 추가




2. 카오스 중앙부터 사냥시 7시 방향 사냥하도록 설정

ⓐ scripts\NTBot\bots 폴더에 디아블로.ntj 파일을 수정합니다.

function MyMain()
{
 Print(LANGUAGE1_212_);

 var _msg;
 var _unit;

 My_Initialize();

 if (MyConfig_DiabloPortalOpen[0])
 {
 _msg = My_OpenPortal();
 if (_msg)
 return My_Finish(_msg);
 }
 else if (MyConfig_DiabloPortalUse[0])
 My_UsePortal();

 if (!__My.sealPortal)
 {
 _msg = My_Start();
 if (_msg)
 return My_Finish(_msg);

 if (MyConfig_DiabloTeleport)
 MyConfig_TeleportMove = 0;

 NT_BonusAttack(); // 7시 사냥 추가

 _msg = My_ClearSeal();
 if (_msg)
 return My_Finish(_msg);

 if (MyConfig_DiabloTeleport)
 MyConfig_TeleportMove = __My.teleportMove;
 }
 else if (MyConfig_DiabloDiabloJjolBot[0] == 1 || MyConfig_DiabloJjolBot[0] == 1)
 {
 My.Portal.CheckMakePortal(me.x, me.y, 10);

 if (MyConfig_DiabloDiabloJjolBot[0] == 1)
 {
 My.Jjol.WriteGisaMessage("");
 My.Jjol.WritePortalMessage(108, "쫄");
 My.Jjol.WriteClearPositionMessage(me.charname, "");
 }
 else
 My.Jjol.WriteCheckMessage("사냥터_가기");
 }

 if (MyConfig_DiabloKill[0] < 2)
 {
 if (MyConfig_DiabloExperience)
 __My.experience[1] = me.GetStat(13);

 My.Move.isCheckBonePrison = true;

 if (!My_KillDiablo())
 return My_Finish("My_KillDiablo()");

 if (MyConfig_DiabloPotionPick > 0)
 {
 _unit = NTC_FindUnit(NTC_UNIT_MONSTER, 243);
 My.Pick.PickItems(NTConfig_SnagDelay[0], _unit ? { x: _unit.x, y: _unit.y, range: MyConfig_DiabloPotionPick } : { x: me.x, y: me.y, range: MyConfig_DiabloPotionPick });
 }
 else
 My.Pick.PickItems(NTConfig_SnagDelay[0], { x: 0, y: 0, range: 0 });

 if (MyConfig_DiabloExperience)
 NTC_SendLogToOOG(NTC_LOG_COMMON, My.Common.Format(LANGUAGE1_15_, me.GetStat(13) - __My.experience[1], ((me.GetStat(13) - __My.experience[1]) / (My.Unit.GetExperience() / 100)).toFixed(3), me.GetStat(13) - __My.experience[0], ((me.GetStat(13) - __My.experience[0]) / (My.Unit.GetExperience() / 100)).toFixed(3)));
 }

 if (NTConfig_PublicMode)
 My.Common.SayRandom(MyConfig_DiabloMessage[7]);

 return My_Finish("MyMain()");
}



ⓑ 아래 함수를 디아블로.ntj 안 적당한 곳에 추가합니다.

function NT_BonusAttack() // 7시 방향 사냥 추가
{
 My.Move.MoveTo(me.areaid, 7808, 5357, 0, true, _UNIT_MONSTER_TYPE_ALL);

 My.Attack.ClearPosition(30, _UNIT_MONSTER_TYPE_ALL, true);

 My.Pick.PickItems();

 My.Move.MoveTo(me.areaid, 7777, 5356, 0, true, _UNIT_MONSTER_TYPE_ALL);

 My.Attack.ClearPosition(30, _UNIT_MONSTER_TYPE_ALL, true);

 My.Pick.PickItems();

 return false;
}




제가 예전에 쓰던 디아런에서 그대로 가져왔습니다.ㅋ

대강의 매커니즘을 보시라고 올렸습니다.

다른 분이 좀더 매끄럽게 수정하면 좋을 거 같네요.

2루는 디펜스가 중요하니 2루 씰몹을 발견하면 세컨팔라는 디파이언스를 켜도록 해도 좋겠죠.

디아블로 잡기전 경험성소 이용할땐 다른 캐릭들은 기다리도록 해도 좋을 거 같구요.


좋은 팁 있으면 공유 좀 해주세요.

댓글 26
  • 댓글 #306587

    여울님 하이!!^^* 덕분에 완젼 잘하고 있습니다 ㅎㅎ 근데 궁금한것이... 디아릴방에서 가끔보면 성소를 먹고 오시는분들이 계시던데 그것도 설정가능한건가요? 수동으로 찾아오시는건가..ㅎㅎ
  • 댓글 #306590

    물랑이님, 사냥터에서 디아블로 보시면 성소관련 설정하는 부분이 있습니다. 그부분 설정하면 되는데, 문제는 다른 캐릭들이 기다려 주지 않더라구요.ㅋ 전 그래서 사용안합니다. 한 캐릭터만 디아를 잡지 않는한 사용하지 않는게 나은거 같습니다.
  • 댓글 #306593

    좋은팀 남겨주셔서 감사합니다 한번 적용해봐야겠네요 ~!
  • 댓글 #306596

    7시부터 잡는건 쫄봇을 위해서 잡으시는건가요 아니면 앵벌범위를 늘릴려고 하시는건가요?
  • 댓글 #306599

    까비님, 쫄봇을 위한건 아니구요. 그쪽에 가끔씩 몹 많이 나올때가 있어서요. 앵벌 범위 확대입니다.
  • 댓글 #306602

    흰여울님. 아 그렇군요 ㅎㅎ 공방다니다보면 소서분들이 경소를 먹고 디아릴에 오시더라구요 ㅎ 수동으로 다 찾아서 오시나봐요 ㅎㅎ 대단ㅎㅎ
  • 댓글 #306605

    나중에 복귀하게 되면 유용하겠네요. 흰여울님의 복귀를 축하하며 추천 누르고 갑니다.^^
  • 댓글 #306608

    와우! 흰여울님 반갑습니다. 복귀하셔서 반갑네요 아무쪼록 많은 정보공유 부탁합니다. 이니잘쓰고 있습니다.
  • 댓글 #306620

    복귀 축하드립니다 ㅎ_ㅎㅋ 7시방향을 사냥하게 하려면 밑에 a.b만 복사해서 붙여넣기 하면 되는건가여? ㅎ_ㅎ;;
  • 댓글 #306626

    오... 흰여울님 반갑습니다. 이제 디아를 안하게되니 이곳 게시판을 보는 일이 없어서... 이제 보았네요. 훌륭하십니다 ^^
권한이 없습니다.
다크 모드