Skip to content
봇관련다크 모드

D2NT3.1 버젼 사용 시 카운테스에서 MyAT-KillBoss() 에러 조치 방법

조회 수
1,664
추천 수
6
등록일
새벽이슬님
게시글 주소
https://tradia.me/diablo2/diablo2_tips/233233 복사

카운테스에서 문제가 자꾸 발생해서,
http://www.durune.com/2010/zboard.php?id=dia3_info&page=2&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=5390
이 방법을 사용해 보았으나 결과는 마찬가지 였습니다.
저의 경우는 무조건 포탈타고 나오더군요;;;

그래서 카운테스에서 문제 없이 잡을 수 있도록 하였습니다.
참고로 에러 메세지가 싫으신 분은 에러가 보이지 않도록 도 가능합니다.

우선 NTBot/bots/NTCountess.ntj

이 파일을 열어보면 맨 아래 부분이

 if (MyConfig_CountessKill)
 MyAt_ClearPosition(40, _MyAt_MONSTER_TYPE_MINION);

 if (!MyAt_KillBoss(GetLocaleString(2875)))
 return "MyAt_KillBoss()";

 if (NTConfig_ClearPosition[0])
 MyAt_ClearPosition();

 MySI_PickItems();

 return "MyMain()";
}

이렇게 되어있습니다.

문제를 일으키는 부분은 바로

 if (!MyAt_KillBoss(GetLocaleString(2875)))
 return "MyAt_KillBoss()";
이부분 입니다.
보스 몹을 죽이라고 하고 잘 했는지를 판별하는 것인데요.
여기서 저의 경우는 100% 실패로 나옵니다.
햄딘이건 소서건,
카운테스를 먼저 잡던 나중에 잡던...

아무래도 KillBoss 안에서 문제가 생기는 것 같습니다.
뭐 프로그램을 아무리 되져도 이 부분에 대한 파일은 없으니 그것까지는 손을 댈 수가 없었습니다.

서론이 길었고요
그래서 위 부분을 아래와 같이 수정하시면,
카운테스를 잡다가 아이템을 줍다,
또 잡다가 아이템을 줍다 할 수 있게 수정하면 됩니다.
또한 약하신 분들은 주변몹을 먼저 잡게 하셔도 문제 없이 동작합니다.

 if (MyConfig_CountessKill)
 MyAt_ClearPosition(40, _MyAt_MONSTER_TYPE_MINION);

 MyAt_KillBoss(GetLocaleString(2875));

 MyAt_KillBoss(GetLocaleString(2875));

 MySI_PickItems();

 MyAt_KillBoss(GetLocaleString(2875));

 MyAt_KillBoss(GetLocaleString(2875));

 MySI_PickItems();

 MyAt_KillBoss(GetLocaleString(2875));

 MyAt_KillBoss(GetLocaleString(2875));

 MySI_PickItems();

 MyAt_KillBoss(GetLocaleString(2875));

 MyAt_KillBoss(GetLocaleString(2875));

 MySI_PickItems();

 if (!MyAt_KillBoss(GetLocaleString(2875))) <-- 에러가 싫으신 분은 여기서부터
{
 MySI_PickItems();
 return "MyAt_KillBoss()";
} <-- 여까지 지우세요;;

 if (NTConfig_ClearPosition[0])
 MyAt_ClearPosition();

 MySI_PickItems();

 return "MyMain()";
}

한마디로 보스를 잘 잡고 있는지를 판단하는 부분을
일단 잡도록 실행하고 아이템을 줍게 하였으며,
또한 한 두번만 하게하면 카운테스가 죽기 전 아이템만 줍고 나가더군요..ㅡㅡ;;
그래서 여러번 반복하도록 수정하였습니다.

마지막 부분은 링크를 참조하여 넣어놓았고요.
에러메세지가 싫으신 분은
그냥 빼셔도 됩니다.

D2NT3.1 버젼으로 넘어오면서 사냥하는 부분이 수정이 많이 된 것 같습니다.
이 전 버젼에서는 보스몹 근처에 가서 보스 몹을 잡도록 되어있었는데,
이제는 보스 몹이 사라졌을 경우를 확인하도록 되어있습니다.
그런데 아무래도 이 부분이 구현이 잘 안된 것 같습니다.

아무래도 D2NT3.1 자체가 보스몹 잡는 부분에서 약간의 문제가 있는 것 같습니다.
아니면,
완료 하기 전에 빠져나오도록 실수한 것 같고요.
암튼 이렇게 수정하여서 모두 득템하시길 바랍니다~~
댓글 19
  • 댓글 #233234

    중복이 된것 같지만,,그래도 좋은 자료 입니다. 수고하셨습니다.
  • 댓글 #233237

    아주 좋은 내용입니다. 몰랐었던 것을 많이 알게 되는군요. 감사합니다.
  • 댓글 #233240

    저한테는 문제가 없었는데...흠흠... 혹시 나오게되면 참고를 ^^
  • 댓글 #233243

    저는 다른보스몹들은 다 잘잡는데 카운데스만 잠다말고 나온다는 느낌이 있었습니다 수정해봐야겠네요 좋은정보 감사합니다^^
  • 댓글 #233246

    혹시나 싸우다가 포탈타고 나온다면 그건 이코드랑은 상관이 없습니다. 싸우다가 포탈탈대 해결은 마스콧님 자료 http://tradia.me/diablo2/diablo2_tips/228566 이걸 참고해보세요 혹은 케릭 컨픽에 용병사용을 끄지마세요
  • 댓글 #233249

    댓글을 한꺼번에 세개를 달아서 다시 정리해서 댓글 답니다. 마스콧님 자료를 보고도 수정을 해 보았습니다. 10초간 보스의 피를 확인해야 하지만 3000000 으로 수정했을 때도 딱 한번 공격하고 바로 포탈을 타더군요;;;; 주변 몹을 먼저 잡게도 해보았습니다. 그랬더니 주변 몹을 다 잡고 카운테스 두번 공격하고 나왔었습니다. 물론 피는 쭉쭉 빠지는걸 확인 했고요. 그리고, 저는 용병 사용을 안합니다;;;; 현재 나와있는 모든 방법을 사용해도 안됐기 때문에 수정한 것입니다.;;;; 뭐 저의 경우는 100% 즉, 항상 에러가 났었습니다. 나름 분석한 결과로는 MyAt_KillBoss(GetLocaleString(2875)) <- 이부분의 코드가 살짝 이상한 것 같은데요. 보스를 처리를 못했는데 return이 0이 나와버리는 것으로 보이며, 또한 보스가 있는데도 불구하고 return 값이 0이 되어버리는 것으로 보입니다. 그리고 보스와의 전투 중에 함수의 return을 0으로 하고 나와버리는 경우도 있는 것으로 보입니다. 말 그대로 각 설정의 보스몹을 확인하고, 있다면 잡고 나서 1을 return을 해야하지만, 현재 보스몹을 확인하는 부분도 약간의 문제가 있는 것 같고요. 보스몹과의 전투 중 함수를 빠져나오는 경우가 있는 것 같습니다. 참고로 체라오브와 햄딘은 카운테스와 완전한이뮨이 작용할 수 없으며, 햄딘의 경우 마스콧님의 자료에 나온 함수의 영향을 전혀 받지 않습니다. 오로지 소서일 경우에만 영향을 주죠~ 그럼에도 문제가 발생되는 것을 확인했고, 어쩔 수 없이 최후의 방법으로 사용하게 된 것입니다. 아마도 MyAt_KillBoss() 함수는 오픈이 안되있는 것으로 보이던데요. 그래서 당장은 수정하기 어려울지도 모른다는 생각이 드네요;; 어쨌든 정말 혹시라도 문제 생기시는 분들이 계실까봐 이렇게 정리해 본 것입니다.
  • 댓글 #233252

    myat_killboss() 이함수는 bot 폴더가 아닌 lib/common 폴더에 myattack.ntl화일안에 있습니다. 참고로 어떤버젼을 사용하고 계신지요? 날아다녀님 새버젼을 한번 받아보시고 설정을 한번 유심히 보시라고 권해드립다. 대부분의 봇 오류는 설정을 잘못한 경우가 90%라고 봅니다. 만약 프로그램밍을 어느정도 알고 계시다면 헤븐리스톤님 버젼을 수정하시는게 휠씬더 편하시리라고 봅니다. 코드가 날아다녀님 수정본보다 휠씬더 직관적이라 이해하시기가 편하실겁니다.
  • 댓글 #233255

    넵 감사합니다. 제가 쓰는 것은 날아다녀님 1차 수정본입니다. 하도 안되서 카운테스 부분에서만 주석을 지우고 아무것도 손을 대지 않고도 테스트는 해보았습니다. 아무래도 남들은 다 되는데 저만 안되는거 같군요;;; 좀 더 연구해봐야겠네요;;;
  • 댓글 #233258

    루트골레인님의 댓글을 보니 혹시 핑때문일수도 있다고 생각되어 덧글붙입니다. http://tradia.me/diablo2/modules/bot/href.php?target_mid=dia3_xfile&target_srl=77002&href=http%3A%2F%2Fwww.durune.com%2F2010%2Fzboard.php%3Fid%3Ddia3_xfile%26page%3D1%26sn1%3D%26divpage%3D13%26sn%3Doff%26ss%3Don%26sc%3Don%26select_arrange%3Dheadnum%26desc%3Dasc%26no%3D77002
  • 댓글 #233261

    좋은 정보 감사합니다.. 어쩌다가 한번씩 발생하던데 확실히 해결 될듯하네요
  • 댓글 #233282

    오늘두 하나 배우고 가는군요!! 감사 드리고 즐디아 하십시요!!!
  • 댓글 #233285

    필요한거였는데 역시 똑같은 현상 일어나시는분이 많으시네요 감사합니다
권한이 없습니다.
다크 모드