Skip to content
봇관련다크 모드

쫄봇을 이용한 퀘드랍 자동사냥 방법(날아다녀님 NTBot4.2_2 2차)

조회 수
3,238
추천 수
20
등록일

쫄봇을 이용한 퀘드랍 자동 사냥 방법 (D2NT3.1_NTBot4.2_2 - 날아다녀님 2차 수정 버젼)
=======================================================
업데이트
4.49
NTConfig_StartDelay 설정할 필요 없도록 새로운 방법을 올렸습니다. 새방법으로 하시기 바랍니다. http://tradia.me/diablo2/diablo2_tips/238251



쫄봇으로 방을 만들고, 퀘드랍 된 기사가 조인하여 함께 자동 사냥하는 방법입니다.
NTBot4.2_0 버젼에서 방법을 전에 올렸으나, 2차 수정버젼에서 안된다고 문의하시는 분들이 있어서 새 버젼에 맞는 방법을 올립니다.

###################################################



# 0.
A. 방 만드는 캐릭(쫄)명 - "GameMaker"
B. 조인 할 기사명 - "Master"
C. 기타 쫄
로 할 때


# 1.
로더 진입점 - 모두 NTbot.ntj


# 2.
NTBot.ntj 설정
쫄봇 사용시의 통상의 경우와 반대입니다. 잘 확인하세요.

// 쫄봇
//==============================================
leechBotMasterAccount = "A 방 만드는 캐릭(쫄)의 계정명"; //
leechBotMasterIsAuto = true; //


// 쫄 계정이름 설정하기
//----------------------
leechBotLeechAccountList.push("B 조인 할 기사 계정명");
//leechBotLeechAccountList.push("C 기타 쫄 계정명");


# 3-1
scripts\NTBot\char_configs\NTConfig.ntl
 
 // 자동쫄봇용 변수 추가
 var MyConfig_LeechBotGameMaker;


# 3-2
캐릭별 설정 ( \scripts\NTBot\char_configs\NTConfig_클래스_캐릭명.ntl )


0) 공통
NTConfig_PublicMode = true;

1) B. 조인 할 기사

 NTConfig_Script.push("MyLeechBotMaster.ntj");
 MyConfig_LeechBot = 1; // 쫄 인원수 = 0: 기사를 직접할 경우/ 1 이상: 기사가 봇일 경우
 MyConfig_LeechBotWait = 60; // 쫄 기다릴 최대 시간(초)
 //------------------ 이하 추가
 MyConfig_LeechBotGameMaker = "GameMaker"; // A. 방 만드는 캐릭(쫄)명

 그 다음 원하는 앵벌 코스를 통상의 쫄봇기사 설정 그대로 합니다.
 MyConfig_DiabloLeechBot = 2; 처럼 ***LeechBot 설정이 있는 스크립트가 운용하기에 편리합니다.
 (MyMephisto.ntj / MyDuriel.ntj / MyAndariel.ntj / NTDiablo.ntj / NTBaal 등)
 스크립트에서 쫄 운용하는 방법은 제 지난 글을 참고 하세요.
http://tradia.me/diablo2/diablo2_tips/231861
 ***************************************************************************
 참고: 2차 수정 버젼에서 "ATTACK" 명령이 추가되었습니다.
 마을에 쫄이 있을 경우 "OUT"과 "RESUME" 명령을 내린 것과 같습니다.
 ***************************************************************************
 
 
 2) A. 방 만드는 캐릭(쫄)

//이하는 예시 입니다. 사용자 임의대로 합니다.
NTConfig_Script.push("MyLeechBot.ntj"); // 쫄봇(쫄)
 MyConfig_LeechBotItem = true; // 방 입장 후 아이템 등 정리하기
 MyConfig_LeechBotDistance = [10, 20]; // 기사와의 간격 = [최소, 최대]
 MyConfig_LeechBotAttack = [25, 300]; // 몬스터 잡기 = [몬스터와의 간격, 공격 시간(1/1000초) 간격]
 MyConfig_LeechBotPick = 2000; // 아이템 줍기 = 확인 시간(1/1000초) 간격
 MyConfig_LeechBotTeleport = false; // 텔레포트 사용하기
 MyConfig_LeechBotPrecast = [1000, 1, 1, false, 0, 0]; // [프리캐스트 시간(1/1000초) 간격, 배틀 오더스, 샤우트, 네크로맨서 소환 스펠, 네크로맨서 저주, 팔라딘 오라]
 MyConfig_LeechBotMerc = 2000; // 용병 살리기 = 확인 시간(1/1000초) 간격
 MyConfig_LeechBotMaster = ""; // 방에 있는 특정 캐릭터를 기사로 설정하기
...........................
 
 //************************************************
 //중요!!!! NTConfig_StartDelay = 0; 를 찾아서 넉넉히 변경 합니다.
NTConfig_StartDelay = 6000; // 방 입장 후 지연 시간(1/1000초)

3) C. 기타 쫄

 NTConfig_Script.push("MyLeechBot.ntj");
 ...........................
NTConfig_StartDelay = 2000; // 방 입장 후 지연 시간(1/1000초)


# 4
\scripts\NTBot\bots\MyLeechBotMaster.ntj
 function MyMain()
 {
 LeechBotNameMsg = 0;

 NTConfig_PublicMode = true;

 if (MyConfig_LeechBot > 0)
 {
//--------------- 이하 추가
 if (MyConfig_LeechBotGameMaker)
MyIL_File("NTBot/MyData/LeechBot/LeechBotMasterName.txt", 1, me.name);
 //------------------- 이상



***************************************************************************************************************************
일단 여기까지만 해도, 로더에서 기사 캐릭 및 기타 쫄 실행 > 방 만들캐릭 게임 실행 순서로 로딩하면 자동 사냥 가능 합니다.

*********************************************************************************************************************************
이 하는 방 만드는 캐릭이 팅기거나 치킨 할 만일의 경우,
기사는 그대로 사냥 진행중인데 방잡이는 새로 방만들고 > 기사 안들어와 방폭 > 방 만들기 ...이런 문제를 방지 하기위한 코드 수정 입니다.
수정하면 수동으로 방잡이 쫄이 나가도 기사도 같이 나가게 되니 게임진행에 참고하세요.





# 5
\scripts\NTBot\tools\NTToolsThread.ntj
 
1)

 function NTMain()
 {
 Include("libs/common/NTCommon.ntl");
 NTC_IncludeConfig("NTBot/char_configs");
 NT_LoadConfig();
 // 10 행 아래 추가
 // <---------------------------------------------- TT_mod
 var _qdropMaster = false;
 var _gamemaker; 
 var _masterName;
 
 if (MyConfig_LeechBotGameMaker)
 {
 _masterName = My_File("NTBot/MyData/LeechBot/LeechBotMasterName.txt", 0);
 if (me.name == _masterName)
 {
 Include("libs/common/MyUnit.ntl");
 _qdropMaster = true;
 }
 }
 // ----------------------------------------------> TT_mod

2)

 // 30 행 
while (true)
 {
 //추가<---------------------------------------------- TT_mod
 if (_qdropMaster ) 
 {
 _gamemaker = MyUn_GetPlayer(MyConfig_LeechBotGameMaker);
 if (!_gamemaker) // <
 {
 SendCopyData("D2NT Manager", null, 7<<16, "yc1Go after the game maker.");
 ExitGame(); 
 return;

 } 
 // ----------------------------------------------> TT_mod
 
 3)
 // 맨 뒤나 앞에 함수 추가

function My_File(path, mode, msg, delay)
{
 var _msg = "";
 var _line = "";
 var _fileHandle;
 var _isFileCheck = false;

 if (arguments.length < 3) msg = "";
 if (arguments.length < 4) delay = (mode > 0) ? 5 : 2;

 while (delay--)
 {
 if (mode == 2 && !_isFileCheck)
 {
 _fileHandle = FileOpen(path, 0);
 if (!_fileHandle)
 _fileHandle = FileOpen(path, 1);

 if (_fileHandle)
 _fileHandle.Close();

 _isFileCheck = true;
 }

 _fileHandle = FileOpen(path, mode);
 if (_fileHandle)
 break;

 if (delay)
 Delay(200);
 }

 if (_fileHandle)
 {
 if (mode == 0)
 {
 while (!_fileHandle.eof)
 {
 _line = _fileHandle.ReadLine();
 if (_line || !_fileHandle.eof)
 _msg += _line + msg;
 }
 }
 else if (msg)
 _fileHandle.WriteLine(msg);

 _fileHandle.Close();
 }

 return _msg;
}

*********************************************************
부록: 코드 수정 하는 법
의외로 코드 수정 하는 방법에 대해 문의하는 분들이 있습니다.
먼저 에디터를 준비합니다. 저는 EditPlus를 씁니다.
# 4
\scripts\NTBot\bots\MyLeechBotMaster.ntj
 function MyMain()
 {
 LeechBotNameMsg = 0;

 NTConfig_PublicMode = true;

 if (MyConfig_LeechBot > 0)
 {
 //--------------- 이하 추가
 if (MyConfig_LeechBotGameMaker)
MyIL_File("NTBot/MyData/LeechBot/LeechBotMasterName.txt", 1, me.name);
 //------------------- 이상

이 경우를 예로 하겠습니다.
경로에 들어가서 해당 파일을 에디터로 엽니다.
Ctrl+F 하면 찾기 창이 뜹니다. 입력란에 function MyMain() 쓰거나 붙여넣고 찾기 버튼 누릅니다.
원본 코드와 제가 올린 코드를 비교하여 새로 추가하거나 수정합니다.
위의 경우는 주석 처리된 부분
 //--------------- 이하 추가
 if (MyConfig_LeechBotGameMaker)
MyIL_File("NTBot/MyData/LeechBot/LeechBotMasterName.txt", 1, me.name);
 //------------------- 이상
을 복사해서 그 위치에 붙여 넣습니다.
댓글 35
  • 댓글 #239219

    늦은시간에 수고 많으시내요~ 좋은자료 감사합니다.
  • 댓글 #239222

    전버전에 이어 이번버전에도 적용시켜보니 잘 작동합니다..감사합니다..
  • 댓글 #239231

    수정버젼에서는 이럴케 어렵게 설정 안해도 되던대요~
  • 댓글 #239234

    ㅎㅎ 올리시느라 고생많으셨겠네요^^ 찬찬히 보면서 따라해봐야겠어요
  • 댓글 #239240

    좋은정보 감사합니다. 위 설정대로 다 따라하였지만 바바가 방만들고 소서와 햄딘을 대기하다 그냥 계속 나가서 다른방 만들고 반복합니다.
  • 댓글 #239243

    방을 계속 나가네요..? a방만듬다음 팔라기사로 로그인후 잠시후 나가버립니다....ㅠㅠ 그리고 또하나 바바가 계속 따로 방을 만듭니다..왜그런거죠...ㅠㅠ 퀘드랍쫄말고 그냥 기사 쫄은 잘되거든요......ㅠㅠ
  • 댓글 #239246

    저도 쓰던 봇을 수정했더니 방만들기만 열심히해서 손대지 않은 순정 이니로 다시 수정했더니 정상작동합니다
  • 댓글 #239249

    좋은 정보 감사합니다. thething 님 C케릭터 즉, 다른쫄이 방을 나가도 같이 나갈수 있게 할수 없을까요? C는 쫄봇은 아니고 MyDiaRunTeleport.ntj 쓰는 플라이소서인데요. LeechBot 이 아니라 인식을 못하는것 같습니다. 중간에 바바나 팔라가 치킨등으로 나가게 되면 소서만 혼자 남게 됩니다. 어떻게 방법이 없을까요?
  • 댓글 #239252

    헐...시도해보겠습니다 쫄봇은 얼마전 성공했는데 퀘드랍은 또 얼마나 역경을 딛고 성공할런지 ㅎㅎ 유용한 대박정보 정말 감사감사 드립니다^^
  • 댓글 #239258

    쿠울님// 혹시 스타트 딜레이 시간 너무 작은값을 주지 않으셨는지요. 방만드는 바바 캐릭 설정 파일에서 NTConfig_StartDelay = 17000; // 방 입장 후 지연 시간(1/1000초) 스타트 딜레이 요걸 전 넉넉하게 17초 설정합니다. 요렇게 시간을 넉넉히 주면 바바가 방만들고 기사 팔라와 기타 쫄 캐릭들이 들어와서 바바빼고 파티를 맺더군요.. 그리고 정확히 17초 되서 바바가 마지막 파티를 하더군요. 이시간이 짧을수록 파티가 완료가 안되서 그런지 팅겨서 나가더군요.. 적당히 조절해서 테스트 해보세요. 아 기사팔라딘이나 기타 쫄들은 스타트딜레이시간 3초정도 주고 합니다. NTConfig_StartDelay = 3000; // 방 입장 후 지연 시간(1/1000초)
  • 댓글 #239261

    카인 / # 5 \scripts\NTBot\tools\NTToolsThread.ntj 2) // 50 행 var _leecherA; while (true) { //추가<---------------------------------------------- TT_mod if (_qdropMaster ) { _gamemaker = MyUn_GetPlayer(MyConfig_LeechBotGameMaker); // 모니터할 쫄 추가 _leecherA = MyUn_GetPlayer("플라이소서캐릭명"); if (!_gamemaker || !_leecherA) // 모니터할 쫄 추가 { SendCopyData("D2NT Manager", null, 7<<16, "yc1Go after the game maker."); ExitGame(); return; } } // ----------------------------------------------> TT_mod 이런식으로 응용하시면 되겠네요.
  • 댓글 #239264

    thething님 우선 감사하단 말씀 드리며 몇가지 문의점 우선 돌려보니 잘돌아가는데 혹시 1) 불의강 웨이부터 오더 받고 사냥가는방법점 없을까요? 1차 수정본에서는 불의강에서 오더받고 사냥 가던데 2차 수정본부터는 카오스 입구에서 오더받더라고요~ 2)그리고 혹시 쫄소서가 카오수 입구까지 날라가서 포탈열고 전체(쫄,기사)들어와서 오더받고 사냥가게할수는 없나요??
  • 댓글 #239267

    영원의반지 / 조만간 쫄봇을 텔레포터로 응용하는 방법 - 강좌 올리겠습니다.
  • 댓글 #239270

    thething님 올리시는 내용은 정말 매번 도움이 많이 되고 있습니다. 꼭 필요했던 부분에 대해서 mod를 해주시는것도 그렇지만 읽다보면 봇의 구조에 대해서 전체적으로 이렇게 돌아가는구나 하는 감도 오고... 다음 강좌도 기대되네요.
  • 댓글 #239273

    저같은 쌩초보도 우째우째 돌아가게 해주셔서 감사하단 말씀부터 드립니다.. 저는 다른건 다 잘(?)되는거 같습니다.. 그런데 오더를 웨이서부터 시작하던지 입구부터 시작하던지 간에 처음 한번만 오더 받은뒤론 오더를 받지 못해서 매방마다 오더꺼지면 바로바로 치킨되버리네요.. 제팔라가 워낙 허접해놔서 오더 없이는 카오스에서 못버티네요 ㅜ 오더가 꺼지면 다시 오더를 받는 방법이 없을까요..?
  • 댓글 #239276

    아샤수 / 제 지난글 중에 쫄봇에 함성 명령 하는 법이 있습니다. 그걸 응용해서 스크립트 중간에 함성 명령을 넣어주면 됩니다.
  • 댓글 #239282

    thething 님// 너무 자세히 알려주셔서 감사합니다..바로되네요.그런데 궁금한게 있어서요 팔라리뎀션설정을 70%맞쳣는데도 리뎀션을 안해요; 그래서 자꾸 치킨당하네요. 수정하는방법이 따로 있는건가요?
  • 댓글 #239285

    나카시마미카 / 팔라가 기사인가요? 위 방법이 리뎀션에 영향을 주지는 않을텐데요. 90으로 하고 모니터 해보세요.
  • 댓글 #239288

    에러때문에 고생이 많았는데, 날아다녀님 2차버젼을 알집으로 풀었더니 에러발생하고 안되던 거였네요. winrar설치후 압축풀어서 적용해서 사용하니 잘됩니다..감사합니다... 플라이소서 기능추가된 정강도 기되됩니다.~~ thething님 좋은하루되세요.
  • 댓글 #239291

    기사를 수동모드(쫄수=0)로 할경우 파티 맺는중하며 방잡이가 그냥나가버리는군요,전버전에서 파티를 잘하고 따라다녔는데..쫄수를 설정한 자동의 경우는 잘되는데...어디를 손봐야 할까요?
  • 댓글 #239303

    좋은 정보 감사합니다. 그런데 기사를 수동모드 쫄인원 0으로 하면 방잡이하고 기타쫄이 들어왔다가 나가버리고 또 방 만드네요.. 어떻게 해야할지요. 도움 부탁드립니다. 쫄인원수에 맞게 쫄인원을 2로 하면 정상 작동하구요.
  • 댓글 #239309

    네 잘읽었습니다. 유용한정보 감사드립니다 수고 하십시요!!!
  • 댓글 #239312

    전 새로운걸론 실패하고 이 설명으로 성공했네요..^^ 감사합니다~
  • 댓글 #239315

    와우 좋은정보감사합니다 ㅎㅎ 매일 번거롭게 알트텝하면서 퀘스트깨주던 귀찮음이 생각나네요
권한이 없습니다.
다크 모드