DHelper - 디아블로3 헬퍼

안녕하세요.  디아블로를 접어서 업데이트가 없었습니다..

디아블로 이모탈 소식 듣고 들어와보니 

많은 분들이 불편해 하시는 부분이 있어 몇가지 업데이트를 진행하고자 합니다. 


워낙 많은 건의 사항이 있어 모두 바로 적용할 수는 없어 보이고

아래의 내용을 우선 적용하려고 합니다. 



1. 로컬 저장 / 불러오기 기능

2. 단일 반복키 1 -> 3개로 확장

3. 특정 프로그램에서만 헬퍼 돌아가도록 만드는 설정 추가

4. 해상도 추가 및 사용자 입력 기능



혹 정말 정말 정말 꼭 들어가야 하는 부분이라면 여기에 어필 부탁드립니다.


사실 제가 게임을 못하는 상황이 오면 다른분이 제 오픈 소스를 통해 업데이트를 해주시길 바랬는데 아쉽네요 ㅎㅎ..


'히스토리' 카테고리의 다른 글

[DHelper 1.1.0 Beta] 업데이트 예정  (9) 2018.11.07
[DHelper 1.0.5 Beta] 변경점  (3) 2017.03.22
[1.0.4 Beta] 변경점  (0) 2017.03.05
[1.0.3 Beta] 변경점  (0) 2017.03.05
1.0.0.2 Beta  (0) 2017.02.27

Comment +9

  • 윈7사용자 2018.11.07 23:05

    윈7에서는 사용이 안되는건가요??

  • 와우.. 저도 이모탈 보고 다시 왔는데
    업데이트 예고가.. ㅎㅎ

  • 감사합니다 2018.12.29 12:50

    업데이트 예정이신 최신판에 해상도 사용자입력하면 아무 해상도에서나 클릭방지 가능한건가요?
    그 기능이 정말 기대되네요
    놋북 사용하는데 1366x768이라 아직 프로그램에서 지원되는 해상도가 없어서 클릭방지는 못쓰고있는데 ㅠㅠ
    지금도 잘 쓰고 있지만 업뎃 정말 기대됩니당 빨리 됐으면 좋겠네요 감사합니다 !

  • 2019.01.29 13:53

    비밀댓글입니다

  • 황야 2019.02.17 16:25

    소용돌이 홀딩기능 부탁 드립니다.

    우클릭 반복이 아닌 -> 누르고있기로

  • 해상도 2019.04.04 03:46

    1440×900
    1680×1050

    해상도 지원 부탁드립니다

  • 윈10 2019.09.04 22:37

    안녕하세요 비밀번호를 잊어 먹었는데 어케 삭제 하죠 ㅠㅠ?

DHelper 동작

프로그래밍2018. 11. 7. 12:19

안녕하세요. 오랜만에 블리즈컨 디아블로 소식을 접하고 홈페이지에 들어왔더니 이전보다 사용하시는 분이 많이 늘었네요. 

 아직 DHelper가 계정 제재당할 만한 무언가가 있을거라는 댓글에 그림으로 설명 드디려고 합니다. 


 

1. 게이머의 입력 처리 (후킹)


 게이머는 키보드와 마우스로 컴퓨터(OS)에 '입력'을 하게 됩니다. 

 그런데 OS(운영체제)는 키보드와 마우스로등의 외부장치로만 사용자의 '입력'을 받는게 아닙니다. 


 DHelper는 사용자의 입력을 '후킹(사용자의 입력 이벤트를 중간에 가져온다)'을 합니다. 

 

 '헬퍼 시작' '헬퍼 종료'등등의 기능을 실행할 때 Key를 등록 하셨을텐데요. 게이머가 이 키를 누르게 되면 DHelper는 이 이벤트를 후킹하여 

 반복키, 토글키등을 동작 시키는 원리입니다. 



2. 반복키, 기능키등등

  헬퍼를 시작하면 스킬을 지속적으로 사용할 수 있게 눌러주는 것 또한 헬퍼는 디아블로 클라이언트에 어떤 이벤트를 보내는게 아닙니다. 

  OS에 메세지를 보내게 되는거죠. 이는 마이크로 소프트에서 공식적으로 제공해주는 API를 통하여 메세지를 전달하기에 

  어떤 편법이나 불법적인 행위가 아닙니다. 


3. 특정 UI에 마우스 이벤트 막기 

  DHelper UI를 안눌리게 하는 기능이 있습니다.

  이건 아주아주아주 원시적인 방법인데요. 특정 좌표로 영역을 두고 그 좌표에서 이벤트가 들어오면 1번의 후킹을 통하여 가로챈 메세지를 

  무시하는 방법입니다. 

  

  이 또한 디아블로 클라이언트에 어떠한 조작을 하지 않고 OS의 해상도 영역을 지정하기 때문에 

  

  디아블로 창모드를 지원해드리지 못하는 겁니다. (디아블로 클라이언트가  항상 같은 곳에 있다면 가능하겠죠)



4. 인벤에 계정 정보 및 패스워드를 암호화 없이 저장한다는 게시물

   계정을 입력 받지도 않는데 뭘 저장한다는지 이해가 안되네요..

   서버에 데이터 저장할 때 배틀태그와 암호는 설사 저장된다고(저장되지도 않습니다...) 해도 계정을 알 수 있을까요..;;

   서버 저장은 이동 편의성과 헬퍼 설정 공유를 위하여 만들었습니다. 

   비번이 노출된다고 해도 큰 문제 없어 보이는데.. 제 생각만 그런건가요..

   아무튼 이번 업데이트에 로컬 저장도 포함하니 헬퍼 설정파일 도난?에 신경 쓰이신다면 로컬 저장 이용 부탁드립니다~!


 

 결론적으로 

  헬퍼는 디아블로 클라이언트에 어떠한 조작도 하고 있지 않고 마이크로 소프트가 제공하는 시스템 API 만 사용하고 있으며

  의심이 되신다면 제가 올려드린 오픈소스를 보시면 알 수 있습니다. 


  DHelper 말고 외에 모든 헬퍼 프로그램은 위와 같은 시스템을 사용하고 있습니다. 



 

여담으로 하나 말씀드리자면 

디아블로가 헬퍼를 인정하는건 예측컨대 못 잡아서라고 생각합니다. 


디아블로는 서버는 호스트와 엔티티를 연결해주는 역할을 합니다. 

게임은 호스트(4명의 유저 중1)명 / 유저 3명이 서로 TCP로 연결하여 게임플레이를 합니다. 


디아블로 여러 오브젝트와 빠른 스킬을 사용할 수 있는건 

모든 액션이 클라이언트 기반이기 때문입니다. 


호스트와 엔티티들의 모든 액션을 디아블로 서버에서 저장하고 있다면 그 양은 어마어마하고 서버 관리 또한 간단하지 않습니다. 


잡소리가 길었습니다. 조만간 불편해 하시는 업데이트 버전을 올리도록 하겠습니다. 





'프로그래밍' 카테고리의 다른 글

DHelper 동작  (3) 2018.11.07

Comment +3

  • 덕분에 간간이 즐기는 디아3가 더 쾌적해졌습니다 ;)
    너무나 감사합니다!
    호의로 제공한 재능이 구설수에 올랐다니 애통한 일입니다만...

  • 빈뚜리 2019.02.01 19:30

    언제나 감사하게 잘쓰고 있습니다..ㅠㅠ
    누가 뭐라해도 제작자님이 옳다고 생각합니다!

  • yjs 2019.10.19 08:46

    강제정지키를 쉬프트로 쓰고 있었습니다. 그런데 어느날부터 헬퍼구동시키고 게임을 할때 쉬프트로 강제정지를 시키면 디아블로 게임화면이 느려집니다. 그래서 장제정지키를 바꿔서 사용중입니다. 쉬프트만 눌리면 그렇단 말이네요
    혹 그런 버그가 있을까요?

1.0.5 버그 및 건의사항 댓글로 남겨주시면 검토 후 빠른 시일내에 처리하도록하겠습니다.


가능하시다면 배틀태그와 현재사용하시는 DHelper 버전


그리고 버그라면 현재 상황을 상세히 적어주시면 많은 도움이 됩니다


감사합니다 (__ )

Comment +115

  • 이전 댓글 더보기
  • ㅠㅠ 2018.11.24 18:53

    헬퍼 사용해보고 싶어서 다운로드 했는데요...시작과 종료를 설정해놓고 게임상에서 실행하면 왜 시작이 안될까요??헬퍼는 계속 Stop상태네요

    • 상단 설정에서 실행 '헬퍼 동작 이름 설정'에 보시고 현재
      실행중인 프로그램(디아블로) 타이틀과 같은지 확인해주세요

      예) DIABLO lll

  • 질문요 2018.11.24 19:04

    한번 사용해보고 싶어서 다운로드했는데...사용법을 모르겠어요..단축키지정을 다해놓고
    게임상에서 시작버튼을 눌러도 헬퍼가 작동을 안하는데 원인을 모르겠네요

    • 상단 설정에서 실행 '헬퍼 동작 이름 설정'에 보시고 현재
      실행중인 프로그램(디아블로) 타이틀과 같은지 확인해주세요

      예) DIABLO lll

  • 운빨사용자 2018.12.13 20:45

    헬퍼 너무 편하게사용하고 있어요

    근데 강령술사 마법학자는 정해진 시간동안 자동누르게 할수없을가요?

    그러니까 총 10마리를 소환해야하는데

    한번에 2마리씩 소환가능하니까 5번 누르고 좀 쉬다가 소멸시간이 되어가면 다시 5번 눌러주는거요.

  • chanwoo 2018.12.14 10:28

    감사합니다..

  • 고은똥 2018.12.20 10:59

    아이맥 전용은 없나요?

  • EagleFly 2019.01.04 20:49

    1.1 베타버전 잘 쓰고 있습니다.
    특정 위치에서 버튼 자동 클릭을 막아주는 UI방해금지 모드에 대한 건의인데요
    좌하단의 메시지창의 경우엔 클릭 가능 범위로 하는 옵션을 추가하시면 어떨까요?
    메시지창의 경우 범위가 넓다보니 생각보다 끊길때가 많고, 또한 메시지 버튼을 눌러 활성화 되지 않는한 클릭해도 문제 없더라구요.
    그리고 새해 복 많이 받으세요 ^^

  • lebius 2019.01.23 15:34

    4k 해상도 3840x2160 눌림방지 기능 추가 계획은 없으신가요. 링크는 4k 스크린샷입니다.

    https://drive.google.com/open?id=1XJecW5Kg37Lr4mayRyDAHe_tfiKuRMn-

  • 부탁합니다 2019.01.25 18:09

    해상도 1920 x 1200 만들어 주세요 ^^

  • 아린느 2019.02.09 07:14

    헬퍼 잘 사용하고 있습니다.
    제가 무기고 마다 헬퍼 세팅을 다르게 해서 헬퍼를 여러개 띄워놓고 시작키를 다르게 지정해서 사용하고 있는데요
    (예, 투검은 F3, 다발은 F4, 대균용다발은 F5 등등)
    처음에 이걸 다 하나씩 켜고, 설정을 다르게 불러오는게 좀 귀찮습니다...

    혹시 이런 멀티 세팅을 지원하실 의향이 있으실지요 ^^
    감사합니다.

  • kjjeong 2019.02.14 18:36

    너무잘쓰고있습니다.
    혹시 쉬프트키를 한번누르면 계속 누르고있는상태가되고
    다시 한번누르면 누르고있는 상태가 풀리는 기능은 추가가 안될까요

    넘버락이나 다른걸로쓰기엔 너무 손꾸락이 아픕니다..

  • 황야 2019.02.17 16:22

    휠야만 소용돌이 누르고있는 키값을 줄순 없을까요

    디3어시스트가면 홀딩 기능처럼 누르고있는게 있던데

  • 2019.02.18 09:26

    비밀댓글입니다

  • 희망 2019.03.06 03:44

    1280×720
    1280×800
    1366×768
    1440×900
    1600×900

    저사양유저를 위해서 다양한 해상도가 지원되기를 간절히 바랍니다.

  • 태규 2019.03.11 20:51

    안녕하세요 요즘 너무나 편하게 사용 하고 있습니다.
    헬퍼 쓰다가 채팅 하게 되면 엔터키를 누르게 되고 헬퍼는 멉춥니다
    이게 다시 엔터 치면 헬퍼는 작동 하지 않습니다
    엔터 2번 치면 헬퍼가 작동 하게 될수 있도록 해주시면 안될까요?

  • 김영찬 2019.04.09 14:10

    3440x1440 해상도도 추가 요청드립니다.

    수고하세요.

  • 감사합니다 2019.04.13 15:37

    잘 만들어주셔서 감사합니다 고생이 많으십니다, 너무 잘 쓰고 있습니다!
    다만 한가지 조심스레 여쭤보고 싶은 게, 매크로 설정은 서버에 업로드 시켜놓고 불러오는 식으로 만드셨던데 어째서 그런건지 궁금합니다.
    저장서버 운영하시려면 개발자님께서도 (용량은 많지 않을지도 모르겠습니다만 어찌됐건) 수고로우실테고
    사용자들도 (사실은 제가...;;) 설정별로 파일명 관리하기가 쉽지 않은 점이 있는데,
    다른 헬퍼나 매크로류처럼 사용자의 로컬에 저장해서 불러오는 식으로 하면 그런 점은 쉬워질 것 같아서요..
    직업별로 세팅별로 다 키우다보니 설정파일이 꽤 많아지는데... 많아지다보니 파일명 일괄관리가 상당히 벅차서 포기하게 되네요..ㅠㅠ

    ---- 1.1버전에 포함됐네요 감사합니다 ㅠㅠ

    혹시 서버파일을 로컬에 일괄저장하는 기능도 하나 만들어주시면 어떨런지요 ㅠㅠ (프로그램에 포함시키기 좀 힘들다면 별도의 변환 프로그램 형식으로라도 하나 있었으면 좋겠네요..)

    그리고 로컬에서 저장/불러오기 할 때 기본 위치를 설정할 수 있는 기능도 있었으면 좋겠습..... 개발에 보탬도 안되는 주제에 너무 바라는게 많네요 죄송 ㅠㅠ

  • 소드스타 2019.09.07 11:59

    안녕하세요. 수고 많으십니다.
    혹시 헬퍼로 채널링 기술에 대한 키 설정이 가능할까요?
    예를 들면 야만용사의 소용돌이 스킬이라든지
    수도사의 폭풍의 질주 와 같은 스킬 등 말이죠.

    감사합니다

  • 안녕하세요 2019.09.08 22:02

    다른 게임에도 단순반복키 사용할수있게
    창인식 풀어주실수 없을가요?

  • ㄴㅇㄹ 2019.11.08 12:14

    항상 잘 사용하고 있습니다.
    한가지 기능만 좀 추가되면 더욱 더 완벽한 헬퍼가 될거 같아 글 남겨봅니다.

    "키를 누르면 설정한 시간 동안 모든 기술 일시정지" 기능도 있었으면 합니다.
    H 키로 지정을 하고 설정 시간을 4000 으로 하면
    H 키를 누르면 4초동안 모든 기술 일시정지가 되고 이후 다시 작동하는 원리입니다.

    현재 헬퍼에는
    "누르고 있으면" 멈춤 기능은 많은데
    "누르면" 멈춤 기능은 없는거 같아서요..
    헬퍼를 종료 할게 아니기 때문에 시간 입력을 별도로 하구요.
    해당 키를 누르면 설정 시간 동안만 모든 기술 멈추게 하면 어떨까요..
    이왕이면 마우스 좌클릭도 설정 할수 있게
    해주시면 더 좋구요

  • park 2019.11.16 23:43

    좋은프로그램 제작 배포해주셔서 감사드립니다.

    토글키항목을 3개에서 5개로 늘려주실수 있는지요?
    토글키 사용시, 특정스킬을 반복시전하려는데
    3개시전 할 경우와, 2개만 시전할 경우가 있어서

    현재는
    헬퍼를 두개 실행시켜놓고 사용중에 있습니다.