스팀판 키보드 간단회피로 오토핫키 스크립트를 사용했는데요.
약간의 수정을 했습니다. 주로 딜레이값을 수정해서 이젠 물약도 잘 먹어요 ㅎㅎ
적용 하는 방법을 썼던 지난 번에 올렸던 글 링크
http://bbs.ruliweb.com/game/ps/84289/board/read/9416461?
그리고 수정된 스크립트
딜레이값을 조금 조정하고 키 몇개를 추가했어요
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new sc__ripts due to its superior speed and reliability.
SetWorkingDir %Asc__riptDir% ; Ensures a consistent starting directory.
fwdButton := "w"
backButton := "s"
leftButton := "a"
rightButton := "d"
fireButton := "Tab"
jumpButton := "Space"
altButton := "LAlt"
useItems := "down"
use := "e"
weapon__change := "up"
podChange := "left"
; dodge
dodgeButton := "LShift"
; air slide (fire + jump normally)
airSlideButton := "z"
; use last item
useLastItemButton := "c"
; weapon change
weapon__changeButton := "f"
; pod change
podChangeButton := "4"
keypressDelay := 30 ; delay between keydown/keyup
doubletapDelay := 30 ; wait time between keypresses to perform doubletap
sequenceDelay := 30 ; wait time between various sequences
dodgeTime := 60 ; cooldown while dodge animation plays, setting it too small will cause derps when holding SHIFT+WSAD.
#UseHook
SendMode Input
Send {Blind}{%key% down}
Sleep keypressDelay
Send {Blind}{%key% up}
}
handleDodge(key) {
Send {Blind}{%key% up} ; stop running first in case we were
Sleep sequenceDelay
press(key)
Sleep doubletapDelay
Send {Blind}{%key% down}
Sleep dodgeTime
if (GetKeyState(fwdButton) && !GetKeyState(fwdButton, "P")) {
Send {Blind}{%fwdButton% up}
}
if (GetKeyState(backButton) && !GetKeyState(backButton, "P")) {
Send {Blind}{%backButton% up}
}
if (GetKeyState(leftButton) && !GetKeyState(leftButton, "P")) {
Send {Blind}{%leftButton% up}
}
if (GetKeyState(rightButton) && !GetKeyState(rightButton, "P")) {
Send {Blind}{%rightButton% up}
}
}
while (GetKeyState(dodgeButton, "P")) {
if (GetKeyState(fwdButton, "P")) {
handleDodge(fwdButton)
} else if (GetKeyState(backButton, "P")) {
handleDodge(backButton)
} else if (GetKeyState(leftButton, "P")) {
handleDodge(leftButton)
} else if (GetKeyState(rightButton, "P")) {
handleDodge(rightButton)
} else if (GetKeyState(fwdButton, "P"))&(GetKeyState(backButton, "P"))&(GetKeyState(leftButton, "P"))&(GetKeyState(rightButton, "P"))=0 {
handleDodge(fwdButton)
}
Sleep, 10
}
}
if (GetKeyState(fireButton)) {
Send {%fireButton% up}
} else {
Send {%fireButton% down}
}
}
if (GetKeyState(jumpButton)) {
Send {%jumpButton% up}
}
if (GetKeyState(fireButton)) {
Send {%fireButton% up}
toggleFireBack := 1
}
Sleep sequenceDelay
Send {%jumpButton% down}
Send {%fireButton% down}
Sleep keypressDelay
Send {%fireButton% up}
Send {%jumpButton% up}
Sleep sequenceDelay
; press back what we released
if (toggleFireBack) {
Send {%fireButton% down}
}
if (GetKeyState(jumpButton, "P")) {
Send {%jumpButton% down}
}
}
Send {%altButton% down}
Send {%useItems% down}
Sleep keypressDelay
Send {%altButton% up}
Send {%useItems% up}
press(use)
}
Send {%altButton% down}
Send {%weapon__change% down}
Sleep keypressDelay
Send {%altButton% up}
Send {%weapon__change% up}
}
Send {%altButton% down}
Send {%podChange% down}
Sleep keypressDelay
Send {%altButton% up}
Send {%podChange% up}
}
; fire toggle
Hotkey $%fireButton%, toggleFire
Hotkey $^%fireButton%, toggleFire
Hotkey $+%fireButton%, toggleFire
Hotkey ~*%dodgeButton%, waitForDodge
Hotkey $*%useLastItemButton%, useLastItem
Hotkey $*%weapon__changeButton%, weapon__changeSequence
Hotkey $*%podChangeButton%, podChangeSequence
Hotkey $*%airSlideButton%, airSlide
루리웹에다가 스크립트 올려놓으니 자꾸 __ 이런부분이 생기네요 sc__ript, weapon__change 이런식으로 __ 이부분은 다 지워서 써주세요. 몇번을 지워서 올려도 계속 나와요
쉬프트키누르면 회피랑 사격이랑 중복되고 텝눌러도 포드사격 안되요.. 포드사격을 텝말고 다른걸로 해도 안되는데 뭐가 문제일까요 ㅠㅠ
인게임 설정에서 사격키가 두개 있는데 왼쪽+오른쪽쉬프트키일거에요 그중 하나를 탭키로 바꿔주고 하나는 다른거로 바꿔보세요
저번 글에 그부분 써두는걸 빼먹었더라구요 fire1 왼쪽쉬프트 -> 아무거나 안쓰는 키로 fire2 오른쪽쉬프트 -> 탭키로 바꾸시면 되요 포드사격이 안될리는 없는데... 이상하네...
인게임에서 키설정 포드사격을 텝키로 바꾸니까 되네요! 잘사용하고 있습니다 감사합니다 ㅎㄹ
질문드려요! 지금 오토핫 잘사용 있기는 한데 쉬프트 연타시 버벅대는 현상이있네요.. 달리고 있을땐 쉬프트 연타해도 부드럽게 나가는데 전투중이거나 걸을때는 버벅되는데 이건 해결방법이 없나요??
예를 들어 쉬프트키를 꾹 누른채로 있어보면 캐릭터가 팝핀을 춥니다 아마 회피해야 될때 다급하게 쉬프트키를 마구 연타를 하게 되면 특히나 그런경우가 있을수 있어요 그렇게 까지 짧은 텀으로 누르지는 말구요. 왠만해선 잘 작동할것이고 방향키+쉬프트를 누를때 동시에 누르지 말고 따닥 하는 느낌으로(?) 누르면 됩니다 정말 회피를 해야 하는데 불안하다 싶으면 왼쪽(a)+쉬프트 한번으로 피하고 회피무적타임이 끝날거 같은 시점에(정확하지 않아도 됨) 오른쪽(d)+쉬프트로 와리가리로 피하는것도 한방법이구요 그 외에는 게임 프레임이 확 떨어질때 한번씩 키가 씹히는 경우가 있긴 하더군요 ; precise delays (ms) keypressDelay := 30 ; delay between keydown/keyup doubletapDelay := 30 ; wait time between keypresses to perform doubletap sequenceDelay := 30 ; wait time between various sequences dodgeTime := 60 ; cooldown while dodge animation plays, setting it too small will cause derps when holding SHIFT+WSAD. 이 부분에서 딜레이 값(수치부분)을 마음에 들게 고쳐서 사용하셔도 됩니다 1초가 1000이구요. 이런 저런 숫자를 시도해보면 님에게 맞는 지연값을 얻을수 있을지도....
혹시 컴사양이 좋지 않다면 인식을 잘 못할수도 있으니 50-50-50-100 정도로 수정하고 해보세요 스크립트 실행시키고 우측하단에 보면 H아이콘이 있을텐데, 정신없이 스크립트 실행시키고 안끄고 하다보면 그 아이콘이 두개 세개 계속 늘어나는 경우가 꽤 있어요 그럴땐 쉬프트키 한번에 ww입력을 수도없이 하게끔 되어버리니 반드시 스크립트를 꺼주는 습관을 들여야 합니다
음.. 감사합니다 컴사양은 8700에 1080ti인데 사양문제는 아닌거같고 중복해서 켜져있는지 확인한번 해봐야겠네요
상당히 유용한 글같은데 추천이 없네요. 키마로 하는 사람이 별로 없나봐요. 감사히 쓰겠습니다,