Skip to content

팁 게시판

BH 패킷 기능 설명

분류 디아관련 조회 수 3,141 추천 수 1

새로 패킷 스니퍼 기능추가했는데 사용방법 설명해줌


버전 v18.3.15로 업뎃하고 게임내에서 .help 치면 명령어 확인 가능한데 기본적으로 패킷스니퍼 안 써봤으면 봐도 잘 모를거임



일단 패킷이 뭔지 간단하게 설명하자면 서버와 내가 주고 받는 대화라고 생각하면 됨


내가 디아에서 무슨 행동을 하면 서버측에도 내가 행동을 한다는걸 알리기 위해 패킷을 발신하고(Send)

발신 패킷은 내 클라이언트에서 서버로 보내는 패킷이므로 Client>Server 또는 C>S 라고 표기하기도 함


반대로 서버측에서 보내는 메시지는 수신하는(Receive) 방식이지

수신 패킷은 서버에서 클라로 S>C 패킷이라고 표기하기도 함


서버측과 모든 대화는 패킷을 주고받으면서 이루어 지는데 디아에서는 크게 2가지만 알면 됨


1. 베넷서버과 주고받는 패킷들

2. 게임서버에서 주고받는 패킷들


1번같은경우는 채널 입장/채팅 방 생성/조인 등등 이런패킷들을 주로 주고 받는다고 생각해 볼수 있음

2번은 게임안에서 이루어지는 모든 패킷들이라고 생각하면 됨.. 클릭하기 창고열기 공격하기 웨이타기 채팅하기...등등등등


BH에 추가한 기능은 2번에 해당되는 게임패킷들을 감지해서 볼 수 있고 지정된 패킷 수신/발신을 거부할 수 도 있음.

그리고 원하는 패킷을 직접 발신/수신 할 수 있음



일단 게임 안에 들어가서 .help 를 치면 패킷 스니퍼와 관련된 명령어들을 모두 볼 수 있음


디아블로2 다운로드



스샷에서는 잘려서 다 안보이니까 아래 명령어 복봍해 놨음


.[w|watch]  [s|send|sent]  [a|add]  [ID] Add sent packet to watch list 발신 패킷 보기 목록에 추가

.[w|watch]  [s|send|sent]  [a|add]  [all] Add all sent packet to watch list 발신 패킷 보기 목록에 모든 패킷 추가

.[w|watch]  [r|recv|receive|received]  [a|add]  [ID] Add received packet to watch list 수신 패킷 보기 목록에 추가

.[w|watch]  [r|recv|receive|received]  [a|add]  [all] Add all received packet to watch list 수신 패킷 보기 목록에 모든 패킷 추가

.[w|watch]  [s|send|sent]  [r|remove]  [ID] Remove sent packet from watch list 발신 패킷 보기 목록에서 삭제

.[w|watch]  [r|recv|receive|received]  [r|remove]  [ID] Remove received packet from watch list 수신 패킷 보기 목록에서 삭제

.[w|watch]  [s|send|sent]  [l|list] List current sent packets on watch list 발신 패킷 보기 목록에 있는 모든 패킷 출력

.[w|watch]  [r|recv|receive|received]  [l|list] List current received packets on watch list 수신 패킷 보기 목록에 있는 모든 패킷 출력

.[w|watch]  [s|send|sent]  [c|clear] Clear all sent packets on watch list 발신 패킷 보기 목록 청소하기

.[w|watch]  [r|recv|receive|received]  [c|clear] Clear all received packets on watch list 수신 패킷 보기 목록 청소하기


.[b|block]  [s|send|sent]  [a|add]  [ID] Add sent packet to block list 발신 패킷 거부 목록에 추가

.[b|block]  [r|recv|receive|received]  [a|add]  [ID] Add received packet to block list 수신 패킷 거부 목록에 추가

.[b|block]  [s|send|sent]  [r|remove]  [ID] Remove sent packet from block list 발신 패킷 거부 목록에서 삭제

.[b|block]  [r|recv|receive|received]  [r|remove]  [ID] Remove received packet from block list 수신 패킷 거부 목록에서 삭제

.[b|block]  [s|send|sent]  [l|list] List current sent packets on block list 발신 패킷 거부 목록에 있는 모든 패킷 출력

.[b|block]  [r|recv|receive|received]  [l|list] List current received packets on block list 수신 패킷 거부 목록에 있는 모든 패킷 출력

.[b|block]  [s|send|sent]  [c|clear] Clear all sent packets on block list 발신 패킷 거부 목록 청소하기

.[b|block]  [r|recv|receive|received]  [c|clear] Clear all received packets on block list 수신 패킷 거부 목록 청소하기


.[s|send]  [packet stream] Send packet 패킷 발신

.[r|recv|receive]  [packet stream] Receive packet 패킷 수신

.[pause] Toggle packet block on/off 패킷 거부 일시정지

.[hide] Toggle packet sent/received messages on/off 패킷 발신/수신 메시지 끄기/켜기

.[persist] Toggle keep packet list between games 패킷 목록 다른방 들어갈때 유지하기

.[log] Toggle packet logging on/off 패킷 내용 로그에 저장



기본적으로 유저가 사물을 클릭했을때 보내는 발신 패킷이 0x13으로 시작되는게 있는데 이걸로 예를 들어보자


먼저 0x13 패킷을 보내는 걸 확인하고 싶으니까 게임에서


.watch send add 13 을 쳐준다


(줄여서 .w s a 13 을 쳐도되고 .watch s add 13 이런식으로 쳐도 됨)


디아블로2 아이템



그럼 발신패킷 보기(Watch) 목록에 추가 됐다고 메시지가 뜬다


여기서 .watch send list 를 쳐보면 방금 추가된 패킷을 확인할 수 있다


디아블로2 아이템



그런 다음에 창고나 NPC를 클릭해보면 0x13패킷을 출력해줄거임

패킷 형태를 보면 아래처럼 출력이 되는데


[9] 13 XX XX XX XX YY YY YY YY


디아블로2 시세



여기서 [9]는 패킷의 총 크기를 나타내 줌. (13부터 세보면 9 바이트가 맞음)

13운 헤더라고 (Header) 부르는데 시작하는 패킷 머리라는 얘기임


여기서 잠깐 데이터 형식에 대해 간단하게 설명하자면 위에 숫자들은 16진수의 바이트 형태로 출력해주는거임.

1 WORD = 2 Bytes

1 DWORD = 4 Bytes


13뒤에 오는 XX XX XX XX 와 YY YY YY YY 는 데이터 형식이 DWORD라고 보면 됨


물론 패킷만 봐서는 WORD 형식으로 4개일수도 DWORD가 2개, 또는 BYTE로 8개일 지도 모르지만 많은 사람들의 패킷 분석을 통해서 어느정도 알려진거라 알수있는거임


각 패킷에 대한 정보는 블리즈해커bnetdocs같은 곳을 이용해 확인 할 수 있음

내가 보는 패킷이 무슨 패킷인지 알아보고 싶으면 위에 패킷 종류별로 나와 있으니 필수로 확인해보셈


첫번째 Byte는 우리가 0x13 패킷을 보는거니까 당연히 13 으로 뜨고

XX XX XX XX 부분은 사물종류를 나타내는 번호다.

플레이어는 0번 (00 00 00 00)

몬스터/NPC는 1번 (01 00 00 00)

사물은 (창고 웨이 등등) 2번 (02 00 00 00)

미사일 3번

아이템 4번

입구/출구 5번 등등


YY YY YY YY 는 게임내에서 사물에게 지정해준 고유 번호임.


위에 보이는 패킷과 똑같이 우리가 패킷을 발신하면 클릭하지 않아도 패킷만으로 사물과 접촉할 수 있음


창고와 접촉했을때 보였던 패킷을 그대로 발신해보자

창고를 클릭해보고 위에 보였던 YY YY YY YY 부분을 기억해준다

패킷을 발신할때는 위에 보였던 창고 고유번호 YYYY..를 입력해준다.

.send 1302000000YYYYYYYY

send 명령어를 줄여서 s 만 쳐도되고 가독성을 위해 스페이스를 중간중간 이용해도 문제없이 발신 됨

.s 13 02 00 0000 YY YYYYYY



**참고로 잘못된 크기 또는 비정상적인 패킷을 발신/수신할 경우 서버에서 연결이 끊길수도 있고

디아창이 멈춰버리는 현상이 있으니까 패킷 발신/수신할시 항상 주의해야함**



제대로 보냈다면 패킷만으로 창고를 여는걸 확인할 수 있음



그럼 패킷 0x13을 거부했을때 어떤 일이 일어나는지 알아보자


위에 패킷을 볼때는 watch 명령어로 패킷을 추가했지만 지금은 block 명령어로 으로 패킷을 거부해보자


채팅에 아래처럼 입력해준다


.block send add 13 또는 줄여서 .b s a 13


(거부하는 발신 목록을 보고싶으면 .watch send list 를 쳐보자)


이제 창고나 npc등등 클릭해보자... 창고도 못열고 NPC와 대화도 불가능하다


다시 풀고 싶으면

.block send remove 13 또는 줄여서 .b s r 13 를 입력해주면 거부 목록에서 0x13패킷을 제거해준다

모든 거부 목록을 지우고 싶으면 

.block send clear 또는 줄여서 .b s c 를 해주면 된다


거부 목록은 유지하고 싶지만 잠깐 거부하고 싶지 않은경우는 

.pause 명령어를 통해 거부모드를 켰다/껏다 할수 있음


참고로 모든 발신 패킷을 보고싶으면

.watch send add all (또는 .w s a all) 을 입력하면 볼 수 있다..


여기저기 움직여보고 클릭해보고... 정신이 없으니 조금만 보다가 발신 패킷 목록을 청소 해주도록 한다...

출력만 잠깐 숨기고 싶으면 .hide 명령어를 통해 숨겨준다.



발신과 마찬가기로 수신 (Receive)기능도 같은 원리로 사용하면 된다


보고싶으면 .watch r add xx

거부하고 싶으면 .block recv add xx

수신하고싶으면 .receive ????




.r 7715 를 수신하면 어떤 일이 일어날까?


thㅏ랑해 후나
댓글54

팁 게시판

번호 분류 제목 글쓴이 날짜 조회
공지   게시판 푸시 알림 / 통합 앱 서비스 34 file 트디개발자 2023.09.20 945.1k
공지 디아관련 에테리얼 벅큐빙 표 219 eunnanoDiablo™ 2008.03.05 144.8k
공지 디아관련 케릭별 갑옷 착용 모습 325 수린[아빠] 2009.06.09 116.0k
공지 디아관련 디아블로 각종 팁과 정보 간추림 입니다 (_ _) 1547 조은아저씨 2010.05.24 215.7k
공지 봇관련 유니크 업글 표 366 file 카인 2013.11.02 420.9k
1392 디아관련 디아2 시디키를 저렴하게 구입하고자 하는 분들꼐 드리는 정보 64 익명_8a1ee9 2019.03.08 8.5k
1391 디아관련 디아블로2 패치의 역사 37 익명_ff6046 2019.02.28 3.4k
1390 디아관련 디아블로2 완전삭제 방법 스샷 및 설명 36 익명_77b24f 2019.02.20 6.1k
1389 디아관련 달리기 패널티 31 익명_7721cf 2018.12.31 2.4k
1388 디아관련 시디키 등록 방법 및 등록한 시디키 확인 방법입니다. 42 익명_592186 2018.11.28 5.6k
1387 디아관련 메일 등록 + 닉네인 변경 치트키 입니다. 37 익명_61787f 2018.11.06 2.4k
1386 디아관련 스몰 라지 그랜드 차암 득 정리 60 후니후니우리후니 2018.11.03 15.7k
1385 디아관련 북미 계정 많이 만들기 74 익명_65b852 2018.08.28 2.7k
1384 디아관련 렐따시에 PK하는 법 68 익명_b2e235 2018.08.20 3.6k
> 디아관련 BH 패킷 기능 설명 54 후니후니우리후니 2018.07.14 3.1k
1382 디아관련 대기열 정보 60 후니후니우리후니 2018.07.14 10.3k
1381 디아관련 몬스터 npc번호 42 후니후니우리후니 2018.06.03 2.8k
1380 디아관련 화면분할시 추가 디아 폴더용량 최소화하기 50 후니후니우리후니 2018.05.30 4.4k
1379 디아관련 블리자드 홈피 시디키 가격 따운 했네요. 참고하세요 44 후니후니우리후니 2018.05.30 3.0k
1378 디아관련 Windows 10 d2nt 실행시 CPU 점유율 100% 해결 방법 입니다. 138 휠윈드소서 2016.11.19 14.2k
1377 디아관련 야드의 개념 123 디아블로2 야드 2015.02.08 5.6k
1376 디아관련 디아블로2 아뮬렛, 링, 참 모양별 호칭 166 디아블로2 모양별 호칭 2014.12.29 55.7k
1375 디아관련 대형 와이드 모니터 사용자를 위한 새로운 창모드법 218 수생이 2014.12.15 46.0k
1374 디아관련 디아블로2 서버에 대한 개인적고찰... 72 수생이 2014.11.05 4.7k
1373 디아관련 디아블로2 헬포지때 렉을 줄이는 방법 70 수생이 2014.11.05 4.2k