9/12/2017
오토핫키(Autohotkey) 진입장벽 줄이기 정리
오토핫키를 처음 시도할 시 아래의 내용을 주의하여 진입장벽만 통과하면 인터넷에 공개된 정보들로 쉽게 바로 사용 가능함.
가. 설치
1. 오토핫키 다운
- https://autohotkey.com/
- spy 도 자동으로 깔림. (좌표정보, 칼라 정보 등 오토핫키 코딩에 필수)
2. 에디터 다운 (SciTE4AutoHotkey P.G.)
- https://autohotkey.com/boards/viewtopic.php?t=62
- 인터넷에 공개된 대부분의 설명이 위 에디터를 이용함.
3. 그림판 : 윈도에 기본으로 깔려있음. 개인적으로 선호함.
- 최대 확대하면 pixcell 구분 가능, ColorID 탐색 쉬움
- 그림 저장 시, 24 bit bmp 으로의 저장이 권장됨.
나. ImageSearch 함수
1. 예) mageSearch, pm0_x, pm0_y, 1, 1, A_ScreenWidth, A_ScreenHeight, *50
Img/Position/pn7.bmp
- * 50 은 명암 오차 레벨을 의미함. *0 ~ 255 값을 가지며 정확한 탐색은
10~50 명암이 좀 달라도 찾으려면 100 ~ 150 을 추천함.
2. 그림 파일경로는 실행되고 있는 ahk 파일 기준으로 작성
3. 처음에 잘 안될 때는 sleep 함수로 간격 넣어주지 않아서 그런가 싶었지만
sleep 함수 없어도 잘됨. 코딩이 길어어지면 sleep 을 작게 넣은 부분들이
모여서 속도 느려짐.
4. 좌표값은 기본적으로 Rative position 기준이라 활성화되어 있는 창
왼쪽 위를 기준으로 지정됨. GUI 활성화 시 GUI 기준...
다. PixcelSerach 함수
1. ColorID 넣을 시, 앞에 0x 붙여야 함. 예) 0x0000FF (빨강)
2. 오토핫키는 BGR 순으로 넣어야 함. spy는 RGB로 알려주므로 2자리씩
역순으로 입력 필요. 각 색별로 16진법(0~F), 2자리 이므로 0~255 단계임.
라. 변수 코딩
1. 변수에 내용 입력
a = 1+1 -> '1+1' (문자)
a := 1+1 -> 2 (숫자)
2. 변수명 입력 자리가 문자형인 경우
변수명 -> 변수명의 문자가 적용됨
%변수명% -> 변수가 가지는 내용이 적용됨.
3. 함수의 입력변수자리에 문자를 적용할 시
f("문자")
마. 함수 코딩
1. 예) 함수명(입력변수1, 입력변수2, 등..){
함수 내용
}
2. 반환 값이 하나라면 return 변수명 , 반환 값이 여러개면 함수 사용 전에
반환할 변수들을 global 함수로 미리 선언하기
바. GUI
1. 설치한 SciTE4AutoHotkey 프로그램에 GUI 쉽게 할 수 있는 기능 있음.
2. 버튼 같은 것의 태그명(?) 앞에 'g', 'v', 'r' 을 선택해서 붙이고 버튼 클릭 시
작동할 내용을 라벨 아래에 작성해야 함.
3. GUI 내의 값을 읽어오기 위해서는 Gui, submit, nohide 으로 미리선언
4. 해보다 말아서 잘 모르겠다. 다음해 해보고 주의사항 정리하기
사. 실행 순서
1. 게임 실행 후 오토핫키 실행하기, 반대로 하다가 의도한 로직이 너무 안되어서
재부팅하고 게임 실행 후 오토핫키 실행하였더니 문제 없이 되었던 적 있음.
※. 작성한 코드는 컴파일러하지 말고 실행하여야 매크로 적발 위험이 줄어든다?
피드 구독하기:
글 (Atom)