Skip to content

팁 게시판

[NT봇] 파볼오브소서 카운테스(Countess) 오류팁

분류 봇관련 조회 수 3,662 추천 수 8

안녕하세요 이제좀 날씨가 많이 더워진것 같습니다. 다들 잘 지내시는지요 ^^

먼저 어줍잖은 실력에 정강란에 글을 올리게 되서 우려반 쑥스러움 반이더군요 ~

하지만 cossy 님의 요청도 있고 그리고 별거 아니지만 저와 같은 문제들을 겪었던 다른분들에게

저처럼 삽질하고 해매지 마시라는 뜻에서 작은 팁하나 올리겠습니다. 고수분들께서는 너그러이 봐주시길 ^^

먼저 이건 파볼오브소서에 대해서만 해당되는 사항임을 밝혀둡니다 (핸딘 체라소서는 해당사항 없어요^^)

1.카운테스 에러란?
파볼오브소서로 봇을 돌리다보면 가끔 로그를 보면(사실은 거의 대부분입니다) 오류를 내면서 카운테스를
몇대 때리다 말고 마을로 도망가는 경우가 생깁니다. 이 현상이 항상 일어났더라면은 진작 고수님들에게
파훼가 되서 고쳐졌겠지만 아마도 제 생각으로는 고렙파볼오브소서일수록 이 현상의 빈도수가 줄어들거라
고 예상합니다.. 그 원인은 아래에

2.원인
정확한 원인인지는 잘 모르겠지만 스크립트 코드를 상위로직에서부터 최하위로직까지 찾아본
결과 카운테스 에러라는 부분이 일어나는 부분을 알게되었습니다. 그 에러를 내는 부분은 아래와
같습니다.

NTAttack.dbl 430번째줄 (원본기준)

if(boss)
{
 if((_maxattacks % 4) == 0 && target.hp >= _prehp)
 {
 if(target.classid == 526)
 return false;
 }

 if((_maxattacks % 8) == 0)
 {
 if(target.hp < _prehp)
 _prehp = target.hp;
 else
 return false; <---- 이부분이 카운테스 에러를 유발합니다.
 }
}
else
{
 if((_maxattacks % 4) == 0)
 {
 if(target.hp < _prehp)
 _prehp = target.hp;
 else
 return false;
 }
}

대충 설명을 드리자면 _maxattacks 는 소서리스가 타겟에 대한 공격횟수이고 target.hp는 타겟의 hp , _prehp
는 초기의 적의 hp를 저장한것입니다. 이제 감이 오시죠 ~ _maxattacks % 8이란것은 8번에 한번씩 검사를한다는 뜻이고 적의 hp가 8번전의 hp와 비교를 해서 피가 깍이면 _prehp에 현제의 hp를 저장하는것이고
만약의 반대의 경우(쉽게말해 8번동안 때렸는데 오히려 적의피가 차는경우) 봇이 케릭의 보호를 위해 잡을수
없는 적이라고 판단하고 오류를 내는것이지요.

이현상은 제가 관찰한 결과 처음 소서가 카운테스를 타겟으로 삼고 첫파볼을 카운테스에게 날립니다. 그후 계속
연사하는 상황에서 주위몹들이 카운테스 앞을 가리게 되면 카운테스의 피 리젠으로 인해서 카운테스의 피가
올라가게 됩니다. 그러면 8번후에 봇은 카운테스의 피가 오히려 찾다고 판단을 하는것이죠

이것은 레벨이좀 낮은 파볼오브소서에게서 나오는데 이유는 파볼데미지가 낮고(낮나? -_-;) 카운테스의 파이어
흡수및 이뮨이 높아서 그런것 같았습니다 실제로 때려보니 피가 거의 않달더군요 ;;

3.해결
해결방법은 여러가지가 있을수 있겠죠. 처음에는 파이어 , 오브이뮨일 경우 문제가 되는줄 알고 그부분을수정
하려했지만 쓰레쉬소켓의 경우도 파볼오브이뮨일때가 많음에도 불구하고 쉽게 잡더군요 우리 용병이 ^^
그래서 카운테스의 경우도 좀 쉽게 처리하고자(꽁수를 쓴거죠 ^^;;) 카운테스일 경우 그냥 오류를 무시하는
프로그래밍으로 보면 최악의 예외처리를 하게되었습니다 ^^;; 코드는 아래와 같습니다.

if(boss)
{
 if((_maxattacks % 4) == 0 && target.hp >= _prehp)
 {
 if(target.classid == 526)
 return false;
 }

 if((_maxattacks % 8) == 0)
 {
 if(target.hp < _prehp)
 _prehp = target.hp;
 else
 { //
 if(target.classid == 45){ //
 print("Skip Countess Error"); //
 } // 수정부분
 else //
 return false; //
 } //
 }
}
else
{
 if((_maxattacks % 4) == 0)
 {
 if(target.hp < _prehp)
 _prehp = target.hp;
 else
 return false;
 }
}

수정부분에서 원래 return false; 부분을 만약 카운테스일경우(카운테스의 classid 는 45입니다) 오류를 무시
했다는 로그를 남기면서 그냥 무시해 버리는 로직입니다.

결국 이렇게 해본결과 카운테스는 주위의 몹이 강하지 않고 파볼에 다 처리되므로 결국 카운테스와 1:1 상황
이연출되더군요 파볼로는 데미지를 거의 못주지만 우리의 막강한 용병이 꼬챙이로 찔러서 처리하더군요 ^^
그리고 이후로 카운테스는 꼬박꼬박 잘 잡게 되었더랍니다ㅎㅎ

전 이미 봇을 전부 햄딘으로 바꿔서 이제 파볼오브소서를 않쓰지만 아마도 저처럼 초기에 맨땅하시려면 파볼
오브소서 밖에 없죠.. 그리고 그 어려운(?) 시절 믿을만한 앵벌코스라곤 메피와 핀들과 카운테스밖에 없었
던것 같았습니다.

중급룬이라도 주는 카운테스를 못잡아 고민하실 다른 맨땅님들에게 이글을 바칩니다(?) ^^;


ps . 혹시 꽁수가 아니라 제대로 고치시고 싶으신분은 NTAttack.dbl의 NTA_SorceressAttackInt() 함수에서
공격 타입을 바꾸셔야 할겁니다. 하지만 결국은 파볼오브소서의 공격타입중에 카운테스에게 유효한공격수단
이 없으니.. 고민좀 하셔야 할듯합니다 ^^

ps2. PIT도 이런식으로 고칠수 있지 않느냐 생각하시는 분이 계실지도 모르는데 위 코드의 바로 아래를 보시면
보스가 아닌경우에도 hp를 비교하는 로직이 있습니다. 하지만 피트는 이뮨몹들끼리 몸으로 가려주는상황이 많기때문에 잘못 손대면 피봅니다.. ㅠ ㅜ 유의하시길 바라며.
댓글11
  • 생love 2008.05.04 14:34
    오 그렇군요, 근데 고렙의 경우에도 카운테스가 파이어이뮨이 나오면 튀지요 ㅎㅎ
  • Kyle[A3L] 2008.05.05 01:44
    좋은 정보 감사합니다.
  • cosy 2008.05.05 03:15
    좋은 정보 감사합니다. 이런 정보가 댓글로 묻혀버릴거 같아서 (사실 짧은 댓글로 보니 잘 이해가 안되서;) 정강란에 올려달라고 부탁했습니다. 브라이언님 다시 한번 감사드립니다. ^^
  • 딸기꼭다리 2008.05.05 19:58
    아 정말 좋은 정보 감사합니다. 카운테스 잡다가 나와버려서 일부러 안가게해놨었는데 오늘부터는 다시 방문해줘야겠네요 ^^
  • 쀼냐 2008.05.05 22:57
    카운테스를 계속 치게 해놔도 본캐가 너무 약해서 주위몹에게 순식간에 맞아죽네요..
  • 헤이아찌 2008.05.06 19:55
    NTAttack.dbl 430번째줄 (원본기준) if(boss) { if((_maxattacks % 4) == 0 && target.hp >= _prehp) { if(target.classid == 526) return false; } if((_maxattacks % 8) == 0) { if(target.hp < _prehp) _prehp = target.hp; else return false; <---- 이부분이 카운테스 에러를 유발합니다. } } 위 부분에서 else return false; <---- 이부분이 카운테스 에러를 유발합니다. 이 부분을 아예 삭제하면 다른 보스에서도 error 안내고 끝까지 잡습니다. (ex: 엘드리치 파콜이뮨일때, 쓰레셔소켓 파콜이뮨일때) * 하지만 봇이 죽거나 치킨될 수 있습니다. * 직접 모니터 해 봤는데 잘 죽진 않습니다. ( 83 파볼오브 탈셋소서 / 통찰 안다머리 노업메쉬 용병 )
  • Levis501 2008.05.07 12:52
    감사합니다. ^^;; 저는 무공용병을 써서 그냥 때리면 죽는데도 이런 결과가 나와서 골칫덩어리였는데 추천 누르고 갑니다. ^^
  • myteeee 2008.05.25 09:42
    불쌍한 제 오브소서ㅡㅡ;; 정말 감사합니다 오류가 많이 줄었습니다
  • TheLastTrain 2009.02.18 22:32
    어디에 붙여넣기하죠?
  • TheLastTrain 2009.02.18 22:32
    어디에 붙여넣기하나요?
  • 미스터빈 2010.08.01 01:54
    이런 좋은 정보 정말 감사드립니다^^*~~

팁 게시판

번호 분류 제목 글쓴이 날짜 조회
공지   게시판 푸시 알림 / 통합 앱 서비스 31 file 트디개발자 2023.09.20 849.1k
공지 디아관련 에테리얼 벅큐빙 표 219 eunnanoDiablo™ 2008.03.05 140.9k
공지 디아관련 케릭별 갑옷 착용 모습 325 수린[아빠] 2009.06.09 112.1k
공지 디아관련 디아블로 각종 팁과 정보 간추림 입니다 (_ _) 1547 조은아저씨 2010.05.24 212.0k
공지 봇관련 유니크 업글 표 366 file 카인 2013.11.02 413.9k
공지   맨땅 초보자 가이드 599 file 뮤리아 2020.10.16 998.0k
공지   카카오톡 1:1 채팅방 만드는 법 101 트디개발자 2018.05.20 425.8k
> 봇관련 [NT봇] 파볼오브소서 카운테스(Countess) 오류팁 11 브라이언 2008.05.04 3.7k
1620 봇관련 nt봇 로그 파일 쪼끔 수정했어요 6 희찬-187 2008.05.04 1.8k
1619 디아관련 아주간단한 아이템수리에관한팁입니다 11 닉넴?[A1L] 2008.05.04 1.6k
1618 봇관련 NT봇 함성후 콜투들고싸우는 문제 해결방법. 3 앤뒤퐉 2008.05.05 1.2k
1617 디아관련 이제 부러워말고, 우리용병 럭셜하게 입혀주자! ^^ 11 file ╄KΛRΛ[KOR] 2008.05.05 2.8k
1616 디아관련 에테리얼 갑옷이 벅큐빙으로 2솟으로 떴을 때!!!! 15 file Levis501 2008.05.05 8.1k
1615 봇관련 nt봇 'maximum game length reached'에러 8 nona 2008.05.06 1.8k
1614 봇관련 NT봇 로그인창에서 더이상 넘어가지 않는 오류 확인했습니다. 19 푸~우~ 2008.05.06 2.2k
1613 봇관련 드디어 nt 봇 11번 라인 오류 이유를 알아내었습니다... 11 묵향일까나 2008.05.07 2.4k
1612 봇관련 NTBot 멘땅 콜드+파이어 2원소 소소로 카운테스 잡기 3 차차[A1L] 2008.05.07 2.6k
1611 디아관련 인벤이 꽉 차서 포탈책 확인책도 넣을 공간이 없다면? 15 이쁨쟁이 2008.05.08 2.0k
1610 디아관련 D2BS 실행파일 활용해보자. 6 아토믹스 2008.05.08 2.3k
1609 디아관련 봇순이의 Die 확률을 낮추려면..중복일지도 모르겠지만 14 imic대천사 2008.05.11 1.5k
1608 봇관련 쫄봇(D2Loader) 돌리는분들 팁! 11 Gods_아르♬ 2008.05.12 4.8k
1607 봇관련 [NT봇]시간맞춰 봇을 꺼 봅시다!! 무식하게 ^^; 17 DeeP_SorroW 2008.05.13 2.2k
1606 디아관련 질딘 상대방이 아이템 보이게하는 실험결과 8 SeDa_마신™ 2008.05.14 1.6k
1605 디아관련 중독감소 옵션에 대한 글입니다. 6 아라미짱 2008.05.14 4.8k
1604 봇관련 nt봇(2.5.3) 16 방상적용 편법 해결한듯합니당 28 후니^^™ 2008.05.14 2.8k
1603 봇관련 [NT] 로그에 숨랩과 에테 여부 추가해보자 19 아토믹스 2008.05.16 2.0k
1602 디아관련 복룬에 대한 오해 - 세탁하면 사라지지 않는다??? 32 afewgoodman 2008.05.17 2.4k