• Из-за обновления 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) последний раз были обновлены:

Вопрос Кастомный урон от оружия

frytech

Участник портала
15 Янв 2022
128
13
53
Всем привет, такой вопрос: пишу кастомный урон на оружие, все бы ничего, да совершенно не могу найти информацию о том, как сделать игрока невосприимчивым к дефолтному урону от оружия, при этом, чтобы он реагировал на урон и оставалась кровь.
Сама система кастомного урона уже работает, но отменяя событие OnIncomingDamage, а из за этого игрок не реагирует на урон, хотя он и проходит.
Так вот, кто знает, как так сделать? Пробовал установить каждому оружию modifier урона на 0, все ок, но если стрелять в транспорт, то перестают пробиваться колеса, поэтому этот вариант не подходит.

(не надо мне предлагать ставить модификаторы на оружие, у меня система устроена так, что у каждого оружие есть четко прописанный урон, а итоговый урон просчитывается от расстояния и части тела)

Так же, другой вопрос, есть события IncomingDamage и OutgoingDamage, на C# они работают как то криво, OutgoingDamage верно определяет index части тела, а вот Incoming уже совершенно неверно это делает и так без исключений происходит, всегда. Решабельно ли это?
 
Последнее редактирование:

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Блокируй урон в OnIncomingDamage, а урон наноси с помощью снятия жизни через player.health -= нужное_колво;
По поводу index'а части тела - да, есть id кости, а есть index и это разные понятия. Можешь сам пострелять в разные части тела и приведи их к нужным тебе значениям.
 

frytech

Участник портала
15 Янв 2022
128
13
53
Блокируй урон в OnIncomingDamage, а урон наноси с помощью снятия жизни через player.health -= нужное_колво;
По поводу index'а части тела - да, есть id кости, а есть index и это разные понятия. Можешь сам пострелять в разные части тела и приведи их к нужным тебе значениям.
Так а как блокировать урон то? Я отменяю событие, при этом урон не наносится, но и игрок не реагирует на этот урон никак, просто стоит. То же самое с транспортом, стекла не бьются у других игроков в таком случае.

Про id и index я знаю, об этом и говорю, что, например, при outgoingDamage index будет 20 (голова), а в incomingDamage приходит 16. И так со всеми частями тела, причем при incoming верхняя часть руки это тоже 16, поэтому не получится так подстроиться, они просто неверные приходят.
 
Последнее редактирование:

frytech

Участник портала
15 Янв 2022
128
13
53
Придумал такое решение, ничего лучше не нашел

1664195066128.png

Чтобы отрабатывала кровь и прочее поведение при уроне нужно чтобы дамаг был как минимум 1, задать можно в js вот так.
Т.к. boneIndex при получении в incomingDamage всегда неверный, а дамаг нам передавать не нужно, то я при outgoingDamage в js ставлю значение дамага = boneIndex.

А дальше, т.к. я пишу мод на C#, при ненадобности (когда не нужно наносить дамаг вообще) я отменяю событие, а когда нужно, то дополнительно отнимаю определенное подсчитанное кол-во ХП - 1 (т.к. 1 я задал на ивенте в js). Таким образом, все хорошо работает и можно настроить дамаг как угодно, кровь появляется, шины пробиваются и стекла бьются.
 
Реакции: toolty, maxcik и XDeveluxe

MadMax

Новый участник
26 Сен 2022
1
0
3
Придумал такое решение, ничего лучше не нашел

Посмотреть вложение 4993
Чтобы отрабатывала кровь и прочее поведение при уроне нужно чтобы дамаг был как минимум 1, задать можно в js вот так.
Т.к. boneIndex при получении в incomingDamage всегда неверный, а дамаг нам передавать не нужно, то я при outgoingDamage в js ставлю значение дамага = boneIndex.

А дальше, т.к. я пишу мод на C#, при ненадобности (когда не нужно наносить дамаг вообще) я отменяю событие, а когда нужно, то дополнительно отнимаю определенное подсчитанное кол-во ХП - 1 (т.к. 1 я задал на ивенте в js). Таким образом, все хорошо работает и можно настроить дамаг как угодно, кровь появляется, шины пробиваются и стекла бьются.
Попробовал ваш способ, и у меня появилась проблема
Когда у тебя 20 хп или меньше, то тебя убивают с одного выстрела, при этом если оружие не стрелковое (например кулак), то не умрёшь.
Причем я проверил, это всегда так и не совпадение, именно 20 и меньше хп.
Что делать?
 

mippoosedev

Гуру
BackEnd developer
2 Мар 2021
292
127
100
Всем привет, такой вопрос: пишу кастомный урон на оружие, все бы ничего, да совершенно не могу найти информацию о том, как сделать игрока невосприимчивым к дефолтному урону от оружия, при этом, чтобы он реагировал на урон и оставалась кровь.
Сама система кастомного урона уже работает, но отменяя событие OnIncomingDamage, а из за этого игрок не реагирует на урон, хотя он и проходит.
Так вот, кто знает, как так сделать? Пробовал установить каждому оружию modifier урона на 0, все ок, но если стрелять в транспорт, то перестают пробиваться колеса, поэтому этот вариант не подходит.

(не надо мне предлагать ставить модификаторы на оружие, у меня система устроена так, что у каждого оружие есть четко прописанный урон, а итоговый урон просчитывается от расстояния и части тела)

Так же, другой вопрос, есть события IncomingDamage и OutgoingDamage, на C# они работают как то криво, OutgoingDamage верно определяет index части тела, а вот Incoming уже совершенно неверно это делает и так без исключений происходит, всегда. Решабельно ли это?
В рейдже сломаны евенты урона. Кость в исходящем и приходящем евентах - неправильно определяется. Я закостылил через отправку исходящего урона на сервер и последующую его обработку там. Естественно с минимальной защитой от спама евентами(придурками с екзекьюторами)
 

byalex228

Новый участник
14 Авг 2022
4
0
1
В рейдже сломаны евенты урона. Кость в исходящем и приходящем евентах - неправильно определяется. Я закостылил через отправку исходящего урона на сервер и последующую его обработку там. Естественно с минимальной защитой от спама евентами(придурками с екзекьюторами)
ну спасибо за придурка..
ищек
 

frytech

Участник портала
15 Янв 2022
128
13
53
В рейдже сломаны евенты урона. Кость в исходящем и приходящем евентах - неправильно определяется. Я закостылил через отправку исходящего урона на сервер и последующую его обработку там. Естественно с минимальной защитой от спама евентами(придурками с екзекьюторами)
В исходящем правильно, во входящем неправильно, но я выше написал, как смог это пофиксить, хоть и костыльно, но без кастомных ивентов, все на дефолтных и норм работает
 

frytech

Участник портала
15 Янв 2022
128
13
53
Попробовал ваш способ, и у меня появилась проблема
Когда у тебя 20 хп или меньше, то тебя убивают с одного выстрела, при этом если оружие не стрелковое (например кулак), то не умрёшь.
Причем я проверил, это всегда так и не совпадение, именно 20 и меньше хп.
Что делать?
Такая проблема и без моего способа есть, пока не знаю, как исправить адекватно
 

frytech

Участник портала
15 Янв 2022
128
13
53
Блокируй урон в OnIncomingDamage, а урон наноси с помощью снятия жизни через player.health -= нужное_колво;
По поводу index'а части тела - да, есть id кости, а есть index и это разные понятия. Можешь сам пострелять в разные части тела и приведи их к нужным тебе значениям.
Кстати вот знаешь, как исправить проблему, когда при дамаге у жертвы 20 хп и меньше, то она сразу умирает? Причем дамаг 0 делаю, а при выстреле жертва сразу умирает + срабатывает эффект убийства у атакующего. Работает только при выстреле такое или чем то бить, т.е. если бить кулаком, то все ок. Критические попадания отключены.
 
Последнее редактирование:

frytech

Участник портала
15 Янв 2022
128
13
53
Придумал такое решение, ничего лучше не нашел

Посмотреть вложение 4993
Чтобы отрабатывала кровь и прочее поведение при уроне нужно чтобы дамаг был как минимум 1, задать можно в js вот так.
Т.к. boneIndex при получении в incomingDamage всегда неверный, а дамаг нам передавать не нужно, то я при outgoingDamage в js ставлю значение дамага = boneIndex.

А дальше, т.к. я пишу мод на C#, при ненадобности (когда не нужно наносить дамаг вообще) я отменяю событие, а когда нужно, то дополнительно отнимаю определенное подсчитанное кол-во ХП - 1 (т.к. 1 я задал на ивенте в js). Таким образом, все хорошо работает и можно настроить дамаг как угодно, кровь появляется, шины пробиваются и стекла бьются.
Фикс того, что при хп <= 20 происходит автокилл, т.е. хоть и стоит дамаг 1, игрок умрет сразу после выстрела
1664273369205.png


Вместо моего AsyncTask просто создайте свою систему отложенных заданий (если используете js, то там вообще просто setTimeout)
Отнимаете нужное вам ХП с помощью applyDamage, а потом, если ХП <= 20, то выдаете бессмертие и даете вручную 1 дамаг, который должен был дать ивент incomingDamage, через 25 мсек забираете бессмертие, все проверено, работает отлично. Только для этого способа нужна кастомная система лога убийств, потому что игра будет думать, что вы убили сами себя (но ее и так надо писать в любом случае, потому что по дефолту игра не понимает, кто тебя убил с кулака, но с оружием все норм)
 

Mr.Scalise

Специалист
7 Окт 2021
447
88
90
Кто-то решил как починить кости в рейдже или кто нашел альтернативу им?