• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    Ошибка: Ваша версия Grand Theft Auto V не поддерживается RAGE Multiplayer.
    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Логика events

qweqweqwe123123123

Новый участник
24 Июн 2025
12
2
13
Привет, подскажите пожалуйста :)

По приколу пишу систему - поздороваться с игроком
Столкнулся с тем, что очень много куча разные ивентов...
Не сильно шарю в ragemp, поэтому подскажите пожалуйста, если можно сделать проще...

Суть:
Игрок 1 подходит к игроку 2, наводится на него и через raycasting игрок 1 получает entity игрока 2
У игрока 1 появляется менюшка на G кнопку и кликает - "поздороваться с игроком".
Получается:
У игрока 1 из CEF летит событие на клиент, а на клиенте 1го игрока уже есть entity 2го игрока и соответственно entity.remoteId

Вопрос !
Могу ли из клиента 1го игрока вызывать событие сразу на клиент 2го игрока ?

Потому что получается у меня вот так...
1) У игрока 1 из CEF летит событие на клиент, а на клиенте 1го игрока уже есть entity 2го игрока и соответственно entity.remoteId
2) Далее из клиента игрока 1 я отправляю событие на сервер и entity.remoteId
3) На сервере const target = mp.players.at(targetId); ищу target
4) На сервере по target отправляю снова событие , но уже на клиент 2
5) Ну и далее логика стандартная... на клиенте 2 я отправляю событие на его CEF о нотификации, готов ли он поздороваться с игроком или нет

ps. может какой нибудь subscripbe поставить на клиент ?

pss. кстати, с этими событиями про нофикациями - треш, потому что эти события еще можно принять, отклонить, по сроку времени они тоже должны отклонится, там событий просто сотни получаются. Казалось бы... лишь простые нотификации, но ивентов сотни... ) А еще эти анимации на клиенте надо синхронизировать... еще надо heading синхронизировать... треееееш)
 

Jerry (ChatGPT)

AI-powered language model
VIP
helper
17 Окт 2023
2,587
250
100
Привет! Да, можно сделать проще. Вместо того чтобы отправлять события через сервер от игрока 1 к игроку 2, ты можешь напрямую отправлять событие с клиента 1 игроку 2 через entity.remoteId. Таким образом избежишь лишней нагрузки на сервер и уменьшишь количество необходимых событий. Вместо того чтобы многократно отправлять события для нотификаций, можешь использовать флаги настройки, чтобы отобразить лишь необходимую информацию. Надеюсь, эти рекомендации помогут упростить твою систему!
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
3,076
1,792
211
28
Вопрос !
Могу ли из клиента 1го игрока вызывать событие сразу на клиент 2го игрока ?
Нет, это была бы дыра в системе безопасности.
С клиента вызывается ивент только на сервере, а уже с сервера - на любом желаемом тебе клиенте.
 

qweqweqwe123123123

Новый участник
24 Июн 2025
12
2
13
Нет, это была бы дыра в системе безопасности.
С клиента вызывается ивент только на сервере, а уже с сервера - на любом желаемом тебе клиенте.
спасибо, понял :)

Подскажи еще пожалуйста, серверные анимации.. они бесконечны... ну типа... у меня не получается прокрутить их 1 раз, как я это делаю на клиентских анимаций. Я знаю, что есть флаги, но я почти все флаги перепробовал, ну не работает ))) анимации снова и снова на сервере запускаются и приходится ставить setTimeout и player.stopAnimation делать

вопрос)
я правильно понимаю, что серверные анимация нельзя запустить 1 раз, а надо всегда ставить setTimeout и player.stopAnimation делать ?
если не прав, жду код примера :)

вопрос 2)
Когда я запускаю на сервере player.stopAnimation() , и если в этот момент бежит игрок, то он резко останавливается. Это можно как-то пофиксить ? Ну чтобы я останавливал анимацию, но бег игрока не прекращался
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
3,076
1,792
211
28
я правильно понимаю, что серверные анимация нельзя запустить 1 раз, а надо всегда ставить setTimeout и player.stopAnimation делать ?
У анимаций есть флаги, с помощью них ты можешь заставить анимацию остановиться на последнем фрейме анимации, но даже так - анимация застынет и тебе нужно будет её сбросить, так что да, ты не можешь запустить 1 раз и всё, тебе нужно всё равно потом дать вторую задачу - остановку анимации.
Когда я запускаю на сервере player.stopAnimation() , и если в этот момент бежит игрок, то он резко останавливается. Это можно как-то пофиксить ? Ну чтобы я останавливал анимацию, но бег игрока не прекращался
Нет, остановка анимации полностью останавливает все анимации персонажа и возвращает его в базовое состояние. Бег - тоже анимация, просто устанавливаешь её не ты, а движок игры при нажатии Shift'а, поэтому бег тоже будет останавливаться.
 

Similar threads