Skip to content

팁 게시판

NT봇 니가 먹는게 도대체 무엇이냐? (로그남기기)(9/05)수정

분류 봇관련 조회 수 3,023 추천 수 6

NT봇 니가 먹는게 도대체 무엇이냐? (로그남기기)입니다.

<<< 잘못작성된 부분 수정하다가 글이 반토막 나버려서 다시 재작성 해서 올립니다. >>>

우선 기존 팁을 알려주셨던 아토믹스님 과 앙마필두 님께 먼저 양해를 구하지 못하고
변형된 로그파일 만들기 설명을 올리게 되었습니다.

팁을 주신 두분께 감사 드리구요.

본 로그파일 기록에 관련한 내용은 상위 두분의 자료를 토대로 재구성한것입니다.

NT봇 은 디아블러네님이 올려주신.. 
NTbot2.5.3 modifications2+NewD2BS 0.9.0.5-jh (09/03) 을 사용하였습니다.
http://tradia.me/diablo2/download/39828

봇을 사용 하시다보면.. 상당히 답답한 부분이 한가지가 생깁니다..

그건 바로.. 인벤이나 스태쉬에 아이템은 없는데.. 돈은 수북하게 쌓입니다.
즉.. 줏어 먹은건 있는데.. 상점에 도로 팔아 버렸다는 거죠.

도대체 뭘 먹고 나서 팔아버린 건지 정말 답답하기 그지 없습니다.
하도 답답해서.. 지켜 보고 있을수도 없고 해서.. 로그남기는것에 대해서 찾아보기 시작 했습니다.

그래서 나온 것이 이것입니다. 앞서 말씀 드렸듯이 아토믹스 님과 앙마필두 님의 정보를 토대로 재구성 한것입니다.

이 로그파일에 남는 내용은 상점에 팔았던 스태쉬에 보관을 했던 상관없이 일단 줏어먹은건 무조껀 기록하게 합니다.

사냥터에서 사냥을 하다가 몹이 드랍한 아이템중 캐릭이 습득한(줏은) 아이템을 그순간에
로그파일에 기록하는 것입니다. D2 매니저상의 표시나 로그에는 전혀 수정을 하지 않은
오로지 줏은것이 무엇인지를 알아보기 위한 것입니다.
(포션은 제외 됩니다.)

아래는 로그 예제 입니다. 

로그 파일명 [hell]2008-09-04.txt 
<< 로그파일명은 D2 매니저에서 등록한.. 프로파일이름.. 즉 실행되는 창이름 + 날짜 입니다.

로그파일안의 내용. (역시 창이름과 날짜 시간 등이 기록됩니다.)
===============================================================================
[hell 2008/09/04 15:26:52]TakeIt [Magic] Grand Charm<75>---Andariel
[hell 2008/09/04 15:27:42]TakeIt [Magic] Gothic Plate<88>---Mausoleum
[hell 2008/09/04 15:30:41]TakeIt [Unique] Grand Charm<87>---Mephisto <-- 이거 기드참 맞죠?
[hell 2008/09/04 15:31:14]TakeIt [Magic] Horned Helm<75>---Andariel
[hell 2008/09/04 15:32:37]TakeIt [Magic] Crusader Gauntlets<88>---Mausoleum
[hell 2008/09/04 15:33:19]TakeIt [Rare] Matriarchal Bow<88>---Mausoleum
[hell 2008/09/04 15:37:00]TakeIt [Magic] Jewel<88>---Mausoleum
[hell 2008/09/04 15:43:25]TakeIt [Magic] Amulet<85>---Mausoleum
[hell 2008/09/04 15:53:25]TakeIt [Magic] Amulet<73>---Andariel
[hell 2008/09/04 15:54:49]TakeIt [Magic] Crystal Sword<85>---Mausoleum
[hell 2008/09/04 15:57:34]TakeIt [Rare] Light Plated Boots<87>---Mephisto
[hell 2008/09/04 15:59:14]TakeIt [Magic] Heavenly Stone<87>---Mephisto
[hell 2008/09/04 16:01:02]TakeIt [Rare] Unraveller Head<83>---Mephisto
[hell 2008/09/04 16:01:40]TakeIt [Magic] Amulet<75>---Andariel
[hell 2008/09/04 16:02:25]TakeIt [Magic] Mummified Trophy<88>---Mausoleum
[hell 2008/09/04 16:02:58]TakeIt [Magic] Vampirebone Gloves<88>---Mausoleum
[hell 2008/09/04 16:04:21]TakeIt [Magic] Sacred Globe<85>---Mausoleum
[hell 2008/09/04 16:05:56]TakeIt [Rare] Gargoyle Head<87>---Mephisto
[hell 2008/09/04 16:05:57]TakeIt [Magic] Clasped Orb<87>---Mephisto
[hell 2008/09/04 16:06:07]TakeIt [Magic] Grand Charm<86>---Mephisto
=================================================================================
(((( 기드참 분명이 줏었는데.. 인벤과 스태쉬에 기드참없어용.. 매찬이 낮아서 상점에 팔아버렸나봐요..)))))
(((( 이거 설명서 만들고 있는 사이에.. 흑흑.. 나뿐 봇... 낮아두 챙겨 두징...)))

상위 로그파일을 만들어서 기록을 구경해 보시고 싶으신분은... 다음 내용을 적용 하여 보시기 바랍니다.


Plugin\scripts\libs\bots 폴더 안의 NTLoader.dbl 파일의 NT_Loader 함수에
다음 한줄을 추가 하여야 합니다.

 _Current_Postion=NTConfig_Script[i]; <-- 추가해야할 문장.

해당 파일을 열어보시면 첫부분에 바로 해당 함수가 존재 합니다.
--------------------------------------------------------------------------------------------
function NT_Loader()
{
 var _result;

 for(var i = 0 ; i < NTConfig_Script.length ; i++)
 {
 NTTM_CheckAct(); 

 NTC_Delay(1000);
 NTC_SendLogToOOG(NTConfig_Script[i]); 
 _Current_Postion=NTConfig_Script[i]; // <-- 이줄이 추가된 줄입니다.
 switch(NTConfig_Script[i])
 {
 
 case "AncientTunnels":
NTC_Include("bots/NTAncientTunnels.dbl");
 _result = NT_AncientTunnels();
 break;
 case "Andariel":
 NTC_Include("bots/NTAndariel.dbl");
 _result = NT_Andariel();
 break;
--------------------------------------------------------------------------------------------


Plugin\scripts\libs\common 폴더안의 NTTownManager.dbl , NTCommon.dbl , NTSnagIt.dbl 이 3가지
파일에 또 추가해야 할 내용이 있습니다.

먼저 NTTownManager.dbl 파일에 다음내용을 추가 합니다.

var _Current_Postion; <-- 추가해야할 문장.

역시 첫부분에 바로 추가 하실수 있습니다. 
--------------------------------------------------------------------------------------------
var _NTTMGR_BuyPots;
var _NTTMGR_BuyTP;
var _NTTMGR_BuyKey;
var _NTTMGR_DoGamble;
var _NTTMGR_DoHeal;
var _NTTMGR_DoID;
var _NTTMGR_DoRepair;
var _NTTMGR_DoRevive;
var _NTTMGR_RemoveCurse;
var _Current_Postion; // <---- 이줄이 추가된 줄입니다.

function NTTMGR_TownManager(simple)
{
 if(arguments.length < 1)
 simple = false;

 NTC_ClearCursor();
 NTT_CleanPotions();
--------------------------------------------------------------------------------------------


다음 NTCommon.dbl 파일에 다음 함수들을 추가 합니다.
이파일에서는 맨 뒷부분에 추가 하시면 됩니다.

--------------------------------------------------------------------------------------------
function NTC_SendLogToLogFile(logString)
{
 var _logs;
 file=fileOpen("logs/["+me.windowtitle+"]"+GetDate('-')+".txt",2);
 _logs="["+me.windowtitle+" "+GetDate('/')+" "+GetTime()+"]"+logString;
 file.writeLine(_logs);
 file.close();
 return;
}

function GetDate(GD)
{
 var d = new Date();
 var t =
 FillZeros(d.getFullYear(), 4) + GD +
 FillZeros(d.getMonth() + 1, 2) + GD +
 FillZeros(d.getDate(), 2);
 return t;
}

function GetTime()
{
 var d = new Date();
 var s =
 FillZeros(d.getHours(), 2) + ':' +
 FillZeros(d.getMinutes(), 2) + ':' +
 FillZeros(d.getSeconds(), 2);
 return s;
}

function FillZeros(n, d)
{
 var zero = '';
 n = n.toString();
 if (n.length < d)
 {
 for (i = 0; i < d - n.length; i++)
 zero += '0';
 }
 return zero + n;
}
--------------------------------------------------------------------------------------------

다음 NTSnagIt.dbl 파일의 내용중..function NTSI_SnagIt() 함수의 중간쯤에
다음의 내용을 추가 하여야 합니다.

 var _eth;
 (_itemunit.getFlag(0x400000))? _eth="(eth)":_eth="";
 if(_itemunit.itemType != 4 && (_itemunit.itemType < 76 || _itemunit.itemType > 81))
 {
NTC_SendLogToLogFile("TakeIt [" + _eth + NTC_ItemQualityToNameList[_itemunit.quality] + "] " + _itemunit.name+"<"+_itemunit.ilvl+">" + "---"+_Current_Postion); }
 }

function NTSI_SnagIt() 함수는 해당 파일의 약 42번째 줄부터 시작이 되며 추가해야될 부분은
약 116 번째 줄에 존재 합니다. (각 유저마다 위치가 다를수 있습니다.)

--------------------------------------------------------------------------------------------
function NTSI_SnagIt()
{
 var _itemtosnag;

 _NTSI_ItemQueue = new NTSI_ItemListInt(null, NTConfig_SnagRange);
 _NTSI_ItemQueue.Update();

 _itemtosnag = _NTSI_ItemQueue.getClosest();

 if(_itemtosnag)
 {
 .
 .
 . 다 적을수는 없으니.. .(점)으로 생략 합니다..
 .
 .
 switch(_itemunit.quality)
 {
 case 4:
 print("Pick up c3" + _itemunit.name);
 break;
 case 5:
 print("Pick up c2" + _itemunit.name);
 break;
 case 6:
 print("Pick up c9" + _itemunit.name);
 break;
 case 7:
 print("Pick up c4" + _itemunit.name);
 break;
 case 8:
 print("Pick up c8" + _itemunit.name);
 break;
 default:
 print("Pick up c0" + _itemunit.name);

 if(_itemunit.itemType != 4 && (_itemunit.itemType < 76 || _itemunit.itemType > 81))
 {
NTC_SendLogToOOG("Kept [" + NTC_ItemQualityToNameList[_itemunit.quality] + "] " + _itemunit.name);
// Item Logger Start
writeLog(_itemunit, me);
// Item Logger End
 }
 break;
 }
 =============== 여기서 부터 추가 합니다... ===위쪽은 원본 그대로 수정하는 부분이 없습니다.======
 var _eth;
 (_itemunit.getFlag(0x400000))? _eth="(eth)":_eth="";
 if(_itemunit.itemType != 4 && (_itemunit.itemType < 76 || _itemunit.itemType > 81))
 {
NTC_SendLogToLogFile("TakeIt [" + _eth + NTC_ItemQualityToNameList[_itemunit.quality] + "] " + _itemunit.name+"<"+_itemunit.ilvl+">" + "---"+_Current_Postion); }
 }
 =============== 여기 까지 추가 하시면 됩니다.. ================================================
 _itemtosnag.HasBeenSnagged = NTSI_PickUpItemInt(_itemunit);
 }
 else
 {
--------------------------------------------------------------------------------------------

이렇게 총 4개의 파일을 수정(추가) 하신후 봇을 돌리시면
Plugin\scripts\logs 폴더 안에 해당창 이름과 날짜가 적힌 txt 파일이 생성 되며 메모장 등에서
쉽게 확인 하실수 있습니다.
댓글14
  • 용아양 2008.09.04 16:33
    많은 분들이 찾는 바로 그것!!이네요 대단하세요~추천 꽝!
  • 슬기로운코딱지 2008.09.04 16:34
    http://tradia.me/diablo2/diablo2_tips/185053 로그남기기 강좌는 찾아 보면 있어요. 펑션 네임도 같내요.
  • 용아양 2008.09.04 16:39
    장소까지 나오니 업글버젼아닌가요?
  • kalsae 2008.09.04 16:40
    슬기로운코딱지 // 아토믹스님 강좌를 토대로 한것 맞구용.. 아토믹스님 것과는 조금 다른부분이 있습니다. 제껀 필드에서 봇이 사냥하다가 아이템을 줍는순간 바로 기록로그파일에 남기는 것일뿐입니다. 기존 D2메니저 화면에 출력되는 데이터 상에는 전혀 변화가 없습니다. 아토믹스님껀 변화가 있거든요.. 제껀 그냥 추가 수준이라는...
  • 디아블로쓰리 2008.09.04 21:39
    전 로그남기기 에러 겪어서 밤새 전기세만 날렸던 기억이 있어서...로그 안한다는 ㅋ
  • kalsae 2008.09.04 23:40
    디아블로쓰리 // 로그 남기기 적용한지 9시간이 넘었습니다. 아직까지 오류 뜨지는 않네요. 로그를 보다 보니 또 보고 싶은게 막 생기네요. 상점에 판 아이템들 옵션이 어떻길래 팔았을까 하는... 으으으 유닉 그랜드참.. 기드참.. 없는데.. 그걸 왜 상점에 팔았을까 쥘쥘...
  • 생love 2008.09.04 23:43
    ㅎㅎ 로그보는 재미도 쏠쏠 하겠는데요~!
  • Gentle★Min 2008.09.05 22:07
    [PAL_G 2008/09/0521:23:42]TakeIt [Rare] Falchion (L84)<84>---undefined [PAL_G 2008/09/0521:23:55]TakeIt [(eth)Rare] Ethereal Maul (L83)<83>---undefined [PAL_G 2008/09/0521:28:41]TakeIt [Magic] Ring (L85)<85>---undefined [PAL_G 2008/09/0521:29:43]TakeIt [Magic] Amulet (L88)<88>---undefined ---------------------------------------------------------------------------------------------------------------- 위에 그대로 했는데;; 전왜 잡은몹이 표시가안될까요?.
  • kalsae 2008.09.05 22:46
    Gentle★Min // Plugin\scripts\libs\common 폴더안의 NTTownManager.dbl 에 var _Current_Postion; <-- 추가 하셨나요??
  • Gentle★Min 2008.09.06 01:43
    kalsae// 넵,,추가했는데.. 모두 undefined 라고 나오네요,.ㅠ
  • kalsae 2008.09.06 04:20
    Gentle★Min // 에공... 원문에 잘못된 부분이 있었네요. 다시 수정하였습니다.. 마지막 파일..수정 부분에서 _Current_boss 로 되어 있었네요. 그걸 _Current_Postion 으로 바꿔 주시면 됩니다.
  • Gentle★Min 2008.09.06 12:27
    kalsae // 처음부터 포지션으로 되어있지 않았나요?. NTC_SendLogToLogFile("TakeIt [" + _eth + NTC_ItemQualityToNameList[_itemunit.quality] + "] " + _itemunit.name+"<"+_itemunit.ilvl+">" + "---"+_Current_Postion); } 여기 마지막 부분 말씀하시는것 같은데;;처음부터 포지션으로 되어있습니다.
  • kingofasia 2008.09.14 00:04
    d:\diablo ii\Plugin\scripts\libs\common\NTCommon.dbl: line516;Error;Object not an item 메세지가 출력됩니다.. 왜그런가요?
  • 파랑무지개 2011.10.18 10:55
    위 강좌 잘읽어 봅니다...나중에 참고할일 잇으면 할께요

팁 게시판

번호 분류 제목 글쓴이 날짜 조회
공지   게시판 푸시 알림 / 통합 앱 서비스 31 file 트디개발자 2023.09.20 841.8k
공지 디아관련 에테리얼 벅큐빙 표 219 eunnanoDiablo™ 2008.03.05 140.7k
공지 디아관련 케릭별 갑옷 착용 모습 325 수린[아빠] 2009.06.09 111.8k
공지 디아관련 디아블로 각종 팁과 정보 간추림 입니다 (_ _) 1547 조은아저씨 2010.05.24 211.9k
공지 봇관련 유니크 업글 표 366 file 카인 2013.11.02 413.5k
476 봇관련 XP봇에서 핀들잡고 나락 안잡으러 가기 8 love_cgy 2008.09.20 1.4k
475 봇관련 NT 봇,체라소서 불사조로 스왑해서 리뎀션 하는 방법 7 체리 2008.09.18 2.1k
474 봇관련 구글 크롬을 아세요? 12 pindle-mind 2008.09.17 1.8k
473 봇관련 파이어 오브 소서 서몬(소환술사)에서 오류 자주 나면!? 8 앵벌의전설 2008.09.15 1.1k
472 봇관련 XP 봇, 벗는에러(?) 대처방법(수정) 11 봉구입니다 2008.09.14 1.6k
471 봇관련 runGC(); 16 [無敵] CliMaX 2008.09.13 1.6k
470 봇관련 NT 봇, 콜투관련 1 봉구입니다 2008.09.13 1.9k
469 봇관련 XP 봇, 겜블에러 해결 14 봉구입니다 2008.09.13 1.4k
468 봇관련 2원소봇순이 효율적인공격을위한 이뮨설정100에서85로 9 zzz365 2008.09.11 1.6k
467 봇관련 유용한 가상 멀티모니터 프로그램 10 pindle-mind 2008.09.09 2.7k
466 봇관련 [NT봇] 리슷율을 경이적으로 줄여주는 "RunGC" 29 ☆Anti-핀돌☆ 2008.09.09 3.5k
465 봇관련 CPU 점유율에 관한 간단한 TIP 14 [無情]디아블러네 2008.09.09 3.3k
464 봇관련 [9/10] [NT]new D2BS 0.9.0.5 에서 숨렙과 보스 기록을 남겨보자! 29 랑랑 2008.09.08 1.7k
463 봇관련 플러그인 폴더를 하나 더 생성하면 한글 채팅 가능합니다 8 클레오팻드라 2008.09.07 1.6k
462 봇관련 NT 봇, 아이템 옵션 표시하기 13 봉구입니다 2008.09.06 2.0k
461 봇관련 NT 봇, 기드참 무시하기(수정) 15 file 봉구입니다 2008.09.06 2.8k
460 봇관련 NT bot 포션 먹기에 대한 고찰 (완결) 20 [無情]디아블러네 2008.09.05 3.5k
> 봇관련 NT봇 니가 먹는게 도대체 무엇이냐? (로그남기기)(9/05)수정 14 kalsae 2008.09.04 3.0k
458 봇관련 아래글 "NT봇, 타운포탈 관련"에 얘기를 더 하면... 1 Arthur 2008.09.04 1.2k
457 봇관련 헐 이런일이 100방 돌았는데..ㄷㄷ 21 단무지다다 2008.09.04 3.6k