PDA

Просмотр полной версии : [Вопрос] RNM



BodyanZe
23.10.2017, 22:20
Решил начать пробовать RakNet Manager для реализации нескольких идей. Всё закончилось тем, что не могу понять как запретить Пакету проскакивать на сервер (за это отвечает OnIncomingPacket), как указано в теме с плагином, запретить операцию можно возвращениям значения 0 в каллбеке. Но даже при возвращаемом значении 0, действие выполнялось. Например хотел сделать запрет выстрела:


public OnIncomingPacket(playerid, packetid, BitStream:bs)
{
if(packetid == 207)
return 0;
return 1;
}
В данном случае выстрел успешно происходил.
Возможно я чего-то не понял или суть плагина не в этом. Но, если например возвращать значение 0 в получаемых RPC, то каллбеки отвечать не будут... Вроде проблему изъяснил внятно, надеюсь кто-то поможет.

DeimoS
24.10.2017, 01:02
Как ты определял, что выстрел проходит?

123
24.10.2017, 01:38
У тебя пакет пройдет, но с сервером он синхронизирован не будет.

Fallen A.
24.10.2017, 15:30
Решил начать пробовать RakNet Manager для реализации нескольких идей. Всё закончилось тем, что не могу понять как запретить Пакету проскакивать на сервер (за это отвечает OnIncomingPacket), как указано в теме с плагином, запретить операцию можно возвращениям значения 0 в каллбеке. Но даже при возвращаемом значении 0, действие выполнялось. Например хотел сделать запрет выстрела:


public OnIncomingPacket(playerid, packetid, BitStream:bs)
{
if(packetid == 207)
return 0;
return 1;
}
В данном случае выстрел успешно происходил.
Возможно я чего-то не понял или суть плагина не в этом. Но, если например возвращать значение 0 в получаемых RPC, то каллбеки отвечать не будут... Вроде проблему изъяснил внятно, надеюсь кто-то поможет.

Суть такова, что саму анимацию выстрела ты увидишь.

Стреляя по игроку, проверяй на уровне сервера, получил ли он урон. Вот и все.

BodyanZe
25.10.2017, 02:09
Ага, но вот еще вопрос, без анимации никак ?) Только без сбивов, чтобы при нажатии на ЛКМ не происходило вообще ничего. Или для сампа это слишком?

DeimoS
25.10.2017, 02:26
Ага, но вот еще вопрос, без анимации никак ?) Только без сбивов, чтобы при нажатии на ЛКМ не происходило вообще ничего. Или для сампа это слишком?

Написать клиентский плагин и уже с его помощью делать сбив

Salik_Davince
31.10.2017, 21:27
Можно перехватить пакеты об игроке, узнать какой ID анимации и если ID анимации выстрела и тд то перезаписать анимацию на какой тебе нужен.

DeimoS
31.10.2017, 22:14
Можно перехватить пакеты об игроке, узнать какой ID анимации и если ID анимации выстрела и тд то перезаписать анимацию на какой тебе нужен.

Он хочет прервать анимацию у стреляющего, а не у тех, кто вокруг. Анимация у стреляющего производится без участия сервера

vovandolg
06.11.2017, 03:55
Попррбовать в OnPlayerKeyStateChange проверку на кнопки выстрела поставить с таймером в малость милисекунд или без таймера и на анимацию с оружием в руках чекать, я так анти бх собовский прикрывал, сразу анимку не ловило так как время мелкое проходило и потом соб выполнял анти бх, поэтому нужно было милисекунд 50-150 в зависимости от пинга, тут то я и дал бой этим балбесам с собами