(경고) 이 프로그램을 사용하여 발생하는 불이익은 모두 각자의 책임입니다.
우연히 인터넷을 떠돌다가 봇의 존재를 알게 되었습니다. 어둠의 경로로 퍼지는 봇이 아니라 당당하게 GitHub에 올라온 봇이므로 사용 방법을 공유하도록 하겠습니다.
개인적인 의견으로는 이미지 분석을 이용한 수동과 비슷한 조작 방식이라서 크게 위험해 보이지는 않습니다. 실제 소스를 확인해 보면 악성 코드로 인식할 만한 어떠한 라이브러리도 포함하고 있지 않습니다.
불안하신 분은 손도 대지 마시기를 권장합니다.
미니콘다 설치
이 설명이 필요하지 않은 분은 아나콘다 사용법을 충분히 아는 사용자라고 간주하겠습니다.
Miniconda – Conda documentation
자신의 운영체제에 맞는 설치 파일을 다운 받으시면 됩니다. 디아블로2 레저렉션을 플레이 하시는 분들은 대부분 윈도우 64비트를 사용하실 것으로 예상됩니다.
나중에 쉽게 빌드하기 위해 패스를 환경 변수로 추가하시는 것을 권장합니다.
봇 다운로드
현재 올라온 BOTTY 깃허브 URL입니다.
GitHub – aeon0/botty: D2R Pixel Bot
언제까지 공유될지는 모르겠지만 현재는 아무 제재없이 공유가 이루어지고 있는 것으로 보입니다.
제작자는정보성 또는 교육 목적으로만 제공하고 있다고 기술하고 있습니다.
잘 아시는 분은 git의 clone 기능을 이용하여 설치하셔도 되고 모르시겠으면 그냥 Download ZIP을 이용하여 다운을 받습니다.
다음과 같은 파일들이 포함되어 있습니다. 적당한 경로에 압축을 풀어 놓습니다.
Visual Studio Code에서 실행하기
Visual Studio Code가 없으신 분들은 먼저 설치하시기 바랍니다.
Visual Studio Code – Code Editing. Redefined
VS Code를 실행하여 File > Open Folder…에서 압축을 푼 경로를 선택합니다.
왼쪽에 다음과 같이 표시되면 성공입니다.
Terminal > New Terminal을 통해서PowerShell 또는 Command Prompt를 실행합니다.
하단에 다음과 같이 터미널 창이 열리면 성공입니다.
파이썬 컴파일 환경 인스톨
.\run.bat 라고 입력하면 다음과 같은 메뉴가 뜨는데 먼저 1번을 선택해 보겠습니다. 추후 라이브러리가 업데이트 됐으면 메뉴 2번을 선택하여 업데이트 할 수도 있습니다.
봇 코드 컴파일에 필요한 라이브러리들이 자동으로 다운로드 및 설치가 진행됩니다. 이와 같은 화면이 안 보이신다면 conda의 path 설정 등을 점검해 보시기 바랍니다.
확인해 보니 테서랙트도 설치하는데 오픈 소스로 제공되는 OCR(광학 문자 인식) 엔진입니다.
custom.ini 파일 설정
config 폴더에 custom.ini 파일을 직접 생성하여 다음과 같이 작성할 수 있습니다. param.ini 파일보다우선적으로 적용됩니다.
param.ini 파일은 새로운 버전이 나올 때마다 변경될 수 있는 부분이므로 본인만의 설정을 custom.ini 파일에 별도로 설정해 놓는 것이 좋습니다.
(내용 추가)컴파일을 하면 botty_v0.6.7-dev/config 폴더에 자동 생성되는데 같은 방식으로 수정하면 됩니다.
봇 실행
컴파일을 따로 하지 않아도 메뉴 4번을 선택하면 디버그 모드로 바로 실행이 됩니다.이 때는 exe 파일을 실행하는 것이 아니라 파이썬 코드를 run 하는 것입니다.
실행되면 다음과 같은 메뉴가 보입니다. 봇을 실행하기 위해 f11을 눌러 보겠습니다.
다른 메뉴들에 대한 자세한 설명은 생략합니다.
봇이 실행되면 로그를 찍으며 잘 실행되는 것을 알 수 있습니다.
오프라인 캐릭터로 플레이를 시도해 보았습니다. 디아블로가 실행된 윈도우창의 스냅샷을 찍어가며 이미지를 분석하는 방식이네요.
OCR은 물론 오브젝트를 확률로 찾아가는 것으로 보아 여러 머신러닝 기술을 적용한 것 같습니다.
파이썬 코드 컴파일 및 실행
윈도우 실행 파일(exe)로 컴파일을 원하시면 메뉴에서 3번을 선택합니다.
컴파일을 시작하면 시간이 조금 걸리는데 마지막에 다음과 같은 메시지가 나오면 성공입니다.
컴파일 결과물로 botty_v0.6.7-dev 폴더 내에 생성된 exe 실행파일의 용량이 상당히 크지만 딱히 의심할 것은 없습니다. 많은 라이브러리가 파일 하나에 다 포함되어 그렇습니다.
botty_v0.6.7-dev 폴더의 main.exe 파일을 실행하면 동일하게 동작을 합니다.
잘 안 될 경우
설치가 잘 안 되는 경우 조치했었던 방법을 모아 보았습니다. 봇 프로그램 버전에 따라 조치 방법이 달라질 수 있습니다.
pyinstaller 설치
compile할 때 pyinstaller가 없으면 오류가 납니다. exe 실행 파일을 만들어 주는 라이브러리 입니다. 컴파일 환경 인스톨 시 자동으로 설치가 됐어야 할거 같은데 저 같은 경우에는 중간에 오류가 났는지 설치가 안 돼서 따로 설치해 주었습니다.
다음 명령어를 이용하여 설치할 수 있습니다.
pip install pyinstaller
environment.yml 파일 수정
저 같은 경우는 처음 봇 실행에 실패하였습니다. 그래서 environment.yml 파일에서 다음 부분을 삭제하고 C:\Users\본인계정\miniconda3\envs\botty 폴더를 제거 후 1번 Install Env를 다시 실행했더니 정상 동작하였습니다.
게임 옵션 변경
창 모드에 해상도는 1280×720으로 맞춰야 동작한다고 합니다. 봇을 실행하면 알아서 설정하고 재시작 하는 것 같기도 합니다. 그리고 이미지 문자 인식을 위해 필수로 영문판으로 설정해 주셔야 합니다.
실행파일 제공
각자 코드를 수정해서 더 완성도 높게 이용하고 싶은 분들을 위해 직접 컴파일 하는 방법을 소개하였지만 이 모든 것이 어렵다면 실행파일을 다운 받아서 실행해 보세요.
Assets에 있는 파일을 다운 받으시면 됩니다.
저도 많이 해보지 않았으므로 궁금한 점이 있으면 제작자 깃허브로 문의 부탁드립니다.
그리고 다시 말씀 드리지만 온라인 사용 시 문제가 발생할 수 있으므로 교육 목적으로 활용하시거나 오프라인에서만 재미삼아 해보시기 바랍니다.
아직 어설픈 점이 많지만 지속적으로 발전하길 기대해 보겠습니다.
감사합니다.
이 게시물에 26개의 답글이 있습니다.
이거 유료로 팔고 있는 사람도 있던데 무료로 배포되는 프로그램이었군요.
진짜 사용해도 괜찮을까요?
이거 지금도 되나요 ?
from discord import Webhook, RequestsWebhookAdapter, Color, InvalidArgument
ImportError: cannot import name ‘RequestsWebhookAdapter’ from ‘discord’ (C:\miniconda3\envs\botty
\lib\site-packages\discord\__init__.py)
이렇게 나오면 어떻게 조치해야 하나요?ㅜㅜ
컴파일이 제대로 되지 않는데 왜 그럴까요? 똑같이했는데 안됩니다..혹시 필수적으로 설치해야하는 프로그램이 더 있는지요?
저도 여기서 막혀서 풀어보는중이내요
다넘겻는대 mail.exe.도만들구요 사냥을 안하내요 … 셋팅이나 자동사냥시키는 법을 알고싶내요
실행시 아래 오류가 나는데..혹시 아는거 있나요??형님~~~제발~~~가르쳐 주십시요~~~~
from discord import Webhook, RequestsWebhookAdapter, Color, InvalidArgument
ImportError: cannot import name ‘RequestsWebhookAdapter’ from ‘discord’ (C:\Users\PC19027\miniconda3\envs\botty\lib\site-packages\discord\__init__.py)
봇 실행하면 메뉴가 뜨지 않고 오류가 뜹니다. 혹시 뭐가 잘못된건지 알 수 있나요?
File “C:\Program Files (x86)\botty-master\src\screen.py”, line 4, in
File “C:\Program Files (x86)\botty-master\src\utils\misc.py”, line 11, in
from pyparsing import Regex
ModuleNotFoundError: No module named ‘pyparsing’
.\run.bat 입력할때 \입력이 안되고 자꾸 역슬래시가 적히네요;;;
거기서 막혀서 1시간째 겉돌고있습니다 ㅠㅠ
도움이 될지 모르겠지만 \랑 |(역슬러시)랑 같은 기능입니다.
입력 방식에서 한글 입력방식이라 \로 표시 되지면 영문 입력 방식일 경우 | 표시 되며 컴퓨터가 인식하는 키값은 같기 때문에 어떻게 표시 되든 결과 값은 같습니다.
pyparsing 모듈을 설치하시면 될거에요
pip install pyparsing
3번 컴파일 누르면 이렇게 나옵니다…
Building version: 0.8.1-dev
‘pyinstaller’은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는
배치 파일이 아닙니다.
‘pyinstaller’은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는
배치 파일이 아닙니다.
지정된 경로를 찾을 수 없습니다.
Traceback (most recent call last):
File “D:\d2r\botty-master\build.py”, line 84, in
with open(f”{botty_dir}/config/custom.ini”, “w”) as f:
FileNotFoundError: [Errno 2] No such file or directory: ‘botty_v0.8.1-dev/config/custom.ini’
4번 실행을하면
Traceback (most recent call last):
File “D:\d2r\botty-master\src\main.py”, line 7, in
import screen
File “D:\d2r\botty-master\src\screen.py”, line 4, in
from utils.misc import WindowSpec, find_d2r_window, wait
File “D:\d2r\botty-master\src\utils\misc.py”, line 11, in
from pyparsing import Regex
ModuleNotFoundError: No module named ‘pyparsing’
이렇게 나와서 pip install pyparsing 이거 해서 설치됐는데도 마찬가지로 나옵니다…
해결하셧나요?방법좀알려주세요 ㅠ
Type 1, 2, 3, 4 or 5 then press ENTER:4
Traceback (most recent call last):
File “C:\Users\MH\Downloads\botty-master\src\main.py”, line 7, in
import screen
File “C:\Users\MH\Downloads\botty-master\src\screen.py”, line 4, in
from utils.misc import WindowSpec, find_d2r_window, wait
File “C:\Users\MH\Downloads\botty-master\src\utils\misc.py”, line 11, in
from pyparsing import Regex
ModuleNotFoundError: No module named ‘pyparsing’
오류해결법좀 알려주세요
Type 1, 2, 3, 4 or 5 then press ENTER:4
Traceback (most recent call last):
File “D:\Diablo II Resurrected\botty-0.8.1\src\main.py”, line 2, in
import keyboard
ModuleNotFoundError: No module named ‘keyboard’
오류 방법 부탁드려요
첫 케릭은 잘되는데 다른 케릭으로 들어가면 안되네요.
혹시 동일 계정에 다른 케릭들을 실행 할려면 어떻게 해야 할까요>>
after the “Type 1, 2, 3, 4 or 5 then press ENTER: ” no mater what i try to execute a window pops up and immediately closes down..
same thing id i try to run any of the utilitys in the botty-master folder.
tried it on both of my computers, one windows 11 and one windows 10, same thing…
디아런만 할수있도록 좀 도와주시면안됩니까
저장되어있는거라도 있으면 공유좀 부탁드립니다 ㅠㅠㅠ
도움주실분 연락 댓글 부탁드립니다 사례할게요 꼭
설치 도움좀 주실분 사례 해드릴게요..부탁드립니다
cc
도움주실분 연락주세요. 사례할례할꼐요
해줘 좀
https://디iscord.gg/PdbVJEEbT8
디->d로 바꿔
그래픽 디버그 계속 오류나는데 해결법 있나요?