• Из-за обновления 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# Обнаружение части кода, который крашит игру

E-Exception

Участник портала
3 Июл 2022
104
17
59
23
Всем привет. Мне известно, что вызов некоторых нативных функций ГТА с аргументами null может крашить игру (Просто закрывается с логом Game Called Terminate). К примеру, если мы попробуем получить позицию игрока на экране, когда игрок равен null (Вышел, например), то игра закроется. Есть-ли способы отладить клиент, чтобы найти где и в каком скрипте происходит ошибка? Либо единственный способ это просмотр всего кода вручную?
 

Bloodlust

Специалист
25 Апр 2021
311
91
112
я конечно не шарпист но что мешает сделать проверки на то что сущность существует
 
  • Wow
Реакции: Inoi и XDeveluxe

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
3,003
1,738
211
28
Не думаю, что на клиентской части есть что-либо, что может помочь тебе в этом.
Просто не делай таких глупых ошибок - нельзя взаимодействовать с объектом, который может быть null, для этого ты сначала проверяешь его, а только потом используешь. Это 1 лишняя (на самом деле не лишняя) строка.
Не знаю какая версия используется на клиенте, но вполне возможно, что ты можешь даже использовать вот такой метод:
C#:
CustomClass?.Health
Добавляя "?" после объекта, который может быть null, ты защищаешь код и если объект будет null, то всё что дальше - не будет работать.
 

Skadi

Новый участник
11 Апр 2023
4
0
38
try и catch используй, и выводи ошибку в консоль
 

E-Exception

Участник портала
3 Июл 2022
104
17
59
23
В папке RAGEMP\clientdata есть файл clientside_cs.txt, посмотри в него, возможно там есть твоя ошибка
В логах только Game Called Terminate
я конечно не шарпист но что мешает сделать проверки на то что сущность существует.

Мешает то, что трудно найти где именно стоит такую проверку сделать, код не маленький, методов много.
 

E-Exception

Участник портала
3 Июл 2022
104
17
59
23
Не думаю, что на клиентской части есть что-либо, что может помочь тебе в этом.
Просто не делай таких глупых ошибок - нельзя взаимодействовать с объектом, который может быть null, для этого ты сначала проверяешь его, а только потом используешь. Это 1 лишняя (на самом деле не лишняя) строка.
Не знаю какая версия используется на клиенте, но вполне возможно, что ты можешь даже использовать вот такой метод:
C#:
CustomClass?.Health
Добавляя "?" после объекта, который может быть null, ты защищаешь код и если объект будет null, то всё что дальше - не будет работать.
Проблема в том, что иногда задумываешься и делаешь эти глупые ошибки, упуская важные проверки на nullable... вот теперь лопачу весь код и ищу где же я этот момент упустил.