아이템이니 설정방법 - Tip & KnowHow
안녕하세요^^
오늘은 D2NT를 이용한 아이템이니 설정방법 마지막으로 Tip & KnowHow편을 적어볼까 합니다.
Tip & KnowHow편은 아이템이니 변천사와 자주 묻는 질문, 그리고 몇가지 팁을 위주로 알려드릴건데요~
잘 보시고 여러분들도 아이템이니 만드는 방법에 대해 고수가 되시길 바랍니다ㅋ
1. 아이템이니 기호 변천사
1) 28차 이하 버전 : 28차 이하버전에서의 기호는 %, ^, @, $ 네가지 입니다.
※ 28차에서만 각 기호들의 쓰임새와 예문을 쓰고, 이후버전에선 바뀐점이나 새 기호에 대해서만 설명합니다.
■ % : 보관할 아이템의 개수(이하)를 설정할때 쓰는 기호입니다.
※ 참고 : #이 있을땐 #뒤 제일 끝에 설정해야 하며 @보단 앞에 와야 합니다.
예1) [Name] == FlawlessSkull %3 -> 상급해골을 3개까지 보관합니다.
예2) [Type] == Ring && [Quality] == Unique # [ItemMaxManaPercent] >= 25 %5 @
-> 조던링을 큐빙용으로 5개까지 보관합니다.
■ $ : 보관할 아이템의 개수(이상)을 설정할때 쓰는 기호입니다.
※ 참고 : ^를 설정했을때는 ^의 오른쪽 끝에 설정하며, %와 $를 같이 설정할 수 없습니다.
※ 주의 : 착용아이템, 벨트아이템, 인벤토리에 보관하도록 설정한 아이템 등에는 적용되지 않습니다.
예) [Name] == FlawlessSkull %7 @ ^ [Name] == PerfectSkull $2
-> 퍼해골을 2개 이상 보관중일때 상급해골을 큐빙용으로 7개까지 보관합니다.
■ ^ : 특정 아이템을 보관 중일때만 보관할 아이템으로 설정할때 쓰는 기호입니다.
※ 참고
1) #, %, @ 뒤에 설정해야하며 한번만 설정할 수 있습니다.
예) [Name] == FlawlessSkull %3 @ ^ [Name] == PerfectSkull %3
-> 퍼해골이 3개미만일때 상급해골을 3개까지 큐빙용으로 보관합니다.
2) ^는 한 줄에 여러번 적용할 수 없으며, ^의 오른쪽에 %를 설정했을때 오른쪽 설정이 왼쪽 설정에 포함되면 왼쪽의 개수 설정 %이 제대로 적용되지 않습니다.
■ @ : 큐빙용 아이템을 설정할때 쓰는 기호입니다.
※ 참고1 : #, % 뒤에 쓰이며, @를 설정하면 미확인 아이템은 확인 후에 보관하게 됩니다.
※ 참고2 : 큐빙용으로 설정하면 매니저의 아이템 로그창 및 아이템리스트에 나타나지 않습니다.
예) [Type] == Ring && [Quality] == Magic @
-> 매직링을 큐빙용으로 보관합니다.(식별후 아이템이니에 보관할 아이템이 아닌경우 큐빙용으로 보관)
2) 29차수정 버전
※ %, $, ^, @는 28차와 동일합니다.
■ ["문자열"] : 아이템 옵션에 있는 모든 문자열을 검사할때 쓰입니다.
※ 참고 : 아이템 옵션의 "문자열"에 해당되는 문자열이 있으면 0이상, 없으면 -1이 되며, #의 구분 없이 모든 곳에 설정할 수 있습니다.
예1) ["장착시 17레벨의 메디테이션 오라의 효과 적용"] != -1
-> 아이템 옵션에 "장착시 17레벨의 메디테이션 오라의 효과 적용"이라는 문자열이 없으면 거짓(있으면 참)입니다.
예2) ["장착시 17레벨의 메디테이션 오라의 효과 적용"] == -1
-> 아이템 옵션에 "장착시 17레벨의 메디테이션 오라의 효과 적용"이라는 문자열이 없으면 참입니다.
예3) ["(어쎄신 전용)"] != -1
-> 아이템 옵션에 "(어쎄신 전용)"이라는 문자열이 없으면 거짓(있으면 참)입니다.
3) 30차수정 버전
※ %, $, ^, @는 28차와 동일하며, ["문자열"]는 29차와 동일합니다.
■ 개선 사항
29차수정에서 ["문자열"]에 %를 설정할 수 없던 문제 수정
4) 31차수정 버전
※ %, $, ^, @는 28차와 동일하며, ["*문자열"]이 추가되었습니다.
■ ["*문자열"] : 문자열 앞에 *(숫자) 표시가 가능해졌습니다.
예) ["*메디테이션 오라"] >= 16
-> 아이템 옵션에 "메디테이션 오라"란 문자열과 맨 앞의 숫자가 16이상이면 참
5) 32차 ~ 33차수정 버전
※ %, $, ^, @는 28차와 동일하며, ["문자열"]과 ["*문자열"]은 31차와 동일합니다.
※ 주의 : 새 텍스트문서로 아이템이니를 작성할때는 반드시 유니코드로 저장해야하며, 문자열 검사는 바닥에 있는 아이템에는 적용되지 않습니다.
■ 개선 사황
(1) ["*문자열"]로 설정할때 앞의 2자리만 검사하던 문제 수정
(2) 길잡이 -> 캐릭터이니 -> 아이템 하단의 nip+ 삭제버튼 추가(이니 수정후 반드시 눌러줘야 적용)
(3) 보관중인 아이템의 개수를 확인하는 옵션 $가 적용되지 않던 문제 수정
6) 34차수정 버전
※ 34차수정부터 기호 등 아이템이니의 지각변동이 시작됩니다. 큐빙의 @는 그대로 유지됩니다.
■ %와 $를 삭제하고 [Total] 추가 : 보관 중인 아이템 개수 설정이 [Total]로 변경되었습니다.
※ 주의 : ## 뒤에 설정하며, @ 앞에 옵니다.
예) [Type] == Ring && [Quality] == Unique # [ItemMaxManaPercent] >= 25 ## [Total] < 5 @
-> 조던링을 큐빙용으로 최대 5개까지 보관합니다.
■ ^를 삭제하고 ^=, ^! 추가 : 특정 아이템을 보관중일때만 보관할 아이템 설정이 ^=, ^!로 변경되었습니다.
※ 주의 : ^=(참)과 ^!(거짓)는 한번만 설정할 수 있으며, ^=과 ^! 오른쪽에 설정하면 적용되지 않습니다.
예) 옵션1 # 옵션1 ## 옵션1 @(적용) ^=(or ^!) 옵션2 # 옵션2 ## 옵션2 @(적용되지 않음)
※ 참고1 : 옵션1 ^= 옵션2면 옵션1과 옵션2가 모두 참이며, 옵션1 ^! 옵션2면 옵션2가 거짓이면 옵션1이 참입니다.
예1) [Name] == FlawlessSkull ## [Total] < 0 @ ^= [Name] == PerfectSkull ## [Total] >= 3
-> 퍼해골이 3개 이상이면 상급해골을 큐빙용으로 0개까지 보관합니다.(상급해골을 보관하지 않음)
예2) [Name] == FlawlessSkull ## [Total] < 3 @ ^! [Name] == PerfectSkull ## [Total] < 3
-> 퍼해골이 3개 미만이면 상급해골을 큐빙용으로 3개까지 보관합니다.
※ 참고 : 옵션1 ^=(or ^!) 옵션2 ## [Total] > 3에서 옵션2에 설정한 [ToTal]은 옵션2의 설정이 옵션1의 설정에 포함되면 제대로 적용되지 않습니다.
예) [Type] == Ring && [Quality] == Magic ## [Total] < 3 @ ^= [Type] == Ring && [Quality] == Magic # [FireResist] >= 1 ## [Total] < 10 -->> '[Type] == Ring && [Quality] == Magic # [FireResist] >= 1'이 '[Type] == Ring && [Quality] == Magic'에 포함됩니다.
■ ["문자열"], ["*문자열"]을 삭제하고 ['문자열'], ['{숫자위치}문자열'] 추가
※ 참고 : ['문자열'], ['{숫자위치}문자열']은 [Keyword]가 적용되지 않는 옵션(오오라등)을 검사할 때 사용됩니다.
(1) ['문자열']은 아이템 옵션에 '문자열'에 해당되는 문자열이 있으면 0이상(해당 문자열의 위치), 없으면 -1이 됩니다.
(2) ['{숫자 위치}문자열']에서 {숫자 위치}는 아이템 옵션의 문자열에서 '{숫자 위치} + 1'번째 숫자를 검사합니다.
예) '20살 갑돌이의 몸무게는 50kg, 키는 170cm입니다.'에 ['{1}갑돌이']를 적용하면 두번째 숫자이므로 50이 됩니다.
(3) ['{숫자 위치}문자열']은 아이템 옵션에 '문자열'에 해당되는 문자열과 {숫자 위치}에 숫자가 있으면 숫자, 없으면 -1이 됩니다.
(4) ['문자열'], ['{숫자 위치}문자열'] 등은 #의 구분 없이 모든 곳에 설정할 수 있습니다.
7) 35차수정 버전
■ 34차에서 사용되었던 ##, [Total], ^=, ^! 등을 삭제하고 ['{Total:방식}아이템 옵션{개수}']가 추가 되었습니다. 보관중인 아이템 개수 검사는 ['{Total:방식}아이템 옵션{개수}']로 바뀌었습니다.
※ 방식
(1) Keep -> 보관 여부를 확인할 때마다 개수 검사하기 * 줍기, 풀기, 큐빙한 후 보관 여부 등을 확인할 경우 적용
적용방법 : ['{Total:keep}아이템옵션{개수}']
(2) Cubing -> 큐빙할 때만 개수 검사하기
적용방법 : ['{Total:Cubing}아이템옵션{개수}']
(3) Warehouse -> 창고지기를 이용할 때만 개수 검사하기
적용방법 : ['{Total:Warehouse}아이템옵션{개수}']
※ 참고1 : 방식을 여러개 설정할 때는 ,로 분리합니다. 예) ['{Total:Keep,Cubing}아이템옵션{개수}']
※ 참고2 : Total, Keep, Cubing, Warehouse 등은 대소문자를 구분하지 않습니다.
(4) 실제 적용방법
예1) [Name] == Ruby # ['{total:keep}[Name] == Ruby{< 3}']
-> 루비를 3개까지 보관합니다.
예2) [Name] == Ruby # ['{total:keep}[Name] == Ruby{< 3}'] @
-> 루비를 큐빙용으로 3개까지 보관합니다.
예3) [Name] == FlawlessRuby # ['{total:keep}[Name] == FlawlessRuby{< 3}'] && ['{total:keep}[Name] == PerfectRuby{< 1}'] @
-> 퍼루비가 1개미만일때 상급루비를 3개까지 큐빙용으로 보관합니다.
예4) [Name] == Ruby # ['{total:keep}[Name] == Ruby{< 1}'] && ['{total:keep}[Name] == GulRune{>= 2}'] @
-> 굴룬이 2개 이상일때 루비를 큐빙용으로 1개까지 보관합니다.
■ 문자열 검사 옵션인 ['문자열'], ['{숫자위치}문자열']는 34차와 동일합니다.
8) 36차수정 버전
※ 문자열 관련하여 몇가지가 보완되었으며, 문자열 안의 @ 오류가 수정되었습니다. 나머지는 35차와 동일합니다.
■ ? 추가 : ['{Total:keep}아이템옵션{개수}'] 에서 아이템옵션을 ?로 설정하면 ['{Total:keep}아이템옵션{개수}'] 보다 앞에 있는 설정으로 대체됩니다.
예) [Name] == Skull # ['{Total:Keep}[Name] == Skull{< 3}']
-> [Name] == Skull # ['{Total:Keep}?{< 3}']와 동일하게 적용됩니다.
■ ['{Total:keep}아이템옵션 @{개수}'] @ 와 같이 @가 두개 있을 경우 아이템옵션 뒤의 @를 큐빙으로 인식하지 않고 아이템옵션으로 인식했던 오류가 수정되었습니다.
예) [Type] == Jewel # ['{Total:Keep}[Type] == Jewel @{< 1}'] @
-> 35차에서는 오류로 인식, 36차에선 정상적으로 인식
2. 아이템이니 설정 Tip & KnowHow & 자주 묻는 질문
※ 35차수정 기준이며 글 작성 이후에도 생각나는 것이 있으면 꾸준히 추가하겠습니다.
■ 여러줄? 한줄?
통찰력 이니를 예로 들어봅시다.
[Name] == Thresher && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
[Name] == CrypticAxe && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
[Name] == GiantThresher && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
[Name] == GreatPoleaxe && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
[Name] == ColossusVoulge && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
위처럼 여러줄로 표현하는 방법도 있지만... 비교문구를 이용하여 한줄로 표현할 수도 있습니다.
([Name] == Thresher || [Name] == CrypticAxe || [Name] == GiantThresher || [Name] == GreatPoleaxe || [Name] == ColossusVoulge) && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4 //
위처럼 일일히 이름을 나열할 수도 있지만.. [Type] 키워드를 이용하면 더욱 간결해집니다.
[Type] == polearm && [Class] == elite && [Name] != ogreaxe && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
※ 에테 엘리트 폴암중 오우거액스는 통찰력 재료가 아니므로 제외시켰습니다.
■ MyCubing.nip은 반드시 있어야 한다?
실전편에도 썼던 내용이지만 사용하는 이니폴더에 nip파일이 여러개인것은 눈으로 보기 쉽고, 수정하기 쉽도록 분류를 해놓은 것일뿐 하나의 파일로 합쳐도 상관없습니다.
MyCubing.nip도 마찬가지로 큐빙에 관련된 이니를 따로 만들어 쉽게 보기 위함이기 때문에 없어도 상관은 없습니다.
■ 아이템이니를 여러개 쓰면 각 이니별로 설정된 모든 아이템은 다 줍는다?
결론적으로 말씀드리면 '그렇지 않다'입니다.
샤코를 예를 들어 말씀드려보겠습니다.
4개의 이니를 같이 쓰고 있고 각 이니의 유니크파일에 아래와 같이 각각 있다고 가정해봅시다.
(1) [Name] == Shako && [Quality] == Unique
(2) [Name] == Shako && [Quality] == Unique # [Defense] >= 130
(3) [Name] == Shako && [Quality] == Unique # [Defense] >= 141
(4) [Name] == Shako && [Quality] == Unique && [Flag] == ethereal # [Defense] >= 211
각기 다른 조건의 이니입니다. 그럼 4개를 다 줏을까요? 결론은 (1)의 유닉 샤코면 다 줍게 됩니다.
왜냐~ (2),(3),(4)의 조건이 (1)의 조건에 포함되기 때문이죠.
쉽게 이렇게 생각하면 됩니다. 같은 이니일 경우 가장 짧은 문장의 이니를 따르게 된다^^
큐빙이니도 마찬가지입니다.
[Name] == PerfectRuby
[Name] == PerfectRuby @
이렇게 두개가 있다고 하면 문장이 짧은것이 [Name] == PerfectRuby죠?
따라서 [Name] == PerfectRuby @는 무시됩니다.
■ 자동사냥을 하다가 갑자기 멈춘 후 동작하지 않습니다.(일명 멍때림)
여러가지 증상으로 멈출 수 있지만 우선 메세지창 보기인 M을 눌러줍니다.
그런 후 C:\............\scripts\libs\common\MyPick.ntl(...) : SynTax error 라는 빨간색 줄이 있다면 100% 아이템이니쪽 에러입니다.
에러가 났을 경우 Pause/Break 를 누르게되면 엔티봇이 종료되고 한번 더 Pause/Break를 누르면 엔티봇이 재시작하게 됩니다. 이때 PageUp 버튼을 누르면 진입점이 AutoItem으로 바뀌게 됩니다.
(화면상에선 날아다녀의 오토아이템 세계에 오신걸 환영합니다.. 이 비슷한 메세지가 나옵니다.)
그런 후 키보드 알파벳 위의 숫자 0을 누르면 아이템이니 검사를 하게되고, 메세지창을 보시고 경로와 라인을 찾아 잘못된 부분을 수정하신 뒤 저장하시고 길잡이 -> 캐릭터이니 -> 아이템 탭에서 nip+ 삭제 버튼을 누르시고 봇을 재시작 하거나 새로운 방을 만드시면 수정된 사항이 적용됩니다.
■ 제대로 수정을 하였는데 실제로 들어가서 사냥하면 수정된 사항이 반영되지 않습니다.
위의 경우는 3가지로 압축될 수 있습니다.
1) 아이템이니를 수정하신 뒤 nip+ 삭제 버튼을 누르지 않았을때 위와 같은 현상이 나타납니다.
반드시 길잡이에서 nip+ 삭제버튼을 누르시거나 \scripts\NTBot\item_configs\Optimization 폴더에서 Optimization_삭제하기.bat를 눌러주시고 봇을 재시작하거나 새로 방을 만들면 정상적으로 작동합니다.
2) 진입점이 자동사냥(NTAutoHunt.ntj)이 아닌 오토무브(NTAutoMove.ntj)일 경우에 그럴 수 있습니다.
길잡이 -> 캐릭터이니를 보시면 AutoHunt, AutoMove, AutoItem 이 세가지가 있습니다.
이 세가지 다 각각 아이템이니를 따로 설정하셔야 하는데 보통 AutoHunt만 아이템이니를 설정하고 나머지 2개에 대해서는 설정 안하는 경우가 많습니다. 그래서 이런 현상이 생기죠. 모두 동일한 아이템이니로 설정하시면 증상이 없어질 수 있습니다.
3) 아이템이니 검사를 했는데, 분명히 수정하였음에도 불구하고 계속 같은 에러가 나는 경우에 그럴 수 있습니다.
이는 AutoHunt의 아이템이니와 길잡이 -> AutoItem에서의 아이템이니가 다르기 때문입니다.
아이템이니 검사는 AutoItem에서 아이템이니 -> 검사할 아이템이니에 등록된 이니를 검사합니다.
AutoHunt와 AutoItem의 아이템이니를 동일하게 등록시키시면 해당 증상이 사라집니다.
■ nip+ 삭제 버튼이 계속 빨간색으로 활성화가 됩니다. 계속 눌러줘야 하나요?
nip+ 삭제 버튼은 아이템이니를 최적화시켜 랙을 줄여주는 역활을 하게 됩니다.
실제로 봇을 몇마리 안돌릴 때는 크게 느끼질 못하지만, 수십~수백봇을 돌리는 사람에게는 효과가 아주 크다고 합니다.
아이템이니를 수정할때도 nip+ 삭제버튼이 빨갛게 활성화 되지만, 새로운 방을 만들고 사냥을 시작해도 활성화가 되기 때문에 일일히 버튼을 누르실 필요는 없습니다.
■ 아이템이니를 보면 //가 있는데 무슨 기호인가요?
아이템이니를 유심히 살펴보시면 //가 자주 등장합니다.
//는 주석을 넣을 때 사용하는 기호로 //뒤의 내용은 봇이 알아보지 못합니다.
즉... 아이템이니를 작성하고 부연설명을 하거나 해당 라인을 숨기고 싶을때 이니 뒤에 //를 넣고 한글 또는 영어로 설명을 하시면 됩니다.
예1) [Name] == Thresher && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4 // 통찰재료(쓰레셔) -> 이렇게 쓰면 // 뒤에 통찰재료(쓰레셔)는 봇이 인식하지 않습니다.
예2) //[Name] == Thresher && [Quality] == normal && [Flag] == ethereal # [Sockets] == 4
-> 이렇게 하면 해당 라인은 적용되지 않습니다. 흔히 주석처리를 한다라고 말합니다.
■ 이전 버전의 아이템이니를 그대로 옮겨왔는데 이상하게 노멀or매직 액스류를 자꾸 줍습니다.
위의 버전별 아이템이니 기호 변천사를 보시면 아시겠지만.. 각 버전별로 개수 지정방식이 많이 바뀌었습니다.
바뀐 개수 지정 기호를 사용하지 않고 이전버전의 기호를 사용하게 되면 우리 눈에는 정상적으로 보일지 모르지만
봇이 볼때는 그게 매직액스로 보이게 됩니다.
따라서 각 차수별로 바뀐 기호를 숙지하시고 해당 기호를 쓰면 문제가 해결됩니다.
■ 아이템을 줏었는데 매니저의 아이템로그창에 나타나질 않습니다.
매니저의 아이템로그창에 보관한 아이템이 나타나지 않는 현상은 크게 두가지로 압축됩니다.
1) 큐빙용으로 설정된 아이템일 경우 매니저의 아이템 로그창에 나타나지 않습니다.
2) 길잡이 -> AutoHunt -> 캐릭터이니 로드 -> 아이템 -> 로그 -> 보관용 아이템 탭에서 '아이템 로그를 만들지 않을 아이템 목록'에 해당 아이템이 있을 경우 나타나지 않습니다. 이런 경우라면 체크를 해제하시면 됩니다.
자~ 이렇게 아이템이니 설정방법의 마지막을 장식하게 되었습니다.
제일 위에 말씀드렸드시 이 글은 앞으로도 수시로 업데이트 될 예정입니다.
제가 빠뜨린 부분이나 수정되거나 추가할 부분이 있다면 알려주세요. 업데이트에 반영하겠습니다^^