Помощь - Поиск - Пользователи - Календарь
Полная версия: передвижение по карте
UoKit.com Форумы > Кликер > UO Pilot
howward
пользуясь ldplayer, приспособил дополнительное управление в игре с помощью клавиатуры
в принципе удобно, также можно задать перемещение обзора по направляющей

но мне интересно как можно пилотом сымитировать перемещения в игре, при том что данные кнопки в игре не имеют никакого значения - их использование уместно только в данном плеере
в игре это происходит при зажатой кнопке мыши и перемещением мауса на ту часть карты обзор которой вы хотите увидеть...
DarkMaster
left_down|left_up
kleft_down|kleft_up
move
Но разумнее оставить в виде плеера, чтобы работало в перекрытых окнах и не дергало мышь.
howward
Цитата(DarkMaster @ 22.4.2021, 1:18) *

left_down|left_up
kleft_down|kleft_up
move
Но разумнее оставить в виде плеера, чтобы работало в перекрытых окнах и не дергало мышь.


да в этом плане тонкие настройки плеера очень удобны
просто не всегда он работает стабильно - иногда игра вылетает - такую ошибку замечал на многих эмуляторах андроид игр
но под управлением windows таких ошибок нет
поэтому интерес и препочтения сражу же переходят к пилоту)
хотелось знать можно ли сделать такое управление в пилоте - аналогичным как и в плеере

howward
столкнулся с такой проблемой, что комбинации клавиш или отдельные не работают в приложении ldplayer
на примере этого скрипта - может дело не в команде которую прописываю, а в правильности набора?
code
Код

--lua
-- island to pc
kleft (967, 474, "abs")
    wait(700)
kleft (1057, 612, "abs")
    wait(700)
kleft (755, 175, "abs")
    wait(700)
kleft (755, 368, "abs")
    wait(700)
kleft (777, 849, "abs")
    wait(700)
kleft (962, 930, "abs")
    wait(6000)
kleft (966, 562, "abs")
    wait(700)
kleft (890, 596, "abs")
    wait(700)
kleft (1043, 450, "abs")
    wait(1000)
sendex ("@{Tab}")
sendexdelay (100)
    wait(2000)
kleft (491, 1029, "abs")
    wait(1000)
kleft (813, 707, "abs")
    wait(1000)
kleft (700, 1039, "abs")
    wait(1000)
sendex ("^v")
    wait(2000)
sendex_down ("{Enter}")
sendexdelay (100)
sendex_up ("{Enter}")
    wait(2000)
kleft (1109, 958, "abs")
    wait(5000)
kleft (966, 588, "abs")
    wait(700)
kleft (1096, 582, "abs")
    wait(700)
kleft (974, 882, "abs")
    wait(700)
kleft (939, 1009, "abs")
    wait(700)


здесь не всегда срабатывает enter и alt+tab
приходится перезапускать скрипт раза три - и на третий раз все команды сработывают - почему так?
howward
столкнулся с такой проблемой, что комбинации клавиш или отдельные не работают в приложении ldplayer
на примере этого скрипта - может дело не в команде, которую прописываю, а в правильности набора?
code
Код

--lua
-- island to pc
kleft (967, 474, "abs")
    wait(700)
kleft (1057, 612, "abs")
    wait(700)
kleft (755, 175, "abs")
    wait(700)
kleft (755, 368, "abs")
    wait(700)
kleft (777, 849, "abs")
    wait(700)
kleft (962, 930, "abs")
    wait(6000)
kleft (966, 562, "abs")
    wait(700)
kleft (890, 596, "abs")
    wait(700)
kleft (1043, 450, "abs")
    wait(1000)
sendex ("@{Tab}")
sendexdelay (100)
    wait(2000)
kleft (491, 1029, "abs")
    wait(1000)
kleft (813, 707, "abs")
    wait(1000)
kleft (700, 1039, "abs")
    wait(1000)
sendex ("^v")
    wait(2000)
sendex_down ("{Enter}")
sendexdelay (100)
sendex_up ("{Enter}")
    wait(2000)
kleft (1109, 958, "abs")
    wait(5000)
kleft (966, 588, "abs")
    wait(700)
kleft (1096, 582, "abs")
    wait(700)
kleft (974, 882, "abs")
    wait(700)
kleft (939, 1009, "abs")
    wait(700)


здесь не всегда срабатывает enter и alt+tab
приходится перезапускать скрипт раза три - и на третий раз все команды срабатывают - почему так?
cirus
Попробуйте так:
Код
--lua
sendex ("@{}")  -- зажать Alt
wait (100)
sendex ("{Tab}")  -- нажать Tab
wait (100)
sendex ()  -- отпустить все модификаторы
howward
спасибо
из пяти раз один не сработал

sendex ("{Enter}{}")
sendex ()
__________
кнопка enter работала каждый раз


code
Код

--lua
while true do
sendex ("w{}")
    wait (100)
sendex ()
wait (600)
    sendex ("a{}")
        wait (100)
    sendex ()
    wait (600)
        sendex ("s{}")
            wait (100)
        sendex ()
        wait (600)
            sendex ("d{}")
                wait (100)
            sendex ()
            wait (600)
wait (10)
end


функции кнопок движение w\a\s\d: вверх \ вправо \ вниз \ влево - т.е. описать квадрат,
а на деле получаю какое-нибудь одно движение или просто нет движений
три вариации send пробовал и ничего...

на сайте не нашел как сделать двойное нажатие кнопки или нажатие кнопки определенное количество раз (прописать нужное количество раз, например, sendex ("s"), с минимальной задержкой?)
подскажите об этом пожалуйста
cirus
Цитата
из пяти раз один не сработал

Возможно паузы нужно больше делать.
Цитата
sendex ("{Enter}{}")
sendex ()

Нужно так:
Код
sendex ("{Enter}")

Цитата
нажатие кнопки определенное количество раз

Код
--lua
function _sendex(key, count, pause)
    for i=1, count do
        sendex (key)
        wait (pause)
    end
end

wait (3000)
_sendex('w', 5, 300)   -- нажать клавишу w 5 раз с паузой 300 мсек
_sendex('s', 10, 20)   -- нажать клавишу s 10 раз с паузой 20 мсек
howward
code
Код

--lua
while true do
function _sendex (key, count, pause)
    for i=1, count do
    sendex (key)
    wait (pause)
    end
end
wait (1000)
_sendex ('up', 3, 1000)
_sendex ('left', 3, 1000)
_sendex ('down', 3, 1000)
_sendex ('right', 3, 1000)
wait (10)
end
________________________________

--lua
while true do
function _sendex (key, count, pause)
    for i=1, count do
    sendex (key)
    wait (pause)
    end
end
wait (1000)
_sendex ('w', 3, 1000)
_sendex ('a', 3, 1000)
_sendex ('s', 3, 1000)
_sendex ('d', 3, 1000)
wait (10)
end


на деле sendex выглядит в приложении так:
если учесть что за 15 секунд цикла, я должен увидеть 12 касаний (вверх \ вправо \ вниз \ влево) - то на деле это просиходит раза два, три - и не с самого начала скрипта...
хотя в самом приложении нет никаких фризов - отклик отличный, если делать все вручную - может дело в приложении - мешает защита?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.