Minecraft: связывание команд и клавиш
В данном посте я расскажу, как подвесить команды чата или последовательность действий Minecraft на клавиши. Для этих целей я буду использовать AutoHotkey.
Короткий лист действий:
Скачиваете Installer for AutoHotkey_L
Устанавливаете скачанный файл (32 или 64 бита Unicode)
Создаете на рабочем столе AutoHotkey Script
Кликаете по файлу правой кнопкой, выбираете Edit Script
Редактируете скрипт на свой вкус, я расскажу об этом ниже
Сохраняете файл
Открываете полученный скрипт двойным кликом по нему (в панели задач появится значок зеленого H), или, в случае, если вы редактировали уже запущенный скрипт — кликаете правой кнопкой по значку программы и выбираете Reload This Script
Теперь самое интересное — скрипт, который будет делать нашу магию. Я приведу здесь свой, с комментариями — я предлагаю сначала использовать его, подправив его под свои нужды, как “скелет”, заготовку, прототип.
Всю нужную информацию, обозначения клавиш, прочее, вы найдете в пункте Help программы AutoHotkey.
; ";" — обозначения комментариев, строка, начиная с этого символа, является комментарием.
; самое начало — сделаем скрипт активным только тогда, когда активное окно — Minecraft
#IfWinActive Minecraft
XButton1:: Send t/tp{Space}
; итак, синтаксис: сначала идёт клавиша (XButton1 — четвертая кнопка мыши),
; далее без пробела идут два двоеточия,
; далее идёт действие, которое должно выполнятся при нажатии этой клавиши
; в данном случае — Send (послать)
; t (начало чата), /tp — команда телепорта, {Space} — пробел
; в итоге при нажатии четвертой клавиши мыши у вас открывается окно чата
; с набранным в нём "/tp ", вам остаётся ввести ник человека, к которому вы хотите телепортироваться, и нажать Enter
Numpad0:: Send t/home{Enter}
; здесь при нажатии клавиши 0 Numpad открывается окно чата, вводится команда "/home",
; и нажимается клавиша Enter, в итоге вы телепортируетесь домой
Numpad1:: Send t/pwarp 1{Enter}
; на сервере, где я играю, мне разрешено иметь 4 персональных warp, точки для быстрого телепорта
; клавиши Numpad 1-4 отвечают у меня за телепорт на эти точки
Numpad2:: Send t/pwarp 2{Enter}
Numpad3:: Send t/pwarp 3{Enter}
Numpad4:: Send t/pwarp 4{Enter}
Numpad5::
; пустые заготовки, они не мешают, зато позволяют быстро при желании повесть что-либо на эти кнопки
Numpad6::
Numpad7:: Send t/ch l{Enter}
Numpad8:: Send t/ch t{Enter}
Numpad9:: Send t/ch d{Enter}
NumpadDot:: ;(.)
Send t/spawn{Enter}
return
; как видите, сразу за выбором кнопки у меня идет комментарий, какая это клавиша на клавиатуре
; из-за этого я решил разбить команды, выполняемые при нажатии на эту клавишу на несколько строк
; для этого просто начните писать действия на следующей после объявления клавиши строке
; и в конце не забудьте поставить return, что означает конец действий, выполняемых при нажатии на эту клавишу
NumpadDiv:: ;(/)
Send t/shop{Space}browse{Space}buy{Space}
return
; мои команды для просмотра магазина, незаконченные, чтобы я мог выбрать страницу для просмотра
; как правило, в магазине несколько страниц просмотра товаров
; я не представляю, что бы я делал без скриптов
NumpadMult:: ;(*)
Send t/shop{Space}browse{Space}
return
NumpadSub:: ;(-)
Send t/shop{Space}browse{Space}sell{Space}
return
NumpadEnter:: Send t/deathtp{Enter}
NumpadAdd:: ;(+)
; вот тут начинается интересное
; этот скрипт я сделал для прокачки acrobatics на моём сервере
; на моём сервере включен плагин mcmmo
; что делает этот скрипт:
; 1. кликает по кнопке respawn
; 2. телепортируется к высокой точке
; 3. зажимает кнопку вперед на секунду, я падаю с высокой точки, и у меня остаётся минимальное количество жизни
; 4. снова телепортируется к высокой точке
; 5. снова зажимает кнопку движения на секунду, персонаж умирает
; цикл прекращён, скрипт возвращается к первому шагу
; внутри расставлены задержки, Sleep, в миллисекундах (тысяча миллисекунд — одна секунда)
; без них скрипт проходился бы за полсекунды, и ничего не успевал сделать
Loop
; Loop — повторение, цикл, чтобы действия выполнялись без моего вмешательства — включил и забыл
{
MouseClick
Sleep 5000
Send t/home{Enter}
; телепорт к высокой точке
Sleep 2000
Send {w down}
; зажать/отжать кнопку движения вперед, чтобы упасть с высокой точки
Sleep 1000
Send {w up}
Sleep 1300
MouseClick
; клик на всякий случай, если персонаж уже мертв — просто, чтобы сэкономить время
Send t/home{Enter}
Sleep 2000
Send {w down}
Sleep 1000
Send {w up}
Sleep 2000
} Until GetKeyState("Capslock", "T")
; тут мы говорим скрипту, чтобы он прекратил выполняться при нажатом CapsLock
; т.е., когда вам нужно прекратить выполнение скрипта — нажмите CapsLock и подождите, пока он дойдет до конца
return
#IfWinActive
Я даю здесь заготовку, подразумевая, что у вас есть голова на плечах, чтобы разобраться с настройкой под себя самостоятельно.
Автор Dmitry Verkhoturov
Последнее обновление 29 декабря 2023
Markdown Текст в Markdown »
Лицензия CC BY 4.0