GTA V | Rage MP (не могу прописать верный путь) Topic is solved

Помощь в написании скриптов для игр.
User avatar
Cracker
Posts: 5
Joined: 20 Apr 2022, 11:00

GTA V | Rage MP (не могу прописать верный путь)

20 Apr 2022, 11:07

Здравствуйте, столкнулся с проблемой при написании скрипта для игры на РП сервере на Rage MP (платформа - Gta v).
Возможно, я неверно прописываю самые первые строки и поэтому скрипт не применяется.

Code: Select all

#IfWinActive RAGE Multiplayer
#NoEnv
SendMode Input
Изначально я хотел написать простой скрипт, который бы по нажатию клавиш "Alt + 4" открывал бы чат (сам чат в игре открывается на "T" англ.), прописывал бы случайный текст (например "/phone"), нажимал бы enter и завершался.
Нерабочий скрипт (вариант 1)

Code: Select all

!4::
SendMessage, 0x50,, 0x4190419,, A
Send, {vk83 up}
sleep 100
Send, {vk83 down}
send /phone{enter}
sleep 100
return
Нерабочий скрипт (вариант 2)

Code: Select all

!4::
SendMessage, 0x50,, 0x4190419,, A
send {t}/phone{enter}
sleep 100
return
mcl
Posts: 359
Joined: 04 May 2018, 16:35

Re: GTA V | Rage MP (не могу прописать верный путь)  Topic is solved

20 Apr 2022, 16:17

Попробуйте начать с простого:

Code: Select all

#IfWinActive RAGE Multiplayer
!4::
	SoundBeep, 400, 400
	Return
Если в игре не слышен звуковой сигнал − скрипт не срабатывает. Попробуйте убрать директиву #IfWinActive и перезапустить скрипт − если сигнал появится, проблема в ней. Возможно, стоит заменить её на что-то вроде #IfWinActive ahk_exe <имя_файла.exe>, уточнить заголовок или класс окна игры (например, с помощью другого скрипта и WinGetActiveTitle/WinGetClass), или вовсе не добавлять, если вы не пользуетесь таким сочетанием клавиш в других программах.

В обоих скриптах вы сперва переключаете раскладку клавиатуры на русский язык. Можете пояснить, зачем?

В скрипте №1 вы сперва отжимаете клавишу F20 (VK-код 83), а затем нажимаете. Не уверен, что это правильный VK-код и/или порядок действий.

В скрипте №2 клавиша T написана в фигурных скобках. Можете пояснить, зачем?
github://oGDIp - GDI+ wrapper for AHK v1.1
User avatar
Cracker
Posts: 5
Joined: 20 Apr 2022, 11:00

Re: GTA V | Rage MP (не могу прописать верный путь)

21 Apr 2022, 06:38

mcl wrote:
20 Apr 2022, 16:17
В обоих скриптах вы сперва переключаете раскладку клавиатуры на русский язык. Можете пояснить, зачем?
- Это было необходимо для работы скрипта ещё в SAMP (без этой строчки кириллица превращалась к кракозябры если я отправлял скрипт с англ. текстом).

В скрипте №1 вы сперва отжимаете клавишу F20 (VK-код 83), а затем нажимаете. Не уверен, что это правильный VK-код и/или порядок действий.
-Возможно, но я брал код отсюда https://snipp.ru/handbk/vk-code. Там стоит именно цифра 83.

В скрипте №2 клавиша T написана в фигурных скобках. Можете пояснить, зачем?
- Для удобства, не уверен, что у скобок есть ещё какая-то функция.

Сейчас попробую сделать скрипт и проверить, работает лион вообще.
User avatar
Cracker
Posts: 5
Joined: 20 Apr 2022, 11:00

Re: GTA V | Rage MP (не могу прописать верный путь)

21 Apr 2022, 13:10

mcl wrote:
20 Apr 2022, 16:17
Попробуйте начать с простого:

Code: Select all

#IfWinActive RAGE Multiplayer
!4::
	SoundBeep, 400, 400
	Return
Если в игре не слышен звуковой сигнал − скрипт не срабатывает. Попробуйте убрать директиву #IfWinActive и перезапустить скрипт − если сигнал появится, проблема в ней.
- Да, без этой строки всё заработало, я даже смог написать себе нужный скрипт. Но я так и не разобрался, как можно настроить работу скрипта для конкретного окна.
mcl
Posts: 359
Joined: 04 May 2018, 16:35

Re: GTA V | Rage MP (не могу прописать верный путь)

21 Apr 2022, 15:13

Cracker wrote: Это было необходимо для работы скрипта ещё в SAMP (без этой строчки кириллица превращалась к кракозябры если я отправлял скрипт с англ. текстом).
Главное чтоб работало, просто в вашем скрипте вы отправляете нажатия исключительно латинских букв.

Возможно, но я брал код отсюда https://snipp.ru/handbk/vk-code. Там стоит именно цифра 83.
Вы взяли десятичное значение. В AutoHotkey VK- и скан-коды указываются в шестнадцатеричном виде − для буквы T это бы было vk54. Их можно посмотреть, открыв главное окно (двойным щелчком по значку в трее) и выбрав меню View → Key history and script info.

Для удобства, не уверен, что у скобок есть ещё какая-то функция.
В документации к команде Send указано, что, помимо специальных клавиш и зарезервированных символов (вроде {Enter} и {!}), буква в фигурных скобках будет нажата в зависимости от текущей раскладки клавиатуры:

Code: Select all

Send s    ; Отправится символ латинской 's'
Send ы    ; Отправится символ кириллической 'ы'
Send {s}  ; Отправится или 's', или 'ы', или что-то другое, в зависимости от раскладки
Вкупе с первым пунктом это меня и смутило.

Но я так и не разобрался, как можно настроить работу скрипта для конкретного окна.
Вам нужно уточнить правильное название окна. Выше я предлагал получить название окна через WinGetActiveTitle. Возможно, стоит ещё попробовать разные режимы SetTitleMatchMode. В крайнем случае, можно ориентироваться не на название окна, а, скажем, на состояние почти никем не используемого ScrollLock:

Code: Select all

#If GetKeyState("ScrollLock", "T")
!4::  ; Этот хоткей сработает только при включённом ScrollLock
	...
github://oGDIp - GDI+ wrapper for AHK v1.1
User avatar
Cracker
Posts: 5
Joined: 20 Apr 2022, 11:00

Re: GTA V | Rage MP (не могу прописать верный путь)

22 Apr 2022, 05:51

mcl wrote:
21 Apr 2022, 15:13

Code: Select all

Send s    ; Отправится символ латинской 's'
Send ы    ; Отправится символ кириллической 'ы'
Send {s}  ; Отправится или 's', или 'ы', или что-то другое, в зависимости от раскладки
- Спасибо! Я не знал, о том, что фигурные скобки позволяют отправлять текст в зависимости от раскладки.
Но я так и не разобрался, как можно настроить работу скрипта для конкретного окна.
Вам нужно уточнить правильное название окна. Выше я предлагал получить название окна через WinGetActiveTitle. Возможно, стоит ещё попробовать разные режимы SetTitleMatchMode.

Мне выдало вот такое вот сообщение.
https://imgur.com/37H8Kco
И я даже не знаю, какой путь прописывать. Я ведь уже прописывал такой путь и скрипт не работал, тут можно что-то придумать?
mcl
Posts: 359
Joined: 04 May 2018, 16:35

Re: GTA V | Rage MP (не могу прописать верный путь)

22 Apr 2022, 13:45

Cracker wrote: Мне выдало вот такое вот сообщение.
https://imgur.com/37H8Kco
И я даже не знаю, какой путь прописывать. Я ведь уже прописывал такой путь и скрипт не работал, тут можно что-то придумать?
Выглядит, будто там или пробелы, или ещё какие-то спецсимволы − но это придётся посимвольно уже смотреть.
Попробуйте добавить в начале скрипта:

Code: Select all

SetTitleMatchMode, 2
Если не поможет, то есть и более сложный вариант:

Code: Select all

SetTitleMatchMode, RegEx

#IfWinActive RAGE.*Multiplayer
...
github://oGDIp - GDI+ wrapper for AHK v1.1
User avatar
Cracker
Posts: 5
Joined: 20 Apr 2022, 11:00

Re: GTA V | Rage MP (не могу прописать верный путь)

23 Apr 2022, 11:06

mcl wrote:
22 Apr 2022, 13:45
Попробуйте добавить в начале скрипта:

Code: Select all

SetTitleMatchMode, 2
Если не поможет, то есть и более сложный вариант:

Code: Select all

SetTitleMatchMode, RegEx

#IfWinActive RAGE.*Multiplayer
...
Попробовал оба варианта. В случае с SetTitleMatchMode, 2, то скрипт продолжает работать в любом окне.
Во втором случае скрипт не работает совсем.
Скриншота кода, как я его вставлял
https://imgur.com/a/DO5dUXh

Return to “Скрипты для Игр”

Who is online

Users browsing this forum: No registered users and 5 guests