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

Вопрос Регистрация урона на C#

Mr.Scalise

Специалист
7 Окт 2021
447
88
90
Всем ку, как сделать кастомную регу оружия на C#? К примеру чтобы ревик наносил 50 урона, а карабин 13 за попадание. Понимаю что много банальных вещей тут спрашиваю, однако только учусь и то что не знаю, спрашиваю вас, либо же рыскаю по форумам, вообщем вы меня поняли ;)
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Так же, как и на JSе, отменяешь стандартный урон (не выпускаешь его с клиента), а далее на сервере считаешь нужные цифры, отправляешь в хп клиента.
 

Mr.Scalise

Специалист
7 Окт 2021
447
88
90
Так же, как и на JSе, отменяешь стандартный урон (не выпускаешь его с клиента), а далее на сервере считаешь нужные цифры, отправляешь в хп клиента.
Через OnIncomingDamage, я правильно понимаю?
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Через OnIncomingDamage, я правильно понимаю?
1668712202546.png

ЛИБО отменяешь весь входящий урон, либо отменяешь весь ВЫХОДЯЩИЙ урон, варианта 2. Я бы рекомендовал отменять именно второй вариант.
 

Mr.Scalise

Специалист
7 Окт 2021
447
88
90

frytech

Участник портала
15 Янв 2022
128
13
53

Я тут описал, нашел самый адекватный способ и самый рабочий
Можно ставить какой хочешь урон и при этом не навешивать костыли как на 5 рп с кастомными ивентами, которые идут через сервер
 

frytech

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

FireFeed

⚡️Frontend Developer
Команда форума
Moderator
17 Дек 2020
200
66
127
20
Так же, как и на JSе, отменяешь стандартный урон (не выпускаешь его с клиента), а далее на сервере считаешь нужные цифры, отправляешь в хп клиента.
но разве не могут перехватить executor'ом? и сделать урон 1к к примеру?
 

frytech

Участник портала
15 Янв 2022
128
13
53
но разве не могут перехватить executor'ом? и сделать урон 1к к примеру?
Он же написал, что на сервере считаться урон будет в таком случае, на сервер, очевидно, будет передаваться не урон, а кость, в которую произошло попадание, так что, максимум, что можно будет сделать, это экзекьютором всегда передавать кость - голова
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Он же написал, что на сервере считаться урон будет в таком случае, на сервер, очевидно, будет передаваться не урон, а кость, в которую произошло попадание, так что, максимум, что можно будет сделать, это экзекьютором всегда передавать кость - голова
Вычислять что-либо и доверять клиенту - удел безумцев или дураков.
Ты не можешь позволить клиенту просчитывать что-то, что связано с критическими данными или другими игроками.
Если какая-либо система это лишняя нагрузка, то можно и систему домов удалить, и систему регистрации, да и рейдж в целом.

но разве не могут перехватить executor'ом? и сделать урон 1к к примеру?
Я и сказал, что ты отменяешь стандартный урон на клиенте и просчитываешь его на сервере.
 
Реакции: FireFeed

frytech

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


Я и сказал, что ты отменяешь стандартный урон на клиенте и просчитываешь его на сервере.
Уверен?)

Кол-во хп, которое ты отправишь клиенту этот клиент сможет и сам подменить на любое угодное ему, хоть 0. Или же выдать себе хп, читы так то существуют на рейдж.
Вот если бы ты с клиента атакующего отправлял урон и его же назначал цели, тогда да, херня система.

А при моем подходе максимум, что плохого может получиться - это челик, который сделает себе гм. Но это можно сделать на любом проекте.

Так что ты даешь лишнюю нагрузку серверу (напоминаю, каждый выстрел, интервал между которыми в среднем 100 мсек), рассчитывая урон, который получит цель, в то время как эта же цель и может себе рассчитать урон, ничего страшного для игроков не произойдет. Тем более, что эта инфа (урон) никак не связана с другими игроками, а только лишь с жертвой, которая сама себе урон и считает.
 

FireFeed

⚡️Frontend Developer
Команда форума
Moderator
17 Дек 2020
200
66
127
20
Вычислять что-либо и доверять клиенту - удел безумцев или дураков.
Ты не можешь позволить клиенту просчитывать что-то, что связано с критическими данными или другими игроками.
Если какая-либо система это лишняя нагрузка, то можно и систему домов удалить, и систему регистрации, да и рейдж в целом.


Я и сказал, что ты отменяешь стандартный урон на клиенте и просчитываешь его на сервере.
а, забавно, я не увидел "на сервере считаешь" :super_klass:
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Уверен?)

Кол-во хп, которое ты отправишь клиенту этот клиент сможет и сам подменить на любое угодное ему, хоть 0. Или же выдать себе хп, читы так то существуют на рейдж.
Вот если бы ты с клиента атакующего отправлял урон и его же назначал цели, тогда да, херня система.

А при моем подходе максимум, что плохого может получиться - это челик, который сделает себе гм. Но это можно сделать на любом проекте.
Я не знаю о каком хп ты говоришь и куда отправлять его надо. Либо ты меня не понимаешь, либо я тебя.
Система кастомного урона работала на редейдже с тех времён, когда он еще был популярен, проблем по этой части не замечено.
Читы существуют на всё, от этого давай не будем делать систему домов, а то телепорт по меткам существует и скупят с читами?
Доверять клиенту это плохо и ты поймёшь это, если поработаешь на каком-либо крупном проекте.
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Уж извиняюсь, не могу запомнить все диалоги из всех веток.
"Отправлять в HP" можно по-разному. Можно на сервере, можно на клиенте, можно на сервере инвоуком.
Если ты говоришь о GMе, то его возможно применить при любой системе, хоть стандартного просчёта, хоть твоего, хоть еще какого угодно, это не тот случай, когда об этом нужно задумываться при создании подобной системы. Но просчитывать урон на клиенте игрока 1 для игрока 2 - это глупость, на мой взгляд.
 

frytech

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

А урон доверять клиенту можно, ты же не высылаемый урон доверяешь, а лишь получаемый. В этом есть большая разница. Ну и еще учти частоту выстрелов, бесполезная трата ресурсов, ей богу.
Вот и объясни давай, что страшного в том, чтобы доверить клиенту самому рассчитать себе урон, который он же и получит? Правильно, лишь то, что в теории, он сможет подменить получаемые данные и выдать себе урон 0. Но при таком раскладе и твой способ окажется непрактичным - чел просто может выдать себе гм и твой урон по нему так же не пройдет.
Только вот при твоем способе еще и сервер для чего то должен рассчитывать урон, а не сама жертва себе)
 

frytech

Участник портала
15 Янв 2022
128
13
53
Уж извиняюсь, не могу запомнить все диалоги из всех веток.
"Отправлять в HP" можно по-разному. Можно на сервере, можно на клиенте, можно на сервере инвоуком.
Если ты говоришь о GMе, то его возможно применить при любой системе, хоть стандартного просчёта, хоть твоего, хоть еще какого угодно, это не тот случай, когда об этом нужно задумываться при создании подобной системы. Но просчитывать урон на клиенте игрока 1 для игрока 2 - это глупость, на мой взгляд.
Ты меня неправильно понял, на клиенте игрока2 для игрока2*
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
При чем тут система домов и система урона?) Дома хранятся на сервере, могут быть куплены другими игроками, содержат в себе мебель и прочие данные. Это, по сути, отдельные сущности.

А урон доверять клиенту можно, ты же не высылаемый урон доверяешь, а лишь получаемый. В этом есть большая разница. Ну и еще учти частоту выстрелов, бесполезная трата ресурсов, ей богу.
Вот и объясни давай, что страшного в том, чтобы доверить клиенту самому рассчитать себе урон, который он же и получит? Правильно, лишь то, что в теории, он сможет подменить получаемые данные и выдать себе урон 0. Но при таком раскладе и твой способ окажется непрактичным - чел просто может выдать себе гм и твой урон по нему так же не пройдет.
Только вот при твоем способе еще и сервер для чего то должен рассчитывать урон, а не сама жертва себе)
Я сказал, что не стоит при создании любой системы исходить из того - можно ли это зачитерить. Всё, о чём я говорю - не стоит доверять клиенту для просчёта чего-либо важного.
Я не хочу спорить с твоим мнением, если ты считаешь, что так можно делать - вперёд, я останусь при своём мнении и могу допустить, что твой способ тоже может существовать.
 

frytech

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

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,585
211
28
Я согласен с тобой, что важные данные доверять клиенту не стоит, это очевидно. Но урон) Ты ведь не просчитываешь урон при падении с высоты на сервере? Нет. Так же и с оружием.
Но хорошо, что ты от "Вычислять что-либо и доверять клиенту - удел безумцев или дураков." перешел к тому, что мой способ может существовать.
И твой способ может, просто мой эффективнее и, при этом, не опаснее для других игроков.
Не в обиду тебе будет сказано, но я скорее считаю, что что угодно может существовать.
Я бы на крупном проекте не стал использовать твой способ не проверив все потенциальные проблемы (и по итогу скорее всё равно решил бы оставить всё на сервере, имея возможность сохранять цифры, сверять с тем, что произошло по итогу и т.д, и т.п.).
Просто не хочу спорить, так как не интересно это стало совсем, да и я не считаю, что только моё мнение верное.
Вполне допускаю, что твой вариант по итогу может быть лучше моего, если всё проверить, включая тесты производительности и оценки рисков.
 
Реакции: frytech