아두이노로 해보니 재밌어서 오토핫키로도 구현해보았다.
오토핫키는 hello world만 해보고 써본 적이 없어서 제대로 동작하는 매크로를 구현해보려니 쉽게 동작하지 않았다. 아래 두 가지 점을 신경써서 구현하면 성능 좋은 매크로를 구현할 수 있다.
1. 정확히 동시에 두 개 이상의 키를 눌러주기 위해서 Send 대신에 SendInput 을 써야한다.
2. 커맨드 사이 딜레이를 주기 위해 Sleep 을 쓰면 정확도가 매우 떨어진다. 정확한 딜레이를 구현해둔 코드가 있어서 참고했다( https://bit.ly/3cyI8GX ). 아래 코드의 1-13번 라인에 해당한다. 해당 라인을 넣고, Sleep 대신 DllCall 을 쓴다.
아래는 샘플코드
게임할 때 쓰다가 스팀 밴 당하면 사용자 책임.
'매크로 조이스틱 제작 강좌 1102 1' 카테고리의 다른 글
0. 오토핫키(AutoHotkey)를 이용한 카즈야 기원초 매크로 (29) | 2020.03.06 |
---|---|
아두이노를 이용한 철권 매크로 제작 0. 기원초 테스트 (4) | 2020.03.04 |
(본분 참조)매크로 조이스틱 제작 강좌는 멈춥니다 (0) | 2011.02.18 |
매크로 조이스틱 제작 강좌 12. PICKIT2 Programmer 설치와 세팅 (0) | 2011.01.25 |
당분간 강좌 잠시 멈춤 합니다. (0) | 2011.01.15 |
매크로 조이스틱 제작 강좌 11. 부품 실장, 전선 연결 (0) | 2011.01.14 |
매크로 조이스틱 제작 강좌 10. 매크로 프로그램 만들기 (3) | 2011.01.13 |
매크로 조이스틱 제작 강좌 9. 매크로 회로 패턴도 (0) | 2011.01.11 |
매크로 조이스틱 제작 강좌 8. 매크로 회로도 (0) | 2011.01.10 |
댓글을 달아 주세요
ㅇㅇ 2020.04.29 10:57 댓글주소 수정/삭제 댓글쓰기
좋은 정보감사합니다 sleep문이 좀 답답했는데 해결됐네요
감사합니다 ^^
우동 2020.12.24 23:30 댓글주소 수정/삭제 댓글쓰기
요즘나온 신캐 쓸만한 기술들로 만들어주시면 안될까요? 사례드릴께요
제가 철권 신케릭터 구매는 전혀 안해서 잘 모릅니다. 또한 매크로 판매 계획은 없습니다.
스르스느 2021.04.21 21:57 댓글주소 수정/삭제 댓글쓰기
위에 무슨 말인지 모르겠어요...
데빌진 초풍 쓰려면 스크립표가 어떻게 되나요?
위 스크립트는 아래(2) 커맨드가 없는데요. 그거만추가해주시면 됩니다.
스르스느 2021.04.22 13:32 댓글주소 수정/삭제 댓글쓰기
번거롭게 해드려서 죄송합니다. 제가 철권을 방향키 a w s d 를 왼쪽 위 아래 오른쪽 이렇게 쓰고 있고
u 약손 i 강손 j 약발 k 강발 이렇게 쓰고 있습니다.
스크립트를 어떻게 해야되는지 모르겠네요.
오토핫키 기본 강좌 하나 정도 마스터 하시면, 위 코드를 수정해서 필요한 것을 금방 만드실 수 있을 거에요.
스르스느 2021.04.26 13:59 댓글주소 수정/삭제 댓글쓰기
sleep 이거로 초풍 커맨드 만들어보니까 80% 확률로 되고 삑사리도 많이 나더라고요...
근데 선생님께서 말씀하신 DllCall로 어떻게 스크립트를 만들어야할지 모르겠습니다.
스르스느님께서 만드신 코드에서 sleep이 들어가는 라인만을 위 코드처럼 DllCall() 을 써서 치환하면 됩니다. 대신에 코드 제일 위에는 위 코드의 1-15 번 라인 까지 코드를 쓰셔야 합니다. 스팀에서 매크로 사용하면 밴 먹을 수 있다던데요. 사용에 주의 바랍니다.
스르스느 2021.04.28 15:38 댓글주소 수정/삭제 댓글쓰기
돌머리라 이해가 안가네요...
sleep 1 이렇게 쓰지말고
DllCall 1 이렇게 쓰는건가요?
코드의 1-15 번까지라면 1 #noenv부터 15 oneframe 이 부분까지 복붙을 해야된다는건가요?
그냥 코딩이 익숙치 않으셔서 그런 것이니 자책은 하지 마시구요. 1-15번 라인 복붙은 맞구요. sleep 1 들어갈 부분에 DllCall("Sleep","UInt",one_frame) 을 통으로 가져다 넣으시면 됩니다. 저 코드는 1 프레임 동안 sleep 하겠다는 의미입니다.
스르스느 2021.04.30 16:55 댓글주소 수정/삭제 댓글쓰기
sleep1 이 아니라 sleep 10, sleep 20 이렇게 하려면 코드를 어떻게 만들어야하나요?
위 코드의 26번 라인 처럼 one_frame 에 원하는 프레임 만큼 곱해주면 됩니다.
흥미롭당 2021.05.31 07:30 댓글주소 수정/삭제 댓글쓰기
실전에서는 사용할껀 아닌데 너무 흥미롭네요
혹시 어떨떈 나가고 어떨떈 안나가는 현상은 왜 그런건가요??
공대오빠 멋져용 ㅋㅋ
감사합니다.
아마 오토핫키에서 시간 측정하는 부분과 철권 게임 내에서 시간 측정하는 부분이 완전히 일치하지 않기 때문에 그런 것 같습니다.
오토핫키 매크로 정확도가 어느 정도인지도 측정해봐야겠네요.
ㅇㅇ 2021.07.05 11:29 댓글주소 수정/삭제 댓글쓰기
바탕화면에서 사용하면 버튼입력이 잘되는데
막상 철권안에서 시작 버튼을 눌러도
오토핫키가 작동이 안되네요.. 방법이 없을까요?
철권 키 매핑이 다른게 아닐까요? 저도 잘 모르겠습니다.
감사합니다 2021.08.05 02:55 댓글주소 수정/삭제 댓글쓰기
이상하게 기원초는 안되지만 예시 참조해서 프랙티스에서
이질풍 , 일반초풍 , 무족초풍 , 레이징스톰 같은거 써보면서 노는데 시원시원하게 잘나가네요
덕분에 4 이질풍 까지도 넣어봤습니다
대쉬초풍이나
클라 근접번너클 or 드라 근접샤이닝 같은건 수준이 낮아서 못해보네용
글 덕에 잘 놀았습니다
ㅎㅎ 감사합니다. 철권 6에서 근접 샤이닝 종류도 동일하게 잘 나갔었습니다. 실험 몇번해보시면 잘 될거 같습니다.
프레임 조물딱 거리니깐 도젯 같은것도 되네요 샤이닝은 여전히 안되지만 ㅋㅋㅋ
ㅇㅇ 2021.09.15 23:54 댓글주소 수정/삭제 댓글쓰기
혹시 컨트롤 J가 아니라 그냥 J로 눌러도 동작되게 하려면
코드를 어떻게 바꿔야 하는지 알 수 있을까요??
^가 Ctrl 키에 해당합니다. 그래서 18번 줄에 있는 ^j:: 를 j:: 로 바꾸시면 됩니다.
ㅇㅇ 2021.10.04 21:31 댓글주소 수정/삭제 댓글쓰기
혹시 샤이닝 매크로 코드좀 알려주실수 있을까요.. 오토핫키로 만들었는데 잘 안나가서요.. 부탁드립니다
매크로 스틱 회로 만들 때 그런 식으로 구현했는데요. 오토핫키로는 만들어보지 않아서 코드는 없습니다.
샤이닝 종류 커맨드가 -> 중립 -> 중립 -> 중립 + 버튼이잖아요. 이 때 중립의 딜레이를 여러 차례 시행 착오로 잘 찾으시면 만들 수 있습니다.
ㅇㅇ 2022.01.02 16:35 댓글주소 수정/삭제 댓글쓰기
이렇게 매크로 만들고 코드짜는게 재밌어서 요즘 퇴근하고 철권하는게 재밌는데
공참각이나 샤이닝류가 만들기 진짜 힘드네요 ....따로 한번 강좌 만들어보실생각 없으신가요??
제가 만들어 봤을 땐, -> 버튼의 down 과 up 을 두 번 까지는 일정하게 하구요. 세번째 -> 버튼의 down 상태에서, lk 버튼 down 준 다음에 -> 와 lk 를 동시에 up 해주면 되더라구요. 이 보다 좀 더 성공률 높은 다른 구현 방법도 있을 거에요.
ㅇㅇ 2022.01.24 14:17 댓글주소 수정/삭제 댓글쓰기
드라 근썰트같은건 프레임설정을 몇으로해야할까요?
15부터 30까지 일일히 바꿔가면서 해봤는데 성공확률이 0퍼센트네요
어떤 프레임을 말씀하시는지 잘 모르겠습니다.
위 예시 코드처럼 모든 커맨드 사이에는 (중립 커맨드 포함하여) 1프레임의 간격이 필요합니다. 근설트의 경우 바로 윗 대댓글을 참조하셔서 실험을 해보시면 만들어내실 수 있을거 같습니다. 철권7에서 근설트느 저도 아직 안만들어봤습니다.